#emak_connect-crossborder

1 messages ยท Page 1 of 1 (latest)

lunar compassBOT
#

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

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

tranquil pebble
#

Hi there

pale tide
#

Hey @tranquil pebble ! Can I ask you to be a bit more descriptive in your question? The problem is it could mean a lot of different things

tranquil pebble
#

Sure, please do. I'am hoping to find out more too haha

#

Alright so we have a setup where we want users to get a partial payment for subscriptions. Kinda like a referral. For that, we used Stripe Connect and it has been working great for US based users

#

Today we got our first user who wants to get paid in the United Kingdom, at first they couldn't select United Kingdom as a option as a country. But since I activated the countries the person was able to continue.

However, when they try they get this error:

#

I deleted the account and then tried to set the tos_acceptance to recipient which I think is what I saw in the documentation.

pale tide
#

Gotcha. Do you understand what recipient means and all the parts that go into deciding to use that approach? This is quite crucial

#

emak_connect-crossborder

tranquil pebble
#

not 100% -- could you provide me details on where I can find out the details that would guide that decision

pale tide
#

It's complex so it depends a lot on what you are trying to do.

What flow of funds are you using? Are you collecting all payments yourself and then later sending funds to the relevant connected account(s)? That's what we call Separate Charges and Transfers (https://stripe.com/docs/connect/charges-transfers).

tranquil pebble
#

We are collecting funds from subscriptions of our customers and using the destination charges to send a % of that to these refers

pale tide
#

Gotcha

#

Did you see the crucial text

Destination charges are only supported if both your platform and the connected account are in the same country. For cross-region support, you must specify the settlement merchant to the connected account using the on_behalf_of parameter on the Payment Intent or other valid cross-border transfers scenarios.

#

This would be your fix and solve part of your issues (but I need to explain more)

tranquil pebble
#

Ahh I missed that, okay so our implementation would need to change I spose

#

Adding on_behalf_of in the payment intent would be a fix, but what problems else would I have to think about?

pale tide
#

The second requirement is that you need to ask the right capability for the connected account. To be the merchant of record they have to have the card_payments Capability enabled. This comes with higher requirements for information collected from them for example.
I assume you were only using transfers until now in the US?

tranquil pebble
#

What type of information collection?

#

Yeh we were only using the destination charges which I guess under the hood is transfers

pale tide
#

yeah the problem is that what you use and what you enabled are different things and it depends how much you understood at the time
A lot of what we do on this server is ask users what they do and realize they often don't really know or remember ๐Ÿ˜…

#

Connect is fairly easy to use but there are some fundamental decisions to make upfront that influence all you can do in the future and we don't really make it super clear to most people ๐Ÿ˜ฆ

tranquil pebble
#

Sorry do you mean there is an alternative to setting the terms of service as recipient

pale tide
#

no, I mean the alternative to what I was saying earlier with on_behalf_of and additional requirements is to use Cross Border Payouts which is the recipient thingy you were trying
Both approaches work, they just depend on your business model, your goals, how your company does verification of identity around the world, etc.

tranquil pebble
#

Hmm I tried to set recipient and ran into this error:

irb(main):006> Stripe::Account.update("acct_1PyFxXCkZT5s0ZEU", {tos_acceptance: {service_agreement: 'recipient'}})
/app/vendor/bundle/ruby/3.3.0/gems/stripe-12.3.0/lib/stripe/stripe_client.rb:723:in `handle_error_response': The recipient ToS agreement is not supported for platforms in US creating accounts in US. See https://stripe.com/docs/connect/cross-border-payouts for more details. (Stripe::InvalidRequestError)
pale tide
#

correct, the error message is really clear though and so is the page ๐Ÿ™‚

tranquil pebble
#

Ahh I see, what i was doing wrong

pale tide
#

Sorry it's because you're in developer mode trying to fix your code as fast as possible and not really in the mode to understand the feature, its limitations and how to apply it to your business needs.
Here that feature works for US platforms and for connected accounts outside of the US

tranquil pebble
#

I wasn't sure I was doing US

pale tide
#

and yeah if you don't force the country before onboarding it can lead to that confusion

tranquil pebble
#

Right, thanks for your patience. Dev mode and trial and error

#

haha

pale tide
#

My take is that on_behalf_of is the right approach for you. The cross-border Payout feature is more advanced and requires a lot more scrutiny on your end (since we don't do any verification)

tranquil pebble
#

Right so if I'am understanding this better, the cross-border payout is related to the approach of using the recipient and the on_behalf_of is enabling cross-border transfer with fewer changes

pale tide
#

yes

tranquil pebble
#

And in the case of our user, is it possible to not set the country at all so they can select it themselves? I see in the API that it defaults to "my country"

#

I've been creating the account for them and then they get a link to go setup

pale tide
#

I'd recommend asking their country upfront personally but yes you don't have to set it and you can let them pick I think. Is it not working?

lunar compassBOT
tranquil pebble
#

I'll have to verify and try without it with the person.

#

I think I have my homework to figure out how I can get on_behalf_of to function so we can get this to work. Appreciate the help as always, ya'll are the best!

pale tide
#

I mean you can test all of this yourself as the developer owning the code!