Payments API
Our API is REST-based. It accepts calls in JavaScript Object Notation (JSON). You can use different programming languages to create the JSON. Our API uses standard HTTP response codes and familiar verbs including:
GET- To retrieve a resource.PUT- to update existing resources.PATCH- To update existing resources.DELETE- To delete existing resources.
Available endpoints:
AuthenticateThreeDSecure
Endpoint: /AuthenticateThreeDSecure
Authenticate 3DS Request
A signed POST request used following a call to VerifyThreeDSecure to request an authentication of a customer’s 3DSecure details, and to retrieve the Xid, Cavv and Eci values to include in a subsequence Authorisation request within a Request object.
Parameters |
Description |
Type |
|---|---|---|
|
Merchant Identifier (Acquirer MID) associated with the transaction |
String |
|
The unique order reference assigned to the transaction before it was presented to Cashflows |
String |
|
The amount of the transaction |
Double |
|
Currency of payment |
String |
|
The full Primary Account Number (PAN) on the card |
String |
|
The tokenized value for the PAN |
String |
|
The payment card’s expiry month |
String |
|
The payment card’s expiry year as two digits |
String |
|
The |
String |
|
The |
String |
Capture
Endpoint: /Capture
Capture Request
Sending a capture POST request following an Authorisation is necessary to receive money from the cardholder, unless that original authorisation was for a Payment or Recurring payment (these are automatically batched for processing) within a Request object..
Parameters |
Description |
Type |
|---|---|---|
|
The Id of the transaction to be captured - Required |
String |
|
The Amount (optional and cannot be more than the amount of the original transaction) - Required |
Double |
Credit
Endpoint: /Credit
Credit Request
POST request used to get a Credit to the payment card associated with a previous authorisation or payment. If you wish to refund the money taken in a previous authorisation/capture or payment you should use the Refund command .
Parameters |
Description |
Type |
|---|---|---|
|
Merchant Identifier (Acquirer MID) to send the transaction to |
String |
|
The amount of the transaction - Required |
Double |
|
Currency being used for transaction - Required |
String |
|
The order reference applied to the originating transaction |
String |
|
The unique ID for the parent transaction as provided in the authorisation, payment or verify response. Mandatory unless providing |
String |
|
The full Primary Account Number (PAN) on the card. Mandatory unless providing |
String |
|
The tokenized value for the PAN. Mandatory unless providing |
String |
|
These characters are appended to the DBA name (statement narrative) displayed on the cardholder’s statement |
String |
Iin
Endpoint: /IinDetails
IIN/BIN look-up Request
A POST request to get details on a card with the provided Issuer Identification Number (IIN) - previously known as Bank Identification Number (BIN) within a Request object..
Parameters |
Description |
Type |
|---|---|---|
|
The IIN/BIN to check - Required |
String |
Refund
Endpoint: /Refund
Refund Request
A POST request for a refund can be sent for a captured authorisation or payment originally secured via the Payments API within a Request object..
Parameters |
Description |
Type |
|---|---|---|
|
String |
|
|
Double |
|
|
String |
|
ThreeDSecureVersion2
Endpoint: /ThreeDSecureVersion2/Authenticate
Authenticate 3DS v2 Request
GET request Used to initialise a 3DS Authenticate request within a Request object.
Parameters |
Description |
Type |
|---|---|---|
|
The 3DS version for this request - Required |
String |
|
Merchant Identifier (Acquirer MID) to send the transaction to |
String |
|
The order reference applied to the originating transaction - Required |
String |
|
The 3DS server transaction ID created by the pre-authenticate call |
String |
|
Transaction data for a 3DS authentication request |
Object |
|
The amount of the transaction - Required |
Double |
|
The date of the transaction - Required |
String |
|
The currency of the transaction - Required |
String |
|
Address data for a 3DS V2.x authenticate request |
Object |
|
Address line 1 |
String |
|
Address line 2 |
String |
|
Address line 3 |
String |
|
City |
String |
|
Region, County or State. If provided, must be in ISO3166-2 format code. |
String |
|
Postal or ZIP code |
String |
|
Country as an ISO-2 code |
String |
|
3DS 2.x Shipping method type, valid values: |
String |
|
3DS 2.x Requester authentication indicator type, valid values: |
String |
|
3DS 2.x Requester authentication indicator type, valid values: |
String |
|
Date after which no further authorisations shall be performed. Applies for recurring or installment transactions. |
String |
|
Indicates the minimum number of days between authorisations. Applies to recurring or installment transactions. |
Integer |
|
Indicates the number of installments for the installment transaction. |
Integer |
|
Cardholder data for a 3DS 2.x authenticate request - Required |
Object |
|
The name of the card holder as it appears on the card - Required |
String |
|
The full Primary Account Number (PAN) on the card. Should not be provided with a card token. |
String |
|
The card token. Should not be provided with a card number. |
String |
|
The payment card’s expiry month - Required |
String |
|
The payment card’s expiry year as two digits - Required |
String |
|
Address data for a 3DS V2.x authenticate request |
Object |
|
Address line 1 |
String |
|
Address line 2 |
String |
|
Address line 3 |
String |
|
City |
String |
|
Region, County or State. If provided, must be in ISO3166-2 format code. |
String |
|
Postal or ZIP code |
String |
|
Country as an ISO-2 code |
String |
|
The cardholder’s email address |
String |
|
The cardholder’s home phone number |
String |
|
The cardholder’s mobile phone number |
String |
|
The cardholder’s work phone number |
String |
|
3DS 2.x Requester AccountAgeIndicator Type - Length of time that the cardholder has had the account with the 3DS Requestor, valid values: |
String |
|
Browser data for a 3DS authentication request - Required |
Object |
|
Browser Accept header - Required |
String |
|
Browser language as defined in IETF BCP47 - Required |
String |
|
Java status, valid values: |
String |
|
JavaScript status, valid values: |
String |
|
Browser screen height in pixels - Required |
String |
|
Browser screen width in pixels - Required |
String |
|
Browser time zone. This should be in minutes relative to UTC. So UTC+01:00 would be -60 - Required |
Integer |
|
The entire user agent string - Required |
String |
|
Browser IP Address |
String |
|
Browser Screen Color Depth in bits |
String |
|
A value indicating whether the ACS successfully responded to a MethodUrl POST message. This should be null if no MethodUrl POST was required. |
Boolean |
|
The URL to post challenge results to. This will be called by the ACS when the challenge is complete. This POST will contain a results (Rreq) message. - Required |
String |
|
The URL to post challenge notifications to. This will be called by the ACS when the challenge is complete. This will POST contain a challenge results (Creq) message. - Required |
String |
|
3DS v2.x challenge window size, valid values: |
String |
|
Indicates the category of the EMV 3-D Secure message, valid values: |
String |
|
3DS 2.x Requester Challenge Indicator type, valid values: |
String |
Challenge Results Response (RRes) Message sent by the 3DS Server to the ACS via the DS to acknowledge receipt of the Results Request message within a Request object.
Parameters |
Description |
Type |
|---|---|---|
|
Merchant Identifier (Acquirer MID) associated with the transaction - ** Required** |
String |
|
A Results Request (Rreq) object - Required |
String |
|
The 3DS version for this request - Required |
String |
|
3DS 2.x Challenge Result Status type, valid values: |
String |
Pre-Authenticate 3DS Request
Used to initialise a 3DS Pre-Authenticate request within a Request object.
Parameters |
Description |
Type |
|---|---|---|
|
Merchant Identifier (Acquirer MID) associated with the transaction - Required |
String |
|
The unique order reference assigned to the transaction before it was presented to Cashflows - Required |
String |
|
The full Primary Account Number (PAN) on the card. Should not be provided with a card token |
String |
|
The card token. Should not be provided with a card number |
String |
|
The URL to post Method notifications to. If a method POST occurs, then a notification will be POSTed to this URL when the ACS is finished with the method POST. If %%SERVERTRANSACTIONID%% is included in the URL, then this will be substituted with the Server Transaction ID - Required |
String |
VerifyThreeDSecure
Endpoint: /VerifyThreeDSecure
Verify 3DS Enrolment Request
Used to check whether a customer’s card is enrolled in 3DSecure within a Request object.
Parameters |
Description |
Type |
|---|---|---|
|
Merchant Identifier (Acquirer MID) to send the transaction to - Required |
String |
|
The unique reference assigned to the transaction before it was presented to CashFlows - Required |
String |
|
The amount of the transaction - Required |
Double |
|
The currency of the transaction - Required |
String |
|
The full Primary Account Number (PAN) on the card |
String |
|
The tokenized value for the PAN |
String |
|
The payment card’s expiry month - Required |
String |
|
The payment card’s expiry year as two digits - Required |
String |
Void
Endpoint: /Void
Void Request
POST request used to void an authorisation previously obtained using the Authorisation command within a Request object. The request will be accepted only if the authorisation has NOT been captured.
Parameters |
Description |
Type |
|---|---|---|
|
The unique ID for the transaction to be voided - Required |
String |