#a-boy-named-oliver_unexpected

1 messages ยท Page 1 of 1 (latest)

fringe elmBOT
#

๐Ÿ‘‹ 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/1225118645475086518

๐Ÿ“ Have more to share? Add more details, code, screenshots, videos, etc. below.

lethal glenBOT
#

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.

vale basin
#

Hello! What specific approach are you using? Are you using Connect Onboarding or do you have your own custom flow?

#

You there?

livid river
#

Hey, I've been in meetings since I posted the message. I've been doing bank account linking through API, not hosted onboarding. And yes, I followed that approach almost exactly, except that I also added an inbound flow direction since I'm a Treasury client and also use this for inbound/outbound transfers

#

Here's my code specifically:

await stripe.setupIntents.create(
{
attach_to_self: true,
confirm: true,
flow_directions: ['inbound', 'outbound'],
payment_method_types: ['us_bank_account'],
payment_method_data: {
type: 'us_bank_account',
us_bank_account: {
financial_connections_account: financialConnectionAccount.id,
},
billing_details: {
name: org_name,
},
},
mandate_data: {
customer_acceptance: {
type: 'online',
online: {
ip_address: ip,
user_agent: userAgent,
},
},
},
},
{
stripeAccount: data.id,
},
)

vale basin
#

Does your request to create the Token succeed as expected? And the update to the Account to attach the Token as the external_account?

livid river
#

Yes everything works as expected. I can even create transfers, it's just that the payout status is still disabled

vale basin
#

Can you give me the ID of an account where you've done this and payouts are still disabled?

livid river
#

Sure, it's in test mode if that's helpful: acct_1Or8FqGaFmJTQZCK

vale basin
#

Thanks, looking...

livid river
#

Ah I see. I'm not actually calling those two APIs. My mistake, thanks for the pointer!

vale basin
#

Ah, yeah, that'll do it. Once you implement those you should be good to go.

lethal glenBOT
livid river
#

Now I'm having an issue creating a bank token. The docs say the following:

If the Payment Method is not attached to a Customer object, it will be consumed and cannot be used again. You may not use Payment Methods which were created by a Setup Intent with attach_to_self=true.
(source: https://docs.stripe.com/api/tokens/create_bank_account#create_bank_account_token-bank_account-payment_method)

When I try to create the bank token using a payment method that I've created for the connected account, I get the following error:

"message": "No such PaymentMethod: <payment_method_id>",
"param": "bank_account[payment_method]",

But I've verified that this payment method exists (calling the get payment method API)

vale basin
livid river
#

Yup, here it is: req_ijh5se8IOzKejg

vale basin
#

Yeah, you need to specify a Customer when you create the Setup Intent.

#

Otherwise you can't use this Payment Method more than once.

#

That error isn't super clear, making a note internally to improve that one. ๐Ÿ˜…

livid river
#

Hmm but the docs said that in order to do inbound/outbound transfers with this payment method I would need to attach it to the current stripe account.

vale basin
#

Yeah, you need to attach it to both.

#

You need to associate the Setup Intent with a Customer, and then you need to create a Token from it that you then attach to the connected Account.

livid river
#

Oh interesting... seems weird that I need to create a customer representing the the owner of the account

vale basin
#

The second paragraph there explains the Customer part in more detail as well.

livid river
#

Got it, thank you! Is there any way to associate Customer objects and resources like Payment Methods between a Custom Connected Account and the Platform Account? That way I can use the same external bank account for Subscriptions and bank transfers

eternal spoke
#

๐Ÿ‘‹ hopping in here since rubeus has to head out

#

You're asking if there's a way to tie a Customer object on the platform to the external bank account on the connected account?

livid river
#

Yup exactly

#

Without having to reauthenticate or anything

eternal spoke
#

You're welcome to tie them together in your own databases, but there's nothing on Stripe's end that would automatically tie them together

livid river
#

I'm fine doing that, it's just that means I have to have my users verify the same bank account twice through Financial Connections which is a poor experience for my users.

eternal spoke
#

I don't think you'd have to verify it twice? The verification would happen when the Setup Intent is confirmed - it shouldn't reverify when you create the token / attach it as the external bank account