#Manish378
1 messages · Page 1 of 1 (latest)
I am using Payment Intent first then transfers
hi! is there a reason you're not using Destination charges instead?
Yes, I want to capture the patyment later
In charge API we don't have that facility I think
@slender estuary Destination charges does allow you to capture a PaymentIntent later. You shouldn't capture payments on your platform account as you inherit the fees in case of fraud or refunds 😉
For example customer booked a cab for 1st August, 2023
He entered his card details, I will create PaymentIntent with capture=false
That will create payment intent but won't charge customer card
When I confirm Payment intent on 1st Aug., card will be charged
This is what I want to achieve
Are you using Stripe Connect ?
Yes
May you share how to create a payment intent please ?
In that case, you should simply use transfer_data[destination] with the Connected Stripe account, and set capture_method to manual. Once captured, the transfer will take place.
I know that but as I mentioned earlier I am getting error in transfer API
You have insufficient funds in your Stripe account. One likely reason you have insufficient funds is that your funds are automatically being paid out; try enabling manual payouts by going to https://dashboard.stripe.com/account/payouts
Sign in to the Stripe Dashboard to manage business payments and operations in your account. Manage payments and refunds, respond to disputes and more.
This errir
*error
You are missing transfer_data[destination] & capture_method.
You shouldn't have to create a transfer yourself for this, as the payment isn't captured yet.
Destination is mandatory?
Yes, as you are using Connect, you should mark the payment as inherent to the connected account.
This way, Stripe will handle the transfer themselves once payment captured.
@slender estuary did you have a new question?
Yes
I followed what @gray glade suggested
But still facing same issue
You have insufficient funds in your Stripe account. One likely reason you have insufficient funds is that your funds are automatically being paid out; try enabling manual payouts by going to https://dashboard.stripe.com/account/payouts
Sign in to the Stripe Dashboard to manage business payments and operations in your account. Manage payments and refunds, respond to disputes and more.
This error
do you have a request ID req_xxx for that error? https://support.stripe.com/questions/finding-the-id-for-an-api-request
req_L1R8LFexJcu0Kv
why are you calling /v1/transfers?
I am using .net SDK
I know
why are you using TransferService though?
as described above, that is not what you would do. You would use "Destination Charges" by creating a PaymentIntent and setting TransferData, you would not create the Transfer directly yourself.
if you did that you wouldn't have this error
Can I pass multiple destination accounts in TransferData with different amount?
no
For example, I receive 100$ from user, that will be go in 3 different accounts
65 to 1st, 15 to 2nd, 5 to 3rd
This is what I am trying to achieve
ok then you would not use Destination Charges.
you would create separate Transfers yes.
if you do that then you need to understand how balances work in Stripe as it's a complicated integration requiring you to carefully track the funds in your platform account. Check the following:
https://stackoverflow.com/questions/55686949/why-i-am-getting-insufficient-funds-when-trying-stripe-transfers-even-though-i/55687932#55687932
and https://stripe.com/docs/connect/charges-transfers#transfer-availability
Is it possible to make negative balance and later in it can be reimburse
I don't really understand your question but no
like it says in the Stackoverflow answer
transfers via /v1/transfers can only succeed if you have sufficient available balance for the transfer amount
Ok what's your suggestion to overcome this error?