Custom billing system integration
Integration using internal callbacks without recompiling the code
1/ Configure Payment System URL field. Dynamic fields:
%customer_id% - ID of customer in WebVideo
%package_id% - ID of payment package in WebVideo
%package_ext_id% - External ID of payment package in payment system
Customer Payment Prepopulate Data:
%customer_email%
%customer_first_name%
%customer_last_name%
%customer_address%
%customer_city%
%customer_state%
%customer_zip%
%customer_country% - 2 letters code
%customer_phone%
%unique_number% - Randomly generated number (Actually milliseconds from 1970)
%all_packages% - comma delimited list of External IDs of all enabled packages in current payment system
2/ Pass back payment data to WebVideo:
Call script /exec/internalcallback
with following parameters using POST or GET method:
secret_key - "Internal callback secret key" configured on webvideo system configuration page
type - 1 - Deposit, 2 - Chargeback, 3 - Declined transaction
For type=1 (Deposit) pass the following parameters:
For One-Time transactions: package_id
- Payment package ID configured in WebVideo system. Can be passed in the URL field if payment system support pass-through variables. customer_id
- Customer ID in WebVideo system. Can be passed in the URL field if payment system support pass-through variables. amount
- Amount of transaction. Used only in recurrent transactions. In case of a one-time transaction, will be used amount, assigned with payment package found by package_id
field. customer_ip
- IP address of customer if passed from payment system or do not pass this parameter if you can't get customer's IP. external_id
- some unique ID of transaction or do not pass this parameter if you can't get such ID for each transaction (in this case you will be unable to process chargebacks).
For Recurring transactions: package_id
- Payment package ID configured in WebVideo system. Can be passed in the URL field if payment system support pass-through variables. customer_id
- Customer ID in WebVideo system. Can be passed in the URL field if payment system support pass-through variables. amount
- Amount of transaction. Used only in recurrent transactions. In case of a one-time transaction, will be used amount, assigned with payment package found by package_id
field. customer_ip
- IP address of customer if passed from payment system or do not pass this parameter if you can't get customer's IP. external_id
- unique subscription ID passed from payment system.
For type=2 (Chargeback) pass following parameters: system_id
- ID of payment engine configured in WebVideo system. external_id
- External ID of the transaction. Same as external_id
param in deposits. chargeback_id
- ID of chargeback. Required only for chargebacks of recurring transactions. chargeback_ip
- IP address of person/system, who initiated a chargeback. Do not pass this parameter if you can't get it.
For type=3 (Declined transaction) pass following parameters: customer_id
- ID of customer in WebVideo system. decline_reason
- Reason that will be shown on "Transaction declined" page.
All fields support UTF-8 encoded for non-ASCII characters.
As a result of each type of transaction, this callback will return the content of Transaction Approved/Declined page. This content could be shown to the customer.
Integration with code recompilation
Please contact support.scrile.com in order to support your custom billing system.