Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Direct Charges on Tap to Pay on a Connected account is not possible #819

Open
fq-infaque opened this issue Sep 21, 2024 · 1 comment
Open

Comments

@fq-infaque
Copy link

Is your feature request related to a problem? Please describe.

I’m frustrated when using the Stripe Terminal React Native SDK for Tap to Pay, especially when working with connected accounts. In an external terminal flow, I can easily pass the connected account ID and let Stripe handle direct charges on behalf of the connected account. However, with Tap to Pay, I am restricted to only using the payment intents created on the device through the SDK, which means I cannot retrieve and process server-generated payment intents for connected accounts. This limitation forces the platform to absorb the payment processing fees, rather than the connected accounts, which is not ideal for marketplaces and platforms that rely on connected accounts covering their own fees.

Describe the solution you’d like

I would like the Stripe Terminal React Native SDK for Tap to Pay to function similarly to how it works in the external terminal flow, where I can pass a connected account ID and use a payment intent created server-side. Specifically, I should be able to retrieve and use a payment intent generated on the server and pass it to the Tap to Pay terminal for processing. This would allow me to seamlessly charge connected accounts and have them cover their own payment processing fees, using parameters like on_behalf_of and application_fee_amount, without being forced to create a new payment intent locally on the device.

Describe alternatives you’ve considered

One alternative is to create the payment intent directly on the device, but this limits the flexibility of the solution and does not allow connected accounts to pay their own fees. Another alternative is to create the payment intent on the server and attempt to retrieve it on the device, but this currently does not work in the Stripe Terminal React Native SDK for Tap to Pay, as the SDK does not support processing server-generated intents.

Additional context

In scenarios where connected accounts should pay for their own payment processing fees, the current restriction of having to create the payment intent on the device for Tap to Pay causes significant limitations. Implementing the ability to retrieve and process server-generated payment intents in the Stripe Terminal React Native SDK for Tap to Pay, just as is possible in external terminal setups, would significantly streamline the process for developers and allow for smoother integration with marketplaces and platforms that use connected accounts.

This version further clarifies the distinction between external terminal flows and Tap to Pay, highlighting the current limitation and the need for the ability to retrieve server-generated payment intents for connected accounts in the Tap to Pay flow.

@ThaNico
Copy link

ThaNico commented Oct 14, 2024

In stripe-react-native, in the StripeProvider there's a stripeAccountId prop
Would be nice to have it here in the StripeTerminalProvider no ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants