#sw-solution_best-practices
1 messages · Page 1 of 1 (latest)
👋 Welcome to your new thread!
⏲️ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.
⏱️ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.
🔗 This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1334176847616806912
📝 Have more to share? Add more details, code, screenshots, videos, etc. below.
Hello @dusty crest
Hi there 👋 you can't.
You can only use Transfers to move funds from your Platform account's balance to your Connected Accounts.
Yeah, I know it.
So I am trying to move funds from connected account to platform account first. and then, move it from platform account to another connected account
But when I transfer funds from first connected account to platform, it goes to held in reserve balance
What are you trying to build? I want to make sure you aren't trying to build a money transmission service, as my understanding is those aren't supported and I don't want you to invest the time building your integration if we won't permit it to operate.
https://stripe.com/legal/restricted-businesses#:~:text=Peer-to-peer money transmission
So I am building credit system in our website
In our website, each users(tenant) can setup a financial account(stripe connect).
They can purchase credits and use it for other user's service
So they're paying you, the Platform, for credits to goods/services provided by other Connected Accounts?
I collect only some fees.
All payment should go directly to service provider.
But I am going to make it possible by using our credit system.
not directly payment.
So each users can buy credits, hold, and spend it for other user's service.
How do you think?
You should onboard your users as both Connected Accounts and Customers in your Platform Account then. When they buy credits from your Platform, you'll use the Customer object you create, and the payment method details you collect for payments, to process those payments. Then you will Transfer funds to the Connected Accounts (or use Direct Charges if that's a better fit for your flow) when you need to send funds to your users.
So I want to put credit balance in each connected account. not in platform balance.
and then, transfer it between connected account..
No, that's not the right approach.
If you want funds to flow into your ecosystem, you'll want to create Customer objects and process payments for them.
But if I pre-purchase some credits or receive some payment from other users, it will need to debit in my connected account.
and use the balance for other user's service.
How can I build this logic?
I don't fully understand what you're asking.
When the credits are purchased, you'll process a payment to get funds from the user buying the credits.
The funds from that payment will either go directly to your Connected Account if you use Direct Charges:
https://docs.stripe.com/connect/direct-charges
or it will go to your Platform account and then a portion (or all) is transferred to your Connected Account if you use Destination Charges:
https://docs.stripe.com/connect/destination-charges
Yes, now if I purchase credits, the amount goes to my connected account.
But I am not sure how can I use the balance to pay for other user's service.
I thought I can transfer it to other connected account.
Any solution for this?
Let's take a step back. What is the funds flow you're envisioning here? When a user purchases credits, where do the funds go? When do those funds get sent to the other user who is providing the goods/service?
You wouldn't process a payment for a user and then send those funds to their Connected Account.
So when I purchase credits, it goes to my connected account.
This works for all users.
and each users can share their services each other.
So I need to use my credit balance to pay for other service
Just I dont want to hold all this credit balance in platform account b/c the amount is not mine.
Make a sense?
So when I purchase credits, it goes to my connected account.
It goes to which Connected Account?
Do you know which user the credits will be used to purchase things from when they're initially purchased?
No.
Tthen I think those funds residing in your Platform makes the most sense. You can't send the funds to the right Connected Account if you don't know where to send them at the time of purchase.
A Separate Charges & Transfers flow is probably better given that context:
https://docs.stripe.com/connect/separate-charges-and-transfers
I was put all credit amount in platform account but I cannot detect how much is mine(collected fees & subscriptions) and how much is credit amount.
So I am going to put all credit amount in each Connected Account.
Then you're going to run into problems getting it back out of those accounts.
What do you mean?
I mean if you keep doing things the way you're doing, rather than as I suggest, you're going to keep running into the limitation that caused you to come here to ask for advice in the first place.
You can't easily pull funds out of a Connected Account's balance. You might be able to do so using this approach:
https://docs.stripe.com/connect/account-debits#charging-a-connected-account
assuming you're scenario matches the requirements for that option:
https://docs.stripe.com/connect/account-debits#requirements
Depending on the timeline of your purchase/redemptions, you will also likely need to switch all your Connected Accounts to Manual Payouts, to avoid their balance from getting automatically paid back out to them:
https://docs.stripe.com/connect/manual-payouts
Yes, I am creating all connected account with manual payout option. and customers cannot access to connect account.
They just use our credit system on our website
I followed the first link to transfer funds from Connected account's balance to platform.
Just it goes in held in reserve balance
Do you have examples? Can you share the request ID of the request you made to do so?
Do you mean code example?
No, I mean the ID of the request that you made to our API to do that.
https://support.stripe.com/questions/finding-the-id-for-an-api-request
Hmm.. I cannot find transfer transactions in sender Connected account
But I transferred the minus balance to platform and it is in held in reserve balance of platform account now
How do you think?
Seems to me like your Connected Account didn't have the funds to cover that debit, so Connect Reserves kicked in, as indicated in the doc that I shared previously:
Debiting an account can’t make the connected account balance become negative unless you have reserves enabled (on by default for all new platforms created after January 31, 2017) and have a bank account in the same currency as the debit.
https://docs.stripe.com/connect/account-balances#understanding-connected-reserve-balances
https://docs.stripe.com/connect/account-debits#requirements:~:text=Debiting an account can’t make the connected account balance become negative unless you have reserves enabled (on by default for all new platforms created after January 31%2C 2017) and have a bank account in the same currency as the debit
I don't see any balance.available Events for that Connected Account, so it doesn't look like they accrued a balance for you to debit. So the Transfer put them negative, and Connect Reserves put a hold on your Platform account to cover that.
Ahh, so only available balance can be transferred to platform balance directly?
Ok, I understand what happens now
Yes, Transfers move funds from the available balance.