#usama - Connect Separate Charges and Transfers
1 messages · Page 1 of 1 (latest)
hello rubeus
I am having issue in creating payout
here is the balance retrieve call
{
"object": "balance",
"available": [
{"amount":199943000,"currency":"gbp","source_types":{"card":199943000}}
],
"connect_reserved": [
{"amount":60785,"currency":"gbp"}
],
"livemode": false,
"pending": [
{"amount":91268,"currency":"gbp","source_types":{"card":91268}}
]
}
but when I try to create a payout I got this error
You have insufficient funds in your Stripe account for this transfer. Your card balance is too low. You can use the /v1/balance endpoint to view your Stripe balance (for more details, see stripe.com/docs/api#balance).)
Can you give me the request ID showing that error? Here's how you can find a request ID: https://support.stripe.com/questions/finding-the-id-for-an-api-request
(Request req_QrDkFA0rP2kEp5)
Thanks! Looking...
I am waiting for the guidance
To confirm, when you retrieved the balance, did you retrieve the balance of the connected account or your platform account?
Your platform account balance doesn't matter when trying to make a Payout on a connected account. You should retrieve the balance of the connected account and verify there's enough available balance there to cover the Payout.
You're trying to create a Payout on a connected account, so the connected account's balance needs to have enough available funds to cover the Payout.
The connected account has its own balance that's separate from your platform.
Your platform is attempting to create the Payout on the connected account, but the funds used for the Payout come from the connected account's balance.
So first I have to transfer funds to the connected account and then initiate the payout call?
Yep!
so now thing to consider or somewhat concerning is how long will the transfer take and how long the payout will take to process?
you still here?
The timing depends on multiple factors. You can read more here: https://stripe.com/docs/connect/manage-payout-schedule
isn't there a more generic way to do so?
What do you mean?
like being a platform I was the one creating payouts to the connected accounts and I want those connected accounts to receive the payment in their bank accounts
now after talking to you it means that I have to run two API calls to do so.
which can also take more than 10 days to process
If the connected accounts are set to manual Payouts, yes. If the connected accounts are using automatic Payouts, the Payouts will be generated automatically.
At a high level can you tell me what you're trying to build so I can give you recommendations for what will work best?
Sure
Think of it as a ecommerce platform where multiple people(sellers) sign up and sell their goods
being a platform I am the one taking commission on every product they sell.
Now all the seller have the feasibility to set the time after how many days of order placement they want their payout. and that can be dynamic.
now when the date comes like if a seller had an order on 1st Jan and he sets his payout recieving day as 14 days after order than when it is 15 Jan I want to give seller the amount of his share
and the amount should be transferred in the bank account attached.
For Payout timing you can adjust the Payout settings on each individual connected account: https://stripe.com/docs/api/accounts/update#update_account-settings-payouts-schedule
As for the funds coming in, am I correct to assume that a single order can contain goods from multiple sellers?
yup
So for that part you should use separate charges and transfers: https://stripe.com/docs/connect/charges-transfers
Like charge once and then transfer then accordingly
Yep! So the timeline would be:
- A customer places an order containing Item A from Seller A for $20 and Item B from Seller B for $10
- Let's assume you as the platform charge $1 per item to keep things simple. You would create a $19 Transfer for Seller A's connected account and a $9 Transfer to Seller B's account.
- That money will be sent to those accounts and land in their pending balances.
- Later, the funds will become available.
- After that a Payout will automatically be created according to their Payout settings (for automatic Payouts) or you can create Payouts for them manually if you want (manual Payouts).
That's typically how it works, but you have the flexibility to delay it if you wish. You may want to create the Transfer only after the item is shipped, for example.
that is case I was thinking for refunds
and now if i delayed the transfer that delays the payout as well right?
Yep.
now the usecase is something like this:
there are two order Order 1 and Order 2.
Order 1 has two product P1 of seller1 and P2 of seller2. similarly for Order 2.
transfer of Order 1 is done on 1st Jan and transfer for Order 2 was done 3 Jan.
We have set the transfer schedule to 5 days . Now when will both the sellers be having their payout in their bank accounts
?
There will be two different Payouts, one 5 days after the first Transfer, one 5 days after the second one.
Ok. that makes sense