Below is a description of the variables that comprise the input API of the payment form. These variables are delivered as form variables. These variables are a consistent requirement irrespective of which result delivery method that is chosen.
| Variable Name | Data Type | Max Length | Mandatory
or Always Present |
Comments |
| HashDigest |
A |
– |
Yes | A hashed string that contains all the variables passed and also data that is not passed but is known to both sides – namely the PreSharedKey and the gateway account password. (see section below) |
| MerchantID |
A |
15 |
Yes | The merchant ID that corresponds to the gateway account the transaction will be run through. NOTE: If this variable is not present, then the skinning of the payment form will not happen |
| Amount |
N |
13 |
Yes |
The transaction amount inminorcurrency–e.g. for £10.00, it must be submitted as 1000 |
| CurrencyCode |
N |
3 |
Yes | The currency of the transaction. ISO 4217
e.g. GBP: 826 |
| EchoAVSCheckResult |
B |
true/false |
No | Instructs the payment form to include the AVS check result of the transaction in the
output variables |
| EchoCV2CheckResult |
B |
true/false |
No | Instructs the payment formtoincludetheCV2 check result of the transaction inthe
output variables |
| EchoThreeDSecureAuthenticationCheckResult |
B |
true/false |
No | Instructs the payment formtoincludethe 3D Securecheck result of thetransaction in the
output variables |
| EchoFraudProtectionCheckResult |
B |
true/false |
No | Instructs the payment form to include the fraud protection check result of the transaction
in the output variables |
| EchoCardType |
B |
true/false |
No | Instructs the payment form to include the card type of the transaction in
the output variables |
| EchoCardNumberFirstSix |
B |
true/false |
No | Instructs the payment form to include the first 6 digits of the card number of the transaction inthe
output variables |
| EchoCardNumberLastFour |
B |
true/false |
No | Instructs the payment form to include the last 4 digits of the card number of the transaction in the output variables |
| EchoCardExpiryDate |
B |
true/false |
No | Instructs the payment form to include the expiry date of the card of the transaction in the output variables |
| EchoDonationAmount |
B |
true/false |
No | Instructs the payment form to include the donation amount of the transaction in the output variables |
| AVSOverridePolicy |
A |
4 |
No | Sets the override AVS
checking policy for this transaction |
| CV2OverridePolicy |
A |
2 |
No | Sets the CV2 checking
policy for this transaction |
| ThreeDSecureOverridePolicy |
B |
true/false |
No | Instructs the payment form to enable/disable the 3D Secure checking for this transaction
(where possible) |
| OrderID |
A |
50 |
Yes | A merchant side ID for the order – primarily used to for determining duplicate transactions. Note: make sure that special characters in the OrderID are properly escaped, otherwise the hash digest will not match |
| TransactionType |
– |
– |
Yes | Must be either SALE or PREAUTH |
| TransactionDateTime |
DT |
– |
Yes | The date & time (as seen by the merchant’s server) of the transaction. Needs to be in the form “YYYY-
MM-DD HH:MM:SS |
| ±OO:OO”, with the time in 24 hour format, where OO:OO is the offset from UTC – e.g. “2008-12-01 14:12:00
+01:00″ |
||||
| CallbackURL |
A |
– |
Yes | The URL of the page on the merchant’s site that the results of the transaction will be posted back to (see section below |
| OrderDescription |
A |
256 |
No | A description for the order. Note: make sure that special characters in the OrderDescription are properly escaped, otherwise the hash
digest will not match |
| CustomerName |
A |
100 |
No | The name of the customer |
| Address1 |
A |
100 |
No | Customer’s billing
address line 1 |
| Address2 |
A |
50 |
No | Customer’s billing address line 2 |
| Address3 |
A |
50 |
No | Customer’s billing
address line 3 |
| Address4 |
A |
50 |
No | Customer’s billing address line 4 |
| City |
A |
50 |
No | Customer’s billing
address city |
| State |
A |
50 |
No | Customer’s billing address state |
| PostCode |
A |
50 |
No | Customer’s billing
address post code |
| CountryCode |
N |
3 |
No | Customer’s billing countrycode.ISO3166- 1 e.g.UnitedKingdom:
826 |
| EmailAddress |
A |
100 |
No | Customer’s email
address |
| PhoneNumber |
A |
30 |
No | Customer’s phone number |
| DateOfBirth |
A |
30 |
No | Customer’s date of birth. Must be formatted as YYYY-MM-
DD |
| EmailAddressEditable |
B |
true/false |
No | Control variable that determines whether the Email Address field on the payment form will
be editable |
| PhoneNumberEditable |
B |
true/false |
No | Control variable that determines whether the Phone Number field on the payment form will
be editable |
| DateOfBirthEditable |
B |
true/false |
No | Control variable that determines whether the Date Of Birth field on the payment form will
be editable |
| CV2Mandatory |
B |
true/false |
No | Control variable that determines whether the CV2 field on the payment form will be
mandatory |
| Address1Mandatory |
B |
true/false |
No | Control variable that determines whether the Address1 field on the payment form will be
mandatory |
| CityMandatory |
B |
true/false |
No | Control variable that determines whether the City field on the payment form will be
mandatory |
| PostCodeMandatory |
B |
true/false |
No | Control variable that determines whether the PostCode field on the payment form will be
mandatory |
| StateMandatory |
B |
true/false |
No | Control variable that determines whether the State field on the payment form will be
mandatory |
| CountryMandatory |
B |
true/false |
No | Control variable that determines whether the Country field on the payment form will be
mandatory |
| ResultDeliveryMethod |
A |
POST / SERVER / SERVER_P ULL |
Yes | The delivery method of the payment result, must be either POST, SERVER or SERVER_PULL. (Please see Result Delivery Method section). |
| ServerResultURL |
A |
– |
See Comments | The merchant’s external server URL. Only used for SERVER result
delivery method |
| PaymentFormDisplaysResult |
B |
true/false |
See Comments | Boolean that determines whether the payment result will be displayed on the
PaymentForm page, or |
| redirected to the merchant’s site after a response from the merchant’s external server (ServerResultURL). Only used for SERVER result delivery method | ||||
| PrimaryAccountName | A |
100 |
No | The name of the primary account holder (used for MCC 6012 accounts only) |
| PrimaryAccountNumber | A |
50 |
No | The account number of the primary account (used for MCC 6012 accounts only) |
| PrimaryAccountDateOfBirth | A |
10 |
No | The date of birth of the primary accountholder (used for MCC 6012 accountsonly). Should be in the format yyyy- mm-dd(e.g.1983-11- 20) |
| PrimaryAccountPostCode | A |
50 |
No | The post code of the primary account holder (used for MCC 6012 accounts only) |
