#speakofthedevo

1 messages · Page 1 of 1 (latest)

cinder dewBOT
signal ridge
#

Hi there

#

What type of Connected Accounts are you working with?

hollow pier
#

Express

signal ridge
#

Then you want to use Destination Charges here

#

You can decide whether to take an application fee or just transfer less than the full amount

#

But either way your Connected Account will just receive a payment for the amount that you transfer

#

Err woops

#

Linked the wrong docs 🤦‍♂️

#

Sorry about that

hollow pier
#

Not a problem, I was abit confused for a second haha

#

So, that is how I am currently doing it, so that is nice. Is there any need to use the application_fee_amount, or that is for different purposes?

signal ridge
#

It is mostly for Direct Charges, but you can use it with destination charges if you want it for reconciling the fees you have collectd more easily

hollow pier
#

If I use application_fee_amount, for my example above, would the paymentIntent look like this?
const paymentIntent = await stripe.paymentIntents.create({
amount: 1000,
currency: 'usd',
application_fee_amount: 50,
transfer_data: {
destination: '{{CONNECTED_STRIPE_ACCOUNT_ID}}',
},
});

and that would charge the user $10.50, transfer $10 to the connected account, and I keep 50 cents?

unreal moon
#

Hi @hollow pier I'm taking over

hollow pier
#

Sounds good

#

Did you see my question above?

unreal moon
#

Yes. I was catching up the previous conversation.

hollow pier
#

Not a problem, take your time

unreal moon
#

OK. So the 10.00 is the total amount that include the application_fee and the amount that the connected account receives. You might want to change the amount to 10.50 in this case.

#

This diagram illustrates the fund flow

hollow pier
#

Is there any point in including amount both in paymentIntent root object as well as transfer_data{amount:...}?

unreal moon
#

They are for two difference purposes

  1. By using application_fee, you are telling Stripe that the platform only keep the application_fee, and the rest will go to connected account
  2. By using transfer_data.amount, you are telling Stripe that transfer_data.amount will to go connected account, and platform would keep the rest.
hollow pier
#

Okay, my platform should only keep application_fee_amount, i.e. the 50 cents. So, the paymentIntent should be created like this then?

const paymentIntent = await stripe.paymentIntents.create({
amount: 1050,
currency: 'usd',
application_fee_amount: 50,
transfer_data: {
destination: '{{CONNECTED_STRIPE_ACCOUNT_ID}}',
},
});

unreal moon
#

Yes, it looks good to me. Note that platform pays the stripe_fee incurred in destination charges, so you might want to charge a larger application_fee to cover the stripe_fee

hollow pier
#

and stripe_fee is always 2.69% + 30 cents right?

#

Thank you for the help!

unreal moon
hollow pier
#

Can you clarify the variables in that equation for me?
Pcharge = the ending payment that the user pays
Pgoal = ?
Ffixed = 30 cents?
Fpercent = 0.0269?

unreal moon
#

I'm unable to help on the fee related question, please reach out to stripe support https://support.stripe.com/contact

hollow pier
#

thanks