How to charge a customer and direct funds to another account - stripe-payments

I am currently only seeing a way to charge customers to yourself based on https://stripe.com/docs/api/charges/object
. Is there any way to set the destination to another stripe account? Basically, charge a customer whos funds then go directly to another account? The platform is acting as a facilitator and is not intended to take control of the funds during this process, but instead simply move them from one custoemr to another.

This is what Stripe Connect is for: https://stripe.com/docs/connect/

Related

How to change destination of paymentintent in Stripe?

I run a marketplace, where customers pay and reserve for a specialised service.
We use Stripe with Stripe Connect to handle payments.
In my business, we don't know who is going to do the job when the customer pay and it can even change several times. I tried to update the paymentIntent with no success, and the API documentation is not clear about the possibility.
Is it possible to change the destination of an existing paymentIntent ? And more precisely how?
Two options :
You could use Separate Charge and Transfers (SCT) where you charge the customer first and then transfer the funds to the service provider later. [0]
You could also use auth and capture [1] where you "reserve" the funds first with no destination (i.e. a charge on your platform). Once you know who the service provider is, you can cancel the charge, and then immediately create another charge and capture it with the correct destination.
[0]https://stripe.com/docs/connect/charges-transfers
[1]https://stripe.com/docs/payments/capture-later

Stripe Connect - How to transfer money from multiple account to one destination

I know how to transfer money from one account to another one but I need recommendation regarding the following scheme
Need to send 100$ to destination customer
90$ from client
10$ from platform
Is it possible?

Stripe - How to get purchaser's information for a charge with Connect (Express)?

I've set up a test charge using stripe.Charge.create() and it is working, i.e. I can see the dollar amounts processed in the Connect test dashboard. It appears to be money going from the tok_visa to a dummy Stripe account I set up.
charge = stripe.Charge.create(
amount=1000,
currency="usd",
source="tok_visa",
application_fee_amount=123,
transfer_data={
"destination": "{{CONNECTED_STRIPE_ACCOUNT_ID}}",
}
)
For a marketplace type platform, I need to be able to send funds from the purchasing user to the selling user, however.
Would I need to get the purchaser's account (or some other object?) to use as the "source" in the charge?
How do I get that to put it into the "source" field?
I feel a little lost in Stripe's docs, so I could be missing something. Thank you for any tips.
I need to be able to send funds from the purchasing user to the
selling user, however
If by 'purchasing user' you mean a cardholder customer of your marketplace, this is exactly what you have. tok_visa here represents a credit card, that you accept through a payment page.
If instead you mean, the purchasing user is another connected account in the marketplace, you can either :
use an account debit to debit one account, and then transfer to
another.
collect a card from users when they sign up and create a
Customer object for them. You can then charge that customer as needed
like in your example code. You need to maintain a link in your system that
'customer cus_xxx is also my marketplace user acct_xxx'

stripe bank to bank direct transfers

OK, I am a little confused on the best way to setup Stripe for customer to customer direct bank transfer. Here's what I want to do.
I am building a rental platform where a tenant and landlord can enter their bank information (routing and account) and then on a monthly basis transfer money from the tenant to pay the landlord directly (ie, bank to bank transfer) for that months rent.
I think Stripe Connected account makes the most sense to make this happen. But I guess I am not fully understanding the flow, even after reading the docs. Any insight will be greatly appreciated.
You need to use Stripe Connect to accept payments on behalf of others. In your scenario, you'd create customers for the tenants and connected accounts for the landlords, then create charges to move funds from a tenant to a landlord, with your platform optionally taking a cut out of the transaction.
Since you want the tenant to pay via bank transfer, you'd need to use ACH rather than cards.

User to user payment on stripe

My requirement is, from my application I want my user to transfer the amount to another user of my application. Assume that both user have stripe account. I have gone through stripe docs, and I understood that in order to do transfer from one user account to another I need to use stripe connect. I could able to do authentication and I'm getting access token successfully for the sender. How can I make a transfer to a recipient ? I have only recipient's email id with me. Should I need to create a recipient through code and do the transfer using that recipient id returns from stripe ?
Im using php. Please help me.
Stripe Connect doesn't work like that. Instead, Connect allows an application to make card charges on behalf of a user and take a portion of the amount. The rest is automatically and immediately put into the user's Stripe account, where it's subject to the normal bank account transfer rules (2-7 day rolling transfers or API-driven manual transfers).
Another way to do this is using Stripe Recipients and Transfers. For example, your application charges a customer $10. You create a Recipient for your user using their bank account information (account number and routing number). Then, you can create a Transfer from your Stripe account to their bank account. Note that this only works for US bank accounts as of today.
If you really want to do user to user transfers, unfortunately Stripe isn't the platform for you. You could use PayPal or you could possibly use Balanced Payments, although again you can only transfer money to and from US bank accounts.

Resources