Payouts with Webservices API

  Last updated: 

 

  The following content assumes you have obtained the necessary PCI certification to process and submit sensitive cardholder data in the request to our Webservices API.
Read this article to learn more.

 

Payouts are used to credit funds to another bank account. Common use cases of this include:

  • Allowing customers to withdraw funds from their account with you.
  • Paying out an insurance claim to a customer.

  Payouts are also known as Credit Fund Transfers (CFT) or Original Credit Transfers (OCT).

Payouts to Visa-branded cards are processed via the Visa Direct protocol.
Click here to learn more.


Gaming Payouts to Mastercard-branded cards are processed via the Mastercard Gaming and Gambling Payments Program.
Click here to learn more.


Non-Gaming Payouts to Mastercard-branded cards are processed via the Mastercard MoneySend Program.
Click here to learn more.

 

Requirements

You will need to have a CFT Merchant Number associated with your Trust Payments account. If you are unsure if your merchant number supports this, we recommend contacting your bank for clarification. Additionally, please ensure you are following any guidelines outlined by your bank before proceeding.

 

Request/Response examples

To process a Payout, you will need to submit a Payout request using our Webservices API. Please refer to the below for code examples.

  To process a Payout successfully, it is imperative that your request includes the following:

  • accounttypedescription=CFT
  • requesttypedescriptions=REFUND
Visa Direct or Mastercard Gaming Program Payout Example Request/Response

Request example

Python PHP cURL Raw JSON Raw XML
#!/usr/bin/python
import securetrading

stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)

payout= {
"accounttypedescription": "CFT",
"baseamount": "1",
"billingcountryiso2a": "GB",
"billingfirstname": "First",
"billinglastname": "Last",
"billingdob": "1990-01-01",
"currencyiso3a": "GBP",
"expirydate": "12/2030",
"pan": "411111******1111",
"requesttypedescriptions": ["REFUND"],
"sitereference": "site12346"
}

strequest = securetrading.Request()
strequest.update(payout)
stresponse = st.process(strequest) #stresponse contains the transaction response

Replace <DOMAIN> with a supported domain. Click here for a full list.

 

Response example

Python PHP Raw JSON Raw XML
{
u 'requestreference': u 'Agv3epv31',
u 'version': u '1.00',
u 'responses': [{
u 'accounttypedescription': u 'CFT',
u 'acquirerresponsecode': u '00',
u 'acquirerresponsemessage': u 'Approved or completed Successfully',
u 'authcode': u 'ABC123',
u 'baseamount': u '1',
u 'chargedescription': u 'Charge description',
u 'cryptocurrencyindicator': u '0',
u 'currencyiso3a': u 'GBP',
u 'dccenabled': u '0',
u 'debtrepayment': u '0',
u 'errorcode': u '0',
u 'errormessage': u 'Ok',
u 'issuer': u 'ISSUER NAME',
u 'issuercountryiso2a': u 'GB',
u 'livestatus': u '1',
u 'maskedpan': u '411111######1111',
u 'merchantcategorycode': u '7995',
u 'merchantcity': u 'Test City',
u 'merchantcountryiso2a': u 'GB',
u 'merchantname': u 'Test Merchant',
u 'merchantnumber': u '000104900099999',
u 'merchantzipcode': u 'TR45 6ST',
u 'operatorname': u 'webservices@merchant.com',
u 'parenttransactionreference': u '60-102-99999999',
u 'paymenttypedescription': u 'VISA',
u 'requesttypedescription': u 'REFUND',
u 'retrievalreferencenumber': u '334918601688',
u 'securityresponseaddress': u '0',
u 'securityresponsepostcode': u '0',
u 'securityresponsesecuritycode': u '0',
u 'settleduedate': u '2023-12-15',
u 'settlestatus': u '100',
u 'stan': u '601688',
u 'transactionreference': u '60-70-99999999',
u 'transactionstartedtimestamp': u '2023-12-15 18:00:42'
}]
}
Moneysend Payout Example Request/Response where TTI = "C55"

Request example

Python PHP cURL Raw JSON Raw XML
#!/usr/bin/python
import securetrading

stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)

payout= {
"accounttypedescription": "CFT",
"baseamount": "1",
"billingcountryiso2a": "GB",
"billingdob": "1990-12-02",
"billingfirstname": "First",
"billinglastname": "Last",
"currencyiso3a": "GBP",
"expirydate": "12/2030",
"pan": "545454******5454",
"requesttypedescriptions": ["REFUND"],
"sitereference": "site12346",
"transactiontypeindicator": "C55"
}

strequest = securetrading.Request()
strequest.update(payout)
stresponse = st.process(strequest) #stresponse contains the transaction response

Replace <DOMAIN> with a supported domain. Click here for a full list.

 

Response example

Python PHP Raw JSON Raw XML
{
u 'requestreference': u 'Agv3epv31',
u 'version': u '1.00',
u 'responses': [{
u 'accounttypedescription': u 'CFT',
u 'acquirerresponsecode': u '00',
u 'acquirerresponsemessage': u 'Approved or completed Successfully',
u 'authcode': u 'ABC123',
u 'baseamount': u '1',
u 'chargedescription': u 'Charge description',
u 'cryptocurrencyindicator': u '0',
u 'currencyiso3a': u 'GBP',
u 'dccenabled': u '0',
u 'debtrepayment': u '0',
u 'errorcode': u '0',
u 'errormessage': u 'Ok',
u 'issuer': u 'ISSUER NAME',
u 'issuercountryiso2a': u 'GB',
u 'livestatus': u '1',
u 'maskedcustomeraccountnumber': u '12345678',
u 'maskedpan': u '545454######5454',
u 'merchantcategorycode': u '6537',
u 'merchantcity': u 'Test City',
u 'merchantcountryiso2a': u 'GB',
u 'merchantname': u 'Test Merchant',
u 'merchantnumber': u '000123456789012',
u 'merchantzipcode': u 'TR45 6ST',
u 'operatorname': u 'webservices@merchant.com',
u 'parenttransactionreference': u '60-102-99999999',
u 'paymenttypedescription': u 'MASTERCARD',
u 'requesttypedescription': u 'REFUND',
u 'retrievalreferencenumber': u '334918601688',
u 'securityresponseaddress': u '0',
u 'securityresponsepostcode': u '0',
u 'securityresponsesecuritycode': u '0',
u 'settleduedate': u '2023-12-15',
u 'settlestatus': u '10',
u 'stan': u '601688',
u 'transactionreference': u '60-70-99999999',
u 'transactionstartedtimestamp': u '2023-12-15 18:00:42',
u 'transactiontypeindicator': u 'C55'
}]
}
Moneysend Payout Example Request/Response where TTI = "C52"

Request example

Python PHP cURL Raw JSON Raw XML
#!/usr/bin/python
import securetrading

stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)

payout= {
"accounttypedescription": "CFT",
"baseamount": "1",
"billingdob": "1990-12-02",
"billingfirstname": "First",
"billinglastname": "Last",
"cftsourceoffunds": "05",
"currencyiso3a": "GBP",
"customeraccountnumber": "999999",
"customeraccountnumbertype": "ACCOUNT",
"customerfirstname": "First",
"customerlastname": "Last",
"customerstreet": "123 Street",
"customertown": "Town",
"customercountryiso2a": "GB",
"expirydate": "12/2030",
"pan": "545454******5454",
"requesttypedescriptions": ["REFUND"],
"sitereference": "site12346",
"transactiontypeindicator": "C52"
}

strequest = securetrading.Request()
strequest.update(payout)
stresponse = st.process(strequest) #stresponse contains the transaction response

Replace <DOMAIN> with a supported domain. Click here for a full list.

 

Response example

Python PHP Raw JSON Raw XML
{
u 'requestreference': u 'Agv3epv31',
u 'version': u '1.00',
u 'responses': [{
u 'accounttypedescription': u 'CFT',
u 'acquirerresponsecode': u '00',
u 'acquirerresponsemessage': u 'Approved or completed Successfully',
u 'authcode': u 'ABC123',
u 'baseamount': u '1',
u 'chargedescription': u 'Charge description',
u 'cryptocurrencyindicator': u '0',
u 'currencyiso3a': u 'GBP',
u 'dccenabled': u '0',
u 'debtrepayment': u '0',
u 'errorcode': u '0',
u 'errormessage': u 'Ok',
u 'issuer': u 'ISSUER NAME',
u 'issuercountryiso2a': u 'GB',
u 'livestatus': u '1',
u 'maskedcustomeraccountnumber': u '12345678',
u 'maskedpan': u '545454######5454',
u 'merchantcategorycode': u '6537',
u 'merchantcity': u 'Test City',
u 'merchantcountryiso2a': u 'GB',
u 'merchantname': u 'Test Merchant',
u 'merchantnumber': u '000123456789012',
u 'merchantzipcode': u 'TR45 6ST',
u 'operatorname': u 'webservices@merchant.com',
u 'parenttransactionreference': u '60-102-99999999',
u 'paymenttypedescription': u 'MASTERCARD',
u 'requesttypedescription': u 'REFUND',
u 'retrievalreferencenumber': u '334918601688',
u 'securityresponseaddress': u '0',
u 'securityresponsepostcode': u '0',
u 'securityresponsesecuritycode': u '0',
u 'settleduedate': u '2023-12-15',
u 'settlestatus': u '10',
u 'stan': u '601688',
u 'transactionreference': u '60-70-99999999',
u 'transactionstartedtimestamp': u '2023-12-15 18:00:42',
u 'transactiontypeindicator': u 'C52'
}]
}

 

Payout field specification

Payout request field specification

   
Field
Format Description
required23.png accounttypedescription
XPath: /operation/accounttypedescription
Alpha (20) Must be “CFT”.
required23.png baseamount
XPath: /billing/amount
Numeric (13)

The refund amount in base units, with no commas or decimal points. e.g. £10.99 would be submitted as “1099” but ¥246 would be submitted as “246”.

required23.png billingcountryiso2a
XPath: /billing/country
Alpha (2)

The country for the recipient's billing address. This will need to be in ISO2A format.

Click here for a full list of country codes.

Required when processing Payouts where Trust Payments performs PEP or sanction screening on the recipient.

Note: No invalid field response is returned when this required field is not included.

required23.png billingdob
XPath: /billing/dob
Date YYYY-MM-DD

The recipient's date of birth.

Required when processing Payouts where Trust Payments performs PEP or sanction screening on the recipient.

Note: An invalid field response is returned when this required field is not included and the site reference used is enabled for MoneySend.

required23.png billingfirstname
XPath: /billing/name/first
Alphanumeric including
symbols (127)

The recipient's billing first name.

Required when processing Payouts where Trust Payments performs PEP or sanction screening on the recipient.

Note: An invalid field response is returned when this required field is not included and the sitereference used is enabled for MoneySend.

required23.png billinglastname
XPath: /billing/name/last
Alphanumeric including
symbols (127)

The recipient's billing last name.

Required when processing Payouts where Trust Payments performs PEP or sanction screening on the recipient.

Note: An invalid field response is returned when this required field is not included and the sitereference used is enabled for MoneySend.

required23.png currencyiso3a
XPath: /billing/amount/@currencycode
Alpha (3)

The currency that the transaction will be processed in.

Click here for a full list of available currencies.

required23.png requesttypedescriptions
XPath: /@type
Alphanumeric
& hyphens (25)
The request type required is “REFUND”.
required23.png sitereference
XPath: /operation/sitereference
Alphanumeric
& underscore (50)
A unique reference that identifies your account. You receive this when you first sign up with us.
conditional23.png billingcounty
XPath: /billing/county
Alphanumeric including
symbols (127)

The county for the recipient's billing address.

For US and Canadian addresses, submit the two-character province code, e.g. for British Columbia, submit “BC”.

Required for Visa Direct payments processed with cards issued in Canada.

Required for Mastercard MoneySend Payments where the recipient country (billingcountryiso2a) is "US" (United States) or "CA" (Canada).

conditional23.png billingstreet
XPath: /billing/street
Alphanumeric including
symbols (127)

The street entered for the recipient's billing address.

Required for Visa Direct payments processed with cards issued in Canada.

conditional23.png billingtown
XPath: /billing/town
Alphanumeric including
symbols (127)

The town entered for the recipient's billing address.

Required for Visa Direct payments processed with cards issued in Canada.

conditional23.png

  Fund transfer fields

For Mastercard payments with transactiontypeindicator = "C52": ALL fields here are required.
For Mastercard payments with transactiontypeindicator = "C55": Either ALL fields here are submitted or NONE.
If the above conditions are not met, these field are OPTIONAL unless specified otherwise.

cftsourceoffunds
XPath: /merchant/cftsourceoffunds
Numeric (2)

The source of funds for the Payout.
Submit one of the following:

"01" - Credit
"02" - Debit
"03" - Prepaid
"04" - Cash
"05" - Debit/ deposit account
"07" - Mobile Money Account

customeraccountnumbertype
XPath: /customer/accountnumber/@type
Alpha (7)

Submit either “CARD” or “ACCOUNT”.

  customeraccountnumber
XPath: /customer/accountnumber
Numeric (20) 

If customeraccountnumbertype is “ACCOUNT”, submit the sender's account number.

If customeraccountnumbertype is “CARD”, submit the sender's card number.

conditional23.png   Sender contact fields

For Mastercard payments with transactiontypeindicator = "C52": ALL fields here are required.
For Mastercard payments with transactiontypeindicator = "C55": Either ALL fields here are submitted or NONE.
If the above conditions are not met, these field are OPTIONAL unless specified otherwise.

customercountryiso2a
XPath: /customer/country
Alpha (2)

The sender's country in ISO2A format.

customercounty
XPath: /customer/county
Alphanumeric including
symbols (127)

The county for the sender's address.

For US and Canadian addresses, submit the two-character province code, e.g. for British Columbia, submit “BC”.

Required for Mastercard MoneySend Payments where the sender's country (customercountryiso2a) is "US" (United States) or "CA" (Canada).

customerfirstname
XPath: /customer/name/first
Alphanumeric including
symbols (127)

The sender's first name.

customerlastname
XPath: /customer/name/last
Alphanumeric including
symbols (127)

The sender's last name.

customerpremise
XPath: /customer/premise
Alphanumeric including
symbols (25)

The sender's property name/number.

Optional for Mastercard MoneySend Payments if customerstreet is submitted.

customerstreet
XPath: /customer/street
Alphanumeric including
symbols (127)

The sender's street name.

Optional for Mastercard MoneySend Payments if customerpremise is submitted.

customertown
XPath: /customer/town
Alphanumeric including
symbols (127)

The sender's town.

conditional23.png expirydate
XPath: /billing/payment/expirydate
Date MM/YYYY

The card expiry date.

Required when pan is submitted.

Optional when parenttransactionreference is submitted.

conditional23.png pan
XPath: /billing/payment/pan
Numeric (12-19)

The customer's card number.

Required when parenttransactionreference is NOT submitted.

conditional23.png parenttransactionreference
XPath: /operation/parenttransactionreference
Alphanumeric
& hyphens (25)

Submit the transaction reference of a previous AUTH, ACCOUNTCHECK or Payout (CFT REFUND) request and we will retrieve the customer's card stored in our records and credit the funds to said card.

All fields that start with "billing-" and "customer-" will also be inherited from the parent request, if available. Inherited fields do not need to be included in this new Payout request (even if denoted as required in this specification), but you do still have the option to submit new billing and customer fields and this will override any inherited data.

Required when pan is NOT submitted.

conditional23.png transactiontypeindicator
XPath: /merchant/transactiontypeindicator
Alphanumeric (3)

Specifies the Mastercard MoneySend Transaction Type - Supported values:

  • "C52" General Transfer to Own Account - e.g. customer transfers funds from their trading account with the merchant to their card account.
  • "C55" Business Disbursement - e.g. an insurance company pays out to card details used for monthly/yearly insurance premiums

Required by Mastercard for all MoneySend payment transactions.

Note: An invalid field response is returned when this required field is not included for Mastercard payment types and the sitereference used is enabled for MoneySend.

optional23.png billingpremise
XPath: /billing/premise
Alphanumeric including
symbols (25)

The property name/number for the recipient's billing address.

optional23.png orderreference
XPath: /merchant/orderreference
Alphanumeric including
symbols (25)

We strongly recommend submitting a unique reference to identify each request submitted.

 

Payout response field specification

  Field Format Description
returned23.png accounttypedescription
XPath: /operation/accounttypedescription
Alpha (20)

“CFT” is returned in the response.

returned23.png baseamount
XPath: /billing/amount
Numeric (13) The refund amount in base units, with no commas or decimal points. e.g. £10.99 would be submitted as “1099” but ¥246 would be submitted as “246”.
returned23.png chargedescription
XPath: /merchant/chargedescription
Alphanumeric including spaces and special characters (25)

The charge description is a field that we provide to the acquiring bank during a transaction. It is a basic description of the transaction that is shown on the customer’s bank statement.

Click here to learn more.

returned23.png cryptocurrencyindicator
XPath: /operation/cryptocurrencyindicator
Numeric (1)

Indicates if transaction is flagged as a purchase of cryptocurrency:

  • 1 – Transaction is flagged as cryptocurrency purchase.
  • 0 – Transaction is not flagged as cryptocurrency purchase.
returned23.png currencyiso3a
XPath: /billing/amount/@currencycode
Alpha (3)

The currency of the transaction.

Click here for a full list of available currencies.

returned23.png dccenabled
XPath: /billing/dcc/@enabled
Numeric (1)

Indicates if your account is configured for DCC:

  • 1 – Yes
  • 0 – No
returned23.png debtrepayment
XPath: /merchant/debtrepayment
Numeric (1)

Indicates if transaction is flagged as debt repayment:

  • 1 – Transaction is flagged as debt repayment.
  • 0 – Transaction is not flagged as debt repayment.
returned23.png errorcode
XPath: /error/code
Numeric (1-5) The error code should be used to determine if the request was successful or not.
  • 0 - Transaction was successful.
  • 60042 - Insufficient funds (merchant).
  • 60044 - Recipient screening failed.
  • 70000 - Transaction declined.

Click here for a full list of errorcode and message values.

returned23.png errormessage
XPath: /error/message
Alphanumeric (255) This provides a brief explanation as to the cause of the error.

For successful transactions, this is returned as “Ok”.

Click here for a full list of errorcode and message values.

returned23.png issuer
XPath: /billing/payment/issuer
Alphanumeric (255) The customer’s card issuer.
returned23.png issuercountryiso2a
XPath: /billing/payment/issuercountry
Alpha (2)

The country for the customer’s card issuer.
This will be in ISO2A format.

Click here for a full list of country codes.

returned23.png livestatus
XPath: /live
Numeric (1)
  • 0 – Transaction processed using a test account.
  • 1 – Transaction processed using a live account.
returned23.png maskedpan
XPath: /billing/payment/pan
Alphanumeric including “#” (12-19)

If tokenisedpayment is not returned:
The maskedpan field represents the customer’s card number.

If tokenisedpayment is returned with value 1:
The maskedpan field represents the customer’s unique token number used to perform the transaction. The value of maskedpan field is masked in the response. Most of the number is intentionally obscured by “#” characters, e.g. 411111######0211.

returned23.png merchantnumber
XPath: /merchant/merchantnumber
Alphanumeric (32)

The merchant number that was used to process the transaction. Provided by the acquiring bank.

returned23.png operatorname
XPath: /merchant/operatorname
Alphanumeric (255) The value of this field contains the name of the user that processed the request.
returned23.png paymenttypedescription
XPath: /billing/payment/@type
Alpha (20) Payment method (e.g. “VISA” or “MASTERCARD”).
returned23.png requesttypedescription
XPath: /@type
Alpha (20)

“REFUND” is returned in the response.

returned23.png securityresponseaddress
XPath: /security/address
Numeric (1)

The result of AVS checks.

Click here to learn more.

returned23.png securityresponsepostcode
XPath: /security/postcode
Numeric (1)

The result of AVS checks.

Click here to learn more.

returned23.png securityresponsesecuritycode
XPath: /security/securitycode
Numeric (1)

The result of Security Code Checks.

Click here to learn more.

returned23.png settleduedate
XPath: /settlement/settleduedate
Date YYYY-MM-DD The date on which the transaction will be settled.
returned23.png settlestatus
XPath: /settlement/settlestatus
Numeric (3)

A numeric value used to indicate the progress of settlement regarding this transaction.

Click here for further info on values that can be returned.

returned23.png transactionreference
XPath: /transactionreference
Alphanumeric including
hyphens (25)
A unique reference for the transaction assigned by Trust Payments. You will need this reference to perform a refund or update the transaction.
returned23.png transactionstartedtimestamp
XPath: /timestamp
Date time YYYY-MM-DD hh:mm:ss The time the transaction was processed.
conditional23.png acquireradvicecode
XPath: /acquireradvicecode
 Numeric (1) A numeric value returned following a repeat payment request, indicating if further payments can be processed.

Mapping:

  • 0 – No action required.
  • 1 – New account information available.
  • 2 – Cannot approve at this time.
  • 4 – Do not process further recurring transactions.
  • 8 – Payment blocked by card scheme.

This will vary depending on your acquiring bank. Please contact your bank for further information.

conditional23.png acquirerresponsecode
XPath: /acquirerresponsecode
Alphanumeric (255)

Used by your acquirer to indicate the outcome of the request.

This will vary depending on your acquiring bank. Please contact your bank for further information.

conditional23.png acquirerresponsemessage
XPath: /acquirerresponsemessage
Alphanumeric (255)

Used by your acquirer to indicate the outcome of the request.

This will vary depending on your acquiring bank. Please contact your bank for further information.

conditional23.png authcode
XPath: /authcode
Alphanumeric (255)

The authorisation code provided by the issuing bank. This will differ depending on which bank you use.

Only returned if the transaction is authorised.

conditional23.png customeraccountnumbertype
XPath: /customer/accountnumber/@type
Alpha (7)

Either “CARD” or “ACCOUNT”.

Returned if submitted in the request.

conditional23.png errordata
XPath: /error/data
Alphanumeric (255)

Additional information to help troubleshoot the error.

Only returned if there has been an error.

conditional23.png maskedcustomeraccountnumber
XPath: /customer/accountnumber
Numeric (20)

If account number type is “ACCOUNT”, the account number of the sender.

If account number type is “CARD”, the card number of the sender.

The returned value in the response is in a masked format, e.g. “411111#######1111”.

Returned if submitted in the request.
conditional23.png merchantcategorycode
XPath: /merchant/merchantcategorycode
Alphanumeric (255)

These are details associated with the account used to process the transaction. To amend these fields, please contact our Support Team.

Values returned depends on your account configuration.

conditional23.png merchantcity
XPath: /merchant/merchantcity
Alphanumeric (127)

These are details associated with the account used to process the transaction. To amend these fields, please contact our Support Team.

Values returned depends on your account configuration.

conditional23.png merchantcountryiso2a
XPath: /merchant/merchantcountryiso2a
Alpha (2)

These are details associated with the account used to process the transaction. To amend these fields, please contact our Support Team.

Values returned depends on your account configuration.

conditional23.png merchantname
XPath: /merchant/merchantname
Alphanumeric (255)

These are details associated with the account used to process the transaction. To amend these fields, please contact our Support Team.

Values returned depends on your account configuration.

conditional23.png merchantstatecode
XPath: /merchant/merchantstatecode
Alphanumeric (127)

These are details associated with the account used to process the transaction. To amend these fields, please contact our Support Team.

Values returned depends on your account configuration.

conditional23.png merchantzipcode
XPath: /merchant/merchantzipcode
Alphanumeric (10)

These are details associated with the account used to process the transaction. To amend these fields, please contact our Support Team.

Values returned depends on your account configuration.

conditional23.png orderreference
XPath: /merchant/orderreference
Alphanumeric including
symbols (25)

Your unique order reference that can be stored on the Trust Payments system.

This field is returned if submitted in the request or inherited from a parent.

conditional23.png parenttransactionreference
XPath: /operation/parenttransactionreference
Alphanumeric
& hyphens (25)

The transactionreference of a previous request, from which key details have been inherited.

This field is returned if submitted in the request.

conditional23.png

retrievalreferencenumber
XPath: /other/retrievalreferencenumber

Alphanumeric (255)

An ISO term. This is used to reference the source transaction.

This will vary depending on your acquiring bank.

conditional23.png

stan
XPath: /other/stan

ISO 8583

The STAN (System Trace Audit Number) associated with the transaction. This follows the ISO 8583 standard.

This field is returned if available.

conditional23.png tokenisedpayment
XPath: /billing/payment/pan/@tokenised
Numeric (1)

If this field is returned with value 1, this indicates the transaction was processed using a token.

This field is returned if payment was performed using a token.

conditional23.png tokentype
XPath: /billing/payment/pan/@tokentype
Alphanumeric (50)

Used to identify the type of token used for this payment (e.g. “VISATOKEN”).

This field is returned if payment was performed using a token.

conditional23.png transactiontypeindicator
XPath: /merchant/transactiontypeindicator
Alphanumeric (3)
  • "C52" General Transfer to Own Account - e.g. customer transfers funds from their trading account with the merchant to their card account.
  • "C55" Business Disbursement - e.g. an insurance company pays out to card details used for monthly/yearly insurance premiums

Returned if submitted in the request.

conditional23.png walletdisplayname
XPath: /billing/payment/wallet/displayname
Alphanumeric (255)

This normally contains the last four digits of the customer’s card number (e.g. “1111”).

This field is returned if payment was performed using a wallet.

conditional23.png walletsource
XPath: /billing/payment/wallet/source
Alphanumeric (20)

Used to identify the type of wallet used for this payment (e.g. “APPLEPAY”).

This field is returned if payment was performed using a wallet.

 

Payout settlement

The settlement flow depends on the protocol being used to perform the Payout.

Visa_Brandmark_Blue_RGB_2021.png

Visa Direct

Transfers processed via Visa Direct are typically transferred to the recipient in less than 30 minutes. The settlestatus of the transfer is immediately set to 100.

brand-mastercard.png

Mastercard MoneySend & Gaming Payments

While the funds are typically transferred to the recipient in less than 30 minutes, MoneySend & Gaming Payments will initially have settlestatus=10. A batch process runs on a daily basis, updating the settlestatus of successful transfers to 100.

Other

Payouts that are not processed as Visa Direct or Mastercard MoneySend & Gaming Payments will follow the same settlement flow as a standard e-commerce AUTH or REFUND request:

  • If the Payout request is successful, settlestatus=0
  • Settlement is performed in batches on a daily basis, after which Payouts are updated to settlestatus=100 to indicate successful settlement.
  • The transfer will normally complete within 24 hours.

 

Additional notes

Politically Exposed Persons (PEP) or Sanction Screening

Requests to process Payouts where Trust Payments performs PEP or sanction screening on the recipient are subject to strict requirements. The following fields must be submitted in the Payout request:

  Failure to submit may result in returning of 60044 "Recipient screening failed" error.

  • billingcountryiso2a
  • billingdob
  • billingfirstname
  • billinglastname

 

Testing guidance

When testing, you can use the following test card details:

  • Visa card "4111 1111 1111 1111" or Mastercard "5100 0000 0000 0511".
  • Set expiry date to any valid date in the future.
  • Use security code “123”.

You can also send different baseamount values to affect the outcome of the request:

  • baseamount 70000 returns a declined response from the test bank.
  • baseamount 60010 returns a bank system error from the test bank.
  • baseamount 1050 returns an authorised response from the test bank.

  Please generate and submit your own dummy/example sender/recipient name, address, date of birth and/or account number etc. when testing.

Was this article helpful?
0 out of 0 found this helpful