The Visa Direct APIs can be used in the sandbox by any developer. In order to enable transaction processing and settlement through Visa between the sending and receiving financial institutions, all pull and push payments must include an Acquiring BIN. Test Acquiring BINs are provided as part of the sandbox test data. However, in order to use the Visa Direct APIs in production, the Originator must either be a licensed Visa acquirer, or a third party Originator that is being sponsored by a licensed Visa acquirer for a Visa Direct program.
As noted above, there is more to offering a push payment service on the Visa Direct platform than just establishing a relationship with an acquirer. Prior to receiving an approval from Visa to move a project into production, developers will be required to validate their ability to meet all of the requirements of a full push payments processing service – not just be able to successfully process the Visa Direct Funds Transfer API.
The following table outlines examples of consumer and business services that can be built using the PushFunds operations of the Visa Direct APIs and highlights the accounts that can receive push payments. Coming soon in the U.S., Originators will also be able to use the Funds Transfer API to push funds to select other network-branded cards. Please contact firstname.lastname@example.org for further information or to request that Visa review and approve other use cases you may envision for push payments.
|Destination Visa Account Types||Geographic Scope|
|Push Payment Services||Visa Credit||Visa Debit||Visa Prepaid||Domestic||Cross-Border|
|P2P Money Transfer||✓||✓||✓||✓||✓|
|Credit Card Bill Payment||✓||✓|
The Funds Transfer API enables pull and push payments from and to most Visa cards; however, there may be geographical or use case-based restrictions in some countries. For example:
Please contact email@example.com or your Visa account representative to check on the availability of push payments in specific geographies.
The sandbox currently does not have Visa network connectivity, so validating the receipt of a pull funds, push funds, or reverse funds transfer by an issuer cannot occur in the sandbox.
All Visa Direct projects will go through a review and approval process at Visa. As noted above, the ability to provide all components of a comprehensive push payment service, not just successful testing of the Funds Transfer API, will be assessed to determine approval to move a project into production. Please reach out to your Visa account representative, or complete the Visa Direct Program Implementation Questionnaire early in the process to ensure that your project meets the criteria permitted for a Visa Direct program.
Contact your Visa licensed acquirer or Visa representative if you would like to obtain a copy of the Visa Direct Original Credit Transaction (OCT) - Global Implementation Guide.
The following table lists the regional availability for Visa Direct. To view availability of all products, refer to the Availability Matrix.
Available in entire region
Limited availability in region
Visa Direct offers real-time push payment capabilities that utilize Visa’s global payment system, one of the world’s largest electronic payments network. Through their participating financial institutions, businesses and consumers can use the Visa network to send money to over one billion eligible Visa card accounts.
Visa Direct also offers the capability to push payments to other U.S. debit networks using the Visa Push Payments Gateway Service (PPGS) and the Funds Transfer APIs. PPGS allows originators to send their PushFundsTransactions (OCTs) and PullFundsTransactions (AFTs) to Visa for routing to multiple U.S. debit networks. The service provides authorization, clearing, settlement, reporting and exception processing support for debit networks. Visa translates and reformats the message into the correct network format, rather than an originator having to develop and maintain transaction formats for each debit network.
Note: Real-time payment - Actual funds availability varies by financial institution. Visa requires some issuers in some countries to make funds available to its cardholders within a maximum of 30 minutes of approving the transaction. For country level information, please contact your Visa representative.
Visa Direct provides Originators (financial institutions and eligible third parties such as person-to-person payment service providers, merchants, corporations, and other payment service providers) with a way to connect to Visa, get access to information, and push payments directly onto Visa cards. A push payment is a financial transaction that adds funds to (in the form of a credit) a designated Visa account. As an Originator, the Visa Direct APIs provide you with a means to initiate a push payment from within your own web, mobile, ATM, corporate systems, or branch platforms. Push payments enable many consumer- and business-facing applications, including person-to-person money transfers as well as corporate, government and merchant disbursements. The best way to get started with Visa Direct is to understand how it works and the role that the Visa Direct APIs play in enabling Originators to move funds between Visa accounts.
Visa Direct contains three distinct APIs that you can use to create services that incorporate push payments. Each of these APIs is described in more detail in the following sections.
Visa Direct provides Originators (financial institutions and eligible third parties such as person-to-person payment service providers, merchants, corporations, financial technology companies and service providers, through their applicable financial institutions) with a mechanism to push payments directly into Visa card accounts. This push payment capability is delivered through the use of the Original Credit Transaction (OCT), a Visa network transaction that enables eligible Visa cards to receive push payment credits. Visa Direct Originators can submit OCTs either as ISO-formatted messages through a Visa network endpoint connection or directly into the Visa network as an API call using the Funds Transfer APIs. Originators can use this transaction and the underlying framework of rules and controls to create new consumer and business-facing services.
An OCT can be funded through a variety of sources; for example, any network payment account or a bank account. In addition to the OCT, Visa Direct also supports the Account Funding Transaction (AFT), a Visa network transaction that enables funds to be pulled from an eligible Visa account. As with the OCT, Visa Direct Originators can submit AFT transactions as either an ISO message or directly through an API call to the Funds Transfer APIs.
Originators can use the Funds Transfer APIs (or the ISO transaction) to pull funds (the AFT) from a Visa card account and to push funds (the OCT) into a Visa card account. AFTs can only be used to fund other non-merchant accounts. Once an AFT or OCT transaction is submitted into Visa (via API or ISO message), it travels across the Visa network and uses existing clearing and settlement mechanisms to manage the movement of funds between the sending and receiving issuers.
Visa Direct can help your business develop fast, convenient, innovative and secure payment experiences. Use Visa’s familiar and reliable global network and distribution systems to create an entirely new class of services using the Visa Direct push payment capability. Some of the opportunities include:
The Funds Transfer API pulls funds from a sender’s Visa account (usually to fund a push payment to a recipient’s account) by initiating an Account Funding Transaction. It can then be followed by a push payment to a recipient’s Visa account that initiates an Original Credit Transaction. Push payment is a standalone capability and can be used either in conjunction with a pull payment (if the source of funds is a Visa card) or independently (if the source of funds is not a Visa card). Should a push payment be declined, the Funds Transfer API can also be used to return the funds to the sender’s funding source.
Watch List Screening
The Watch List Screening API provides a score that evaluates how closely an individual's name, city, and country match to entries in the OFAC SDN watch list. It also provides a status value that indicates if Visa would likely decline a cross-border transaction involving this individual.
Mobile Push Payment API
The Mobile Push Payment API has been optimized to push payments for mobile-to-mobile card-less merchant payments as well as for cash in or cash out to a Visa card. This capability is currently available only in select markets. Please contact your Visa representative for more information.
The Alias APIs enable push payments using a commonly known identifier such as mobile number and email address instead of sensitive data of PAN to a Visa account. These allow client to resolve an alias to a PAN for push payment transaction, and support alias lifecycle management of consumers and merchants. This capability is currently available only in select markets. Please contact your Visa representative for more information.
The Reports API provides reporting capabilities such as transaction reconciliation data in the API response. The data needed for reconciliation includes both push (OCT) and pull (AFT) transaction details and any exceptions such as chargebacks and reversals. This data is provided to allow you to reconcile the transactions sent by your systems with what was processed through Visa and may be used solely for such purposes.
The Query API allows service providers to query in real-time the processing status of Visa Direct (Account Funding and Original Credit) transactions as well as other related transactions that are part of the Visa Direct suite of transactions (Reversals, Adjustments, Chargebacks and Re-presentments).
The Transaction Query feature checks the state of a PullFunds (Account Funding), PushFunds (Original Credit), ReverseFunds (Account Funding Reversal), and Mobile Push Payment (Original Credit) transactions and returns the results; transaction successfully or erroneously received and processed by Visa and/or the financial institutions. Service providers can invoke the Query API when there is no response returned from Visa or when response is returned with errors (e.g. 500, 400, 404, etc.). Addditionally, it allows service providers to query history of transactions and return the entire transaction set related to the original Visa Direct transaction. A transaction set will include approved and settled original Visa Direct transactions, reversals, chargebacks, adjustments, and re-presentments.
The Refund API can be used to process a merchandise return (refund) transaction to a Visa card. The refund transaction is typically associated with a previous merchant payment. The refund can be for the entire amount of a previous transaction or portions of it. The primary data required for processing of a refund transaction is consumer PAN, amount of refund and data associated with original payment transaction.
Visa also supports Merchandise Return Reversal API, which is used to reverse a refund that was processed previously. This API results in funds being returned to the merchant’s account. Return reversal API is only valid if the transaction is sent within the same day.
Receive Side API
To facilitate the implementation of mobile push payments, Visa provides push payment Receive Side API. Clients or their processors can use this API to receive merchant payment, cash-in and cash-out transactions. Clients or their processors have to implement a set of outbound RESTful APIs (Receive Side APIs) so that Visa can call these APIs to request clients to process the transactions over the Internet. Clients have the option of implementing these APIs with JSON to receive enhanced OCT messages through a secure internet connection. It is important to understand that some of the sensitive information (e.g. PAN, consumer name) are encrypted by Visa in the outgoing message from Visa to the client, and these fields have to be decrypted by the client. More details can be found here.
Adjustment API allows API originators to return (credit) funds to the sender’s account that are debited using an Account Funding Transaction (AFT). This change applies in scenarios where the recipient does not claim these funds as a result of which they expire.