#giogio_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/1217119778473377935
๐ Have more to share? Add more details, code, screenshots, videos, etc. below.
Below are links to other discussions we've had with you in the past week in case you want to review that information. If your question is related to one of these previous discussions, please provide a comprehensive summary of the current state and what you need help with now. We help many users simultaneously, so a summary allows us to resolve your issue as soon as possible.
- giogio_best-practices, 1 day ago, 11 messages
- giogio_applepay-setup, 1 day ago, 14 messages
- giogio_api, 1 day ago, 17 messages
- gioisherenow_best-practices, 5 days ago, 8 messages
- gioisherenow_best-practices, 6 days ago, 7 messages
Hi ๐ based on the wording in the error message, it sounds like you might be trying to add an Application Fee to a Payment Intent that isn't being created using one of our Connect charge patterns.
Are you setting either the stripeAccount header or transfer_data.destination parameter when creating the intent?
No, this is how it looks now
var options = new PaymentIntentCreateOptions
{
Amount = amount,
Currency = "eur",
Customer = customerId,
PaymentMethod = paymentMethod.Id,
ReturnUrl = "https://example.com/order/123/complete",
Confirm = true,
OffSession = true,
ApplicationFeeAmount = 100 + (int)Math.Round(amount * 0.015) //our fee
};
in which scenario should I use stripeAccount/destination?
Yeah, getting an error is expected then. You can't charge an Application Fee for your own payments, they're only applicable when creating Payment Intents using one of our Connect patterns.
Which header/parameter you should use depends on the type of Connected Accounts you're using
https://docs.stripe.com/connect/accounts
and the charge pattern you're building for
https://docs.stripe.com/connect/charges#types
In my scenario, where I need to redistribute the payment to several other express accounts (and keep a fee), would I be able to collect the fee through the parameter? It looks that the Application fee only works for direct payments (that go straight to a single connected account)
in my case it's not essential to use the parameter, just more convenient to have it nicely stored in stripe directly
No, you would not use an Application Fee there, because you will need to use the Separate Charges and Transfers pattern to split funds from a single payment across multiple Connected Accounts. With that pattern, any funds not sent to Connected Accounts are kept by your Platform:
https://docs.stripe.com/connect/separate-charges-and-transfers#collecting-fees
Understood, thanks