On This Page
Payouts Developer Guide
Payouts Developer Guide
This section describes how to use this guide and where to find further information.
Audience and Purpose
This document is written for developers who want to use the
Cybersource
APIs to integrate Cybersource
Payouts
services into their transaction management system. Conventions
This statement is used in this document:
IMPORTANT
An
Important
statement contains information essential to
successfully completing a task or learning a concept.Related Documentation
Visit the
Cybersource
documentation hub on the Cybersource Developer Center for
links to further documentation resources. Customer Support
For support information about any service, visit the Support Center:
Recent Revisions to This Document
25.05.01
This revision contains only editorial changes and no technical updates.
24.01
Initial release.
AFT Transactions
The Account Funding Transaction (AFT) allows the transfer of funds between a payment card
and another account, including other payment cards. When used independently, an AFT can
only transfer funds between accounts owned by the same person or business entity. An AFT
is not intended for paying goods and services, funding a merchant account, or repaying
debts.
IMPORTANT
You must receive approval from before using the AFT services. Contact to register in the AFT program.
Account Funding Transactions (AFTs)
Payouts
uses the authorization service to support AFTs. An
AFT withdraws funds from a sender’s account.Streamline
does not support zero amount for orderInformation.amountDetails.totalAmount
field.IMPORTANT
You must receive prior approval from to register in the AFT
program.
your acquirer
before using the AFT services. Contact Streamline
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for an AFT Request
These fields are required to process an AFT request:
- Streamlinedoes not support zero amount.
- These are the values:
- AA: Account to account.
- FD: Funds disbursement, e.g. insurance payout.
- PD: Payroll disbursement.
- PP: Person to person.
- FT: Funds transfer.
- TU: Top Up: Prepaid load.
- WT: Wallet transfer.
- Required in all countries. Optional in South Africa, and Canada and US cross-border transactions.
- These are the values:
- 00: Other
- 01: Routing transit number (RTM) and bank account
- 02: IBAN
- 03: Card account
- 04: Email
- 05: Phone number
- 06: Bank account number (BAN) and Bank identification number code (BIC)
- 07: Wallet ID
- 08: Social network ID
- Required for Canada and US cross-border transactions.
- Required for Canada and US cross-border transactions.
- Required for Canada and US cross-border transactions.
- Required for Canada and US cross-border transactions.
- Required with Visa AFTs for Canada and US cross-border, and Visa AFTs for South Africa issuer cross-border.
- Required for Canada and US cross-border transactions.
- These are the values:
- 00: Other
- 01: Routing transit number (RTM) and bank account
- 02: IBAN
- 03: Card account
- 04: Email
- 05: Phone number
- 06: Bank account number (BAN) and Bank identification number code (BIC)
- 07: Wallet ID
- 08: Social network ID
Related Information
Optional Fields for Performing an AFT
You can include these optional fields in an authorization request for an AFT:
Related Information
REST Example: AFT in the US with Visa
Request AFT in the US with Visa
Example in the US with Visa: Consumer funding an
account-to-account transfer when the sender and recipient are the same person.
{ "clientReferenceInformation": { "code": "RTS-AFT3-8" }, "processingInformation": { "capture": true, "businessApplicationId": "AA", "commerceIndicator": "internet", "authorizationOptions": { "ignoreAvsResult": true, "ignoreCvResult": false, "aftIndicator": true } }, "paymentInformation": { "card": { "number": "453979100173XXXX", "expirationMonth": "03", "expirationYear": "2025", "type": "001", "securityCode": "351" } }, "orderInformation": { "amountDetails": { "totalAmount": "28.00", "currency": "GBP" }, "billTo": { "firstName": "Joe", "lastName": "Root", "middleName": "S", "address1": "34 Orchard Grove", "locality": "Southampton", "postalCode": "DE6 1BE", "country": "GB", "email": "test@cybs.com" } }, "senderInformation": { "account": { "number": "453979100173XXXX", "type": "03", "fundsSource": "01" }, "firstName": "Joe", "middleName": "S", "lastName": "Root", "address1": "34 Orchard Grove", "locality": "Southampton", "postalCode" : "SO14 7DR", "countryCode": "GB" }, "recipientInformation": { "accountType": "03", "firstName": "Ben", "middleName": "A", "lastName": "Stokes", "address1" : "1 Market St", "locality": "san francisco", "administrativeArea": "CA", "postalCode" : "94105", "countryCode": "US" } }
Response AFT in the US with Visa
{ "_links" : { "void" : { "method" : "POST", "href" : "/pts/v2/payments/7345351333470181611471/voids" }, "self" : { "method" : "GET", "href" : "/pts/v2/payments/7345351333470181611471" } }, "clientReferenceInformation" : { "code" : "RTS-AFT3-8" }, "id" : "7345351333470181611471", "orderInformation" : { "amountDetails" : { "totalAmount" : "28.00", "authorizedAmount" : "28.00", "currency" : "GBP" } }, "paymentAccountInformation" : { "card" : { "type" : "001" } }, "paymentInformation" : { "tokenizedCard" : { "type" : "001" }, "card" : { "type" : "001" } }, "pointOfSaleInformation" : { "terminalId" : "28791234" }, "processorInformation" : { "merchantNumber" : "89888122", "approvalCode" : "28", "cardVerification" : { "resultCodeRaw" : "1", "resultCode" : "P" }, "cardReferenceData" : "12345678901234567890123456789012345678901234567890123456", "networkTransactionId" : "123456789012345", "transactionId" : "123456789012345", "responseCode" : "0", "avs" : { "code" : "U", "codeRaw" : "00" } }, "reconciliationId" : "RTS-AFT3-8", "status" : "AUTHORIZED", "submitTimeUtc" : "2024-12-18T15:18:53Z" }
REST Example: AFT in India with Visa
Request AFT in India with Visa
Example in India with Visa: Consumer funding an
account-to-account transfer when the sender and recipient are the same person.
{ "clientReferenceInformation": { "code": "RTS-AFT3-8" }, "processingInformation": { "capture": true, "businessApplicationId": "AA", "purposeOfPayment": "02", "commerceIndicator": "internet", "authorizationOptions": { "ignoreAvsResult": true, "ignoreCvResult": false, "aftIndicator": true } }, "paymentInformation": { "card": { "number": "453979100173XXXX", "expirationMonth": "03", "expirationYear": "2025", "type": "001", "securityCode": "351" } }, "orderInformation": { "amountDetails": { "totalAmount": "28.00", "currency": "GBP" }, "billTo": { "firstName": "Joe", "lastName": "Root", "middleName": "S", "address1": "34 Orchard Grove", "locality": "Southampton", "postalCode": "DE6 1BE", "country": "GB", "email": "test@cybs.com" } }, "senderInformation": { "account": { "number": "453979100173XXXX", "type": "03", "fundsSource": "01" }, "firstName": "Joe", "middleName": "S", "lastName": "Root", "address1": "34 Orchard Grove", "locality": "Southampton", "postalCode" : "SO14 7DR", "countryCode": "GB" }, "recipientInformation": { "accountType": "03", "firstName": "Ben", "middleName": "A", "lastName": "Stokes" } }
Response AFT in India with Visa
{ "_links" : { "void" : { "method" : "POST", "href" : "/pts/v2/payments/7345295876270181611471/voids" }, "self" : { "method" : "GET", "href" : "/pts/v2/payments/7345295876270181611471" } }, "clientReferenceInformation" : { "code" : "RTS-AFT3-8" }, "id" : "7345295876270181611471", "orderInformation" : { "amountDetails" : { "totalAmount" : "28.00", "authorizedAmount" : "28.00", "currency" : "GBP" } }, "paymentAccountInformation" : { "card" : { "type" : "001" } }, "paymentInformation" : { "tokenizedCard" : { "type" : "001" }, "card" : { "type" : "001" } }, "pointOfSaleInformation" : { "terminalId" : "28791234" }, "processorInformation" : { "merchantNumber" : "89888122", "approvalCode" : "28", "cardVerification" : { "resultCodeRaw" : "1", "resultCode" : "P" }, "cardReferenceData" : "12345678901234567890123456789012345678901234567890123456", "networkTransactionId" : "123456789012345", "transactionId" : "123456789012345", "responseCode" : "0", "avs" : { "code" : "U", "codeRaw" : "00" } }, "reconciliationId" : "RTS-AFT3-8", "status" : "AUTHORIZED", "submitTimeUtc" : "2024-12-18T13:46:27Z" }
Reference
This section provides helpful reference information for using Payouts services.
Business Application Identifier
The Business Application Identifier (BAI) identifies the category of the Account Funding
Transaction (AFT).
All acquirers, service providers, and merchants must submit a valid BAI value when
submitting an AFT.
Provide one of the values when you send field .
processingInformation.businessApplicationId
IMPORTANT
Ensure that your acquirer has a Merchant
Category Code (MCC) that corresponds with the BAI value you are using. For more
information, contact your acquirer.
BAI Value | Category | Requirements |
---|---|---|
AA | Account-to-Account Money transfer. This value is for funding the
cardholder's own account at the same or a different financial
institution. Both accounts must be owned by the same person or
entity. | NOTE
If funding a prepaid account, do not use this value. Use
TU instead. |
FD | Funds Disbursement | |
FT | Funds Transfer | If the funds will be used for a high-brand
risk transaction, the applicable high-brand risk MCC must be used. If a
wallet is used to purchase Liquid and Cryptocurrency assets, the
applicable special condition indicator must be used.
|
PD | Payroll Disbursement | |
PP | Person-to-Person (P2P) Money
Transfer | P2P Money transfer is started from an
online banking system, making it a bank-initiated transaction. This
category is only used when both AFTs and OCTs are supported. When only
AFT is supported, use the FT category. |
TU | Prepaid Card Load or Top-Up | |
WT | Staged Digital Wallet (SDW)
Transfer | If the funds will be used for a high-brand
risk transaction, the applicable high-brand risk MCC must be used. If
the funds are used for a gambling transaction, the applicable gambling
MCC must be used. If a wallet is used to purchase Liquid and
Cryptocurrency assets, the applicable special condition indicator must
be used. An AFT is not intended for debt repayment.
|
Recipient Account
The Sender Source field identifies the source of funds. Provide one of the values when
you send field .
recipientInformation.accountType
Value | Definition |
---|---|
00 | Other |
01 | RNT and Bank Account |
02 | IBAN |
03 | Card Account |
04 | Email |
05 | Phone Number |
06 | Bank account number (BAN) and Bank
Identification Code (BIC) |
07 | Wallet ID |
08 | Social Network ID |
Sender Source
The Sender Source field identifies the source of funds. Provide one of the values when
you send field .
senderInformation.account.fundsSource
All acquirers, service providers, and merchants are required to submit a valid sender
source value when submitting an AFT.
Value | Definition |
---|---|
01 | Credit card |
02 | Debit card |
03 | Prepaid card |
04 | Deposit account |
05 | Mobile money account |
06 | Cash |
07 | Other |
V5 | Debit or deposit access other than those linked to the
cardholders’ scheme |
V6 | Credit accounts other than those linked to the cardholder’s
scheme |