how can I transfer payout to users credit / debit cards?

Solved! Go to solution
taylormade
Helper

how can I transfer payout to users credit / debit cards?

In order to transfer USD from our company bank account to occasional winners, I assumed I would POST to PullFundsTransactions. However no attributes in the documented payload include complete credit/debit card info or a bank's routing number. Am I using the right API / method?

 

I do understand that I will need to become a licensed Visa Direct acquirer to use this service in production. I only recently discovered Visa Direct when searching for gateway solutions that allowed us to cash out awards to our users. 

 

In short, our app is a platform for public and private music groups. So a basic transaction scenario might be:
1. Joe subscribes to a Group for $1.99 / month and we draft monthly from his credit card and store the card.
2. Sara buys a 100 song playlist for $4.99. We charge her credit / debit / bank, only once and do not store the card.
3. Sara wins best contribution to that playlist and is awarded $100 back to the same payment method (this is what we hand in mind for this PullFundsTransactions method)

Are we using the correct API / method? If so, what is the payload structure for sending funds from our company bank account to a standard person's credit card or bank account in the USA?
14 REPLIES 14
API_Products
Visa Developer Support Specialist

Re: how can I transfer payout to users credit / debit cards?

Hey @taylormade,

 

Yes, Visa Direct API can be used for funds transfer from business to consumer. Also, if you'd like to offer cash back to your customers, I'd also suggest you to take a look at our Visa Offers Platform Rewards API here - https://developer.visa.com/capabilities/vop 

The Rewards API allows the integrated client to request Visa Offers Platform to issue statement credit to the enrolled card.

 

The Visa Direct APIs can be used in the sandbox by any developer. Using Visa Direct, to transfer payout to users' credit / debit cards, you will have to enable transaction processing and settlement through Visa between the sending and receiving financial institutions, all pull payments and push payments must include an Acquiring BIN. Test Acquiring BINs are provided as part of the sandbox test data.
 
In order to use the Visa Direct APIs in production, the Originator must either be a Visa client financial institution (issuer or acquirer), a third-party Originator that has been granted a Visa acquirer POS license (geographical restrictions apply), or a third-party Originator that has established an acquiring relationship for that purpose with a Visa client financial institution. 
 
To get into production, you will need an acquirer who can sponsor you by providing BIN for processing settlement of your transaction and PCI/DSS compliance when you are working with PAN data. Therefore, you will also need PCI/DSS Compliance.
 
For production, you should have an existing relationship with a bank of any financial institution (acquiring bank). We do not have any preference on the bank of any financial institution that you use. You will have to have a financial institution in with you for the settlement of transaction. Therefore, you need to contact a local financial institution of payment processing companies. Legal requirements are also dependent on local regulations. 

 

Getting into Production has two minimum requirements:

1. Relationship with a Visa Acquiring bank, which can sponsor your payments settlement by providing BIN
2. PCI/DSS Compliance

 

Visa Direct is for funds transfers. Visa Direct uses the push payment capability of Visa’s global payment system to enable new ways for clients and consumers to send money to over one billion eligible Visa accounts. Visa Direct can be used to create both consumer and business services including person-to-person money transfers and credit card payments, as well as, corporate and merchant disbursements. The services can be offered over any channel (including personal computers, mobile phones, local bank branches, or ATMs) and can be funded from many sources (including bank accounts or payment cards).

 

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) with a mechanism to push payments directly onto Visa cards. 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 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.

 

Your App will be pulling funds from one account/Visa card and pushing it to other account/Visa card so you will be the originator of transaction.

 

In order to enable transaction processing and settlement through Visa between the sending and receiving financial institutions, all pull payments and push payments must include an Acquiring BIN. Test Acquiring BINs are provided as part of the sandbox test data.

 

Therefore, the flow would be to pull funds from the sender and then push funds to the receiver.

For payload structure, please see the Visa Direct API Reference Code Explorer for request/response payload here - https://developer.visa.com/capabilities/visa_direct/reference 

 




Thanks,

Diana



Was your question answered? Don't forget to click on "Accept as Solution" to help other devs find the answer to the same question.

taylormade
Helper

Re: how can I transfer payout to users credit / debit cards?

Thank you Diana. I still need a few points of clarification:

 

1. I have reviewed the payload docs very thoroughly in the links above. There are no Attributes for a Bank's routing number or standard credit card number + expiration + cvv. So...

 

2. When you mention transferring to eligible "Visa Accounts" or "enrolled cards": does not include any credit / debit card with a "Visa" logo (from any Bank)? Or just those issued directly from this Visa Platform? Also what about cards with a MasterCard/Discover/AmeX logo, or just debit cards? Are all of those chargeable / transferrable through these APIs? If so, I do need a clear answer to #1 above.

API_Products
Visa Developer Support Specialist

Re: how can I transfer payout to users credit / debit cards?

Hey @taylormade,

 

I'll take a look and get back to you soon.

 




Thanks,

Diana



Was your question answered? Don't forget to click on "Accept as Solution" to help other devs find the answer to the same question.

API_Products
Visa Developer Support Specialist

Re: how can I transfer payout to users credit / debit cards?

Hey @taylormade,

 

Can you please let us know if you are already working with a Visa acquirer? Please note that you will need to have regulatory licenses, etc. for Visa Direct. 

 

Please take a look at the Visa Direct documentation using this link. https://developer.visa.com/capabilities/visa_direct/docs 

 

In particular, see the top few paragraphs, that are enclosed in the grey box with the exclamation mark, that discuss the requirements to use Visa Direct.

 

If you meet those requirements, navigate to the Visa Direct Program Implementation Questionnaire, fill it out, and submit to the email address listed on that form. 

 




Thanks,

Diana



Was your question answered? Don't forget to click on "Accept as Solution" to help other devs find the answer to the same question.

API_Products
Visa Developer Support Specialist

Re: how can I transfer payout to users credit / debit cards?

Hey @taylormade,

 

I'd like to follow up to see if you can please confirm if you are already working with a Visa acquirer?  

 




Thanks,

Diana



Was your question answered? Don't forget to click on "Accept as Solution" to help other devs find the answer to the same question.

taylormade
Helper

Re: how can I transfer payout to users credit / debit cards?

I am not yet. Can you briefly describe how to sign up with an acquirer? 

API_Products
Visa Developer Support Specialist

Re: how can I transfer payout to users credit / debit cards?

Hey @taylormade,

 

Acquirer means banks who can accept payments. You will need a sponsor (Acquirer bank), who can do settlement for you. You will have to develop a relationship with Visa acquirer banks, which will help you create an account to do settlement on behalf of your clients which have different bank’s issued cards. An acquiring bank (also known simply as an acquirer) is a bank or financial institution that processes credit or debit card payments on behalf of a merchant. The acquirer allows merchants to accept credit card payments from the card-issuing banks within an association.

 

When contacting a Visa licensed acquirer, make sure to tell them you're looking for a Visa Direct acquirer. That's because not all Visa licensed acquirers are enabled to sponsor Visa Direct programs.

 

 




Thanks,

Diana



Was your question answered? Don't forget to click on "Accept as Solution" to help other devs find the answer to the same question.

taylormade
Helper

Re: how can I transfer payout to users credit / debit cards?

DianeTran

 

1. Can you provide a list of any such acquiring banks. I've contact many and none have any idea what i'm talking about.

2. It seems from this post - https://community.developer.visa.com/t5/Use-Cases/Partnering-with-an-acquiring-bank-for-Visa-Direct/... - many people have the same issue.

 

 

API_Products
Visa Developer Support Specialist

Re: how can I transfer payout to users credit / debit cards?

Hey @taylormade,

 

If you're not able to find an acquirer, please refer to this page - https://usa.visa.com/run-your-business/visa-direct/find-a-partner.html

 
 




Thanks,

Diana



Was your question answered? Don't forget to click on "Accept as Solution" to help other devs find the answer to the same question.