#dan-burke-create-session
1 messages · Page 1 of 1 (latest)
Hi there
You are attempting to create Checkout Sessions on a Standard Connected Account, correct?
Yep!
Okay so you don't want to use the customer parameter here
Instead you want to be passing the Connect Account header: https://stripe.com/docs/connect/authentication
Ah I see, thank you
separately, it looks like I'm being forced to pass in a price. is there a way for the standard user initiating the checkout to choose a "price" ? (since they should be choosing how much to pay their contractor, venmo-style)
There remains some confusion here, I suspect: Stripe is, in general, a ONE-WAY payment processor - FROM "Customers who make payments via various methods" TO "Business Accounts that take payments" - either the Platform, or connected Accounts. Stripe generally does NOT make payments or transfers to "Customers", and generally does NOT transfer funds between Connected Accounts. It does not behave like a "banking system"
The specification of the account on a paymentIntent is the recipient, not the payor
So two main options here. First you can create Prices upon Session creation via price_data: https://stripe.com/docs/api/checkout/sessions/create#create_checkout_session-line_items-price_data
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
That still requires the customer to input their desired amount ahead of the redirect
i.e. NOT from one account (Standard) to another (express)
Second, you can use adjustable quantity (https://stripe.com/docs/api/checkout/sessions/create#create_checkout_session-line_items-adjustable_quantity) if you want the customer to adjust the quantity of the Product when actually in the Session
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
Thanks for jumping in @clever dock. @peak hazel I'm jumping between several threads at the moment so let me know if I can clariffy anything futher
@clever dock Thanks for these details. I VTCed with a Stripe Solutions architect about my company and they came up with the setup that I described in the previous thread where contractors (express accounts) get payments form companies (standard accounts). Is there an inherent problem here?
Ah okay I missed this context @peak hazel
So when you say they "get payments from Standard Accounts", do you mean that you expect funds to move directly from a Standard Account balance to an Express Account balance?
Because as @clever dock mentioned, that's not possible.
The Standard Accounts would have to just be normal Customers paying the Express accounts via a payment method.
Well through my understanding of Stripe Connect express the actual payment flow would be from Standard account -> the platform (me) -> Express account, but yes the end effect should be from Standard accounts -> Express account. this isn't possible?
The Standard account can't pay your platform directly, no. You could reverse a transfer to pull funds back to your platform. But Account Debits (the ability to charge your Connected Account directly) is currently only available for Express/Custom accounts: https://stripe.com/docs/connect/account-debits
So the proposed solution would be to have companies onboard as "customers" to each contractor's Express account?
Hi there 👋 I'm jumping in as my teammate needed to step away. Please bare with me a moment while I catch up on the context here.
Thank you!
Thank you for your patience. Yes, the party that is making the payment in your scenario (where the funds are coming from) will need to be a Customer.
I'll note here: the payor can be a customer for your platform account - you can still arrange for the payment to end up in the contractor Express Account in various ways.
I see, thank you. Could you elaborate a bit on the "various ways"?
i.e. what you were calling "client companies" Stripe would call "Customers" (entities to make payments), and the "Customers" are created at the time you set up payments. Those payments can be directed to Express Accounts (what Stripe generally calls "Users").
bit of a long discussion, that...
Is there a parallel to "Account Links" here that I can use so that users are redirected to a Stripe page to create their Customer accounts?
Mostly, it depends whether the payments are divided between multiple end-accounts (i.e. Connected Accounts), and which type of Connected Accounts you have...
No, Customers do not have Stripe accounts.
much simpler, really: just take the payment.
How can I have my Customers reuse the same payment information each time?
Customer Objects are created to track information/payment methods, but not an account as such
Save the paymentMethod for later re-use (again, a couple different ways), and present the saved paymentMethod(s) as options when taking a payment. With Checkout (Stripe-hosted), Stripe can keep track of a lot of that for you
Ok thank you, I think I'm seeing how this all fits together. Would you mind keeping this thread open while i do some poking around?
I'm assuming "they" will, and you can always come back to the channel to ask. I say "they", since I don't work for Stripe - just passing in the night, as it were
Glad to help fellow developers/businesspeople
Apologies for falling off of this thread for a bit. There are a couple approaches for saving Payment Methods so that they can be reused.
This guide walks through saving that information without making a payment:
https://stripe.com/docs/payments/save-and-reuse
And this one walks through the process of making a payment and saving the payment method simultaneously:
https://stripe.com/docs/payments/save-during-payment?platform=web