#beinggandhi - Connect Statement Descriptors
1 messages ยท Page 1 of 1 (latest)
Hello! Can you give me the ID of one of the payments in question so I can take a look? A Payment Intent or Charge ID would be fine, or a request ID associated with one of them.
This is the custom connect account : acct_1KiN2fQnrzjCjf1g
This is the payment : pi_3KiNGXQnrzjCjf1g0QnIdv4e
Thanks, taking a look...
Okay, so what is the statement descriptor you wanted to show up here?
The name of the custom connected account. Riddhis Kitchen in this case.
Also, can you tell me why you're using direct charges with Custom accounts? That is not recommended.
Have you set a statement_descriptor_prefix on the connected account? https://stripe.com/docs/api/accounts/update#update_account-settings-card_payments-statement_descriptor_prefix
I'm also not seeing you set any statement descriptor property when you create the Checkout Session: https://stripe.com/docs/api/checkout/sessions/create#create_checkout_session-payment_intent_data-statement_descriptor
We so far are using standard connect account.
we are about to onboard 25 customers with custom connect and saw that the existing code we had with standard connect is working fine except 2 things : 1) statement descriptor and 2) Disputes.
for standard connect account, we dont set the statement descriptor but it shows up properly. I guess will set this up for both standard and custom accounts
Are you aware that your platform is liable for fraud and disputes with Custom accounts, unlike Standard?
Also Custom accounts have no access to any Dashboard, so you need to build every interface they need to function.
And you as the platform will have to manage all refunds, disputes, etc. on your end with direct charges, which is very challenging with Custom accounts.
Refunds is working as in the case of standard account. We didnt have to change anything here.
I just want to make sure you're aware of everything mentioned in the table here: https://stripe.com/docs/connect/accounts#choosing-approach
The money is being refunded from the custom account. eg payment pi_3KbhRUQacMl2U9xy1wNmtClJ
And that we only recommend direct charges with Standard accounts, as mentioned at the top here: https://stripe.com/docs/connect/direct-charges
For Custom accounts you should be using destination charges: https://stripe.com/docs/connect/destination-charges
Yes we do plan to move to express connect. But we already have all the information we need to create a custom account for these customers we bought from other company. In order to make the transfer as seemless for them we are trying to onboard them as custom on our side.
What is your recommendation. Seems statement descriptor will be solved. Refund works fine as in the case of standard account.
Hey there! Stepping in for @next anchor as he needed to step away. Catching up...
The only issue is if someone disputes . Question on that :
Q1) Will we custom connect account get an email for the dispute ? or will it come to platform.
Q2) Since the dispute is for a direct charge. The reversal will happen from the custom connected account. Can you confirm this.
Q3) The fixed dispute charges, will it applied to custom or platform. If it is applied to platform. Can we charge the custom account in turn.
Yes we do understand we will have to reply to the disputes.
So yeah both disputes and refunds will be a challenge if you are using Custom or Express with Direct Charges. One of the main reasons why Standard + Direct is highly recommended, or Destination + Custom/Express.
Custom accounts will never get emails from Stripe.
If you want to attempt to handle this, then you would want to use Connect Webhooks to listen for dispute events.
Q2: The funds will be pulled out of the Connected Account since that is where the dispute will take place
I think Q2/Q3 are the same question, really?
So in case of dispute the connected account will be paying the fixed dispute fee charged by stripe and the reversal of the payment being disputed.
So platform account is fine. Why do you say refund and dispute will be a challenge if you are using Custom or Express with Direct Charges.
example payment pi_3KbhRUQacMl2U9xy1wNmtClJ from custom account with direct charge where refund happened
Because you have to manage balances of your Express/Custom accounts directly and cover their negative balances. You can't easily get reporting. And everything needs to be handled via the API (not sure if this is really a blocker if you aren't planning on using the Dashboard much any way).
It isn't impossible.
But it is just more complicated to go this route and we really don't recommend it
you mean dont recommend custom connect with direct charges. Even if we do custom connect with destination charge , all the things you said are still applicable right ?
Correct we don't recommend custom + direct. No, the above isn't true for Custom + destination. Then all charges take place on your platform.
And it is much easier for you to manage everything.
I also didn't mention that with Custom + Direct you can't customize the Radar rules of your Connected Accounts.
So you are stuck with the defaults.
Versus with Destination you can set Radar rules as you prefer for your platform and it will apply to all charges.
Also, who is going to be the Merchant of Record here?
Who do the end-customer's expect to see information about?
Your platform, or your Connected Account users?
Last question that will also be relevant to this convo: where is your platform located vs. where are your Connected Accounts located?
Got it.
Yeah would recommend using Destination + on_behalf_of
What is the desire for Direct?
no code change from standard connected accounts we are running so far.
Okay okay I mean that's fair, but really you should just make the effort to change now or run into headaches later on down the road.
Are you Connected Account users currently handling all refunds/disputes themselves?
Yes.
Refunds they do from our portal.
so custom connect accounts are also taken care of.
We do plan to move to destination charge. what I am trying to understand is can we go live with these customers and run them for a month or 2 in the current mode
Sure you can if you want. You need to implement Webhooks to get notified of disputes and in turn notify your Connected Account users. You also will want to set the Statement Descriptor explicitly on the Custom Accounts since they won't set this themselves like they do with Standard. You do that on the Account object here: https://stripe.com/docs/api/accounts/object#account_object-settings-payments-statement_descriptor
Will we as platform be able to reply to the dispute on custom connected account through our dashboard , if needed.
You technically can, yes. You will "View Dashboard as" each time and find the dispute to add evidence to.
But this is hard to navigate since you won't implicitly know which account the dispute is on without Webhooks for instance.
Will the platform account get email for dispute on custom account.
As long as connected accounts are footing the dispute charges we should be good. The customers we have dont see a lot of disputes and even if they see they dont respond as average order size is 30$.
I don't believe so, but I'm actually not positive on that.
The Connected Accounts "foot" the bill initially, but in the end your platform is responsible for the negative balance. So if the Connected Account never pays it back then you are liable to cover it from your Platform.
This is a major difference from Standard Connect
Makes sense. I am leaning towards taking that risk as :
Even if the account goes -ve for a brief period , the next sets of orders will bring up the balance. Also dispute/refund rate across all customers is < 0.1%
Is there a fallacy in this line of thought
As long as you don't expect to onboard fraudulent accounts then no you likely will be okay.
I will still continue to recommend that you invest in Destination + OBO though ๐
It really will be worth it in the long-run
Thanks
Am just going through the custom connect docs. is it just switching :
application_fee_amount: 10cents,
},
To
payment_intent_data: {
application_fee_amount: 2.9% + 30 + 10 cents,
on_behalf_of: '{{CONNECTED_ACCOUNT_ID}}',
transfer_data: {
destination: '{{CONNECTED_ACCOUNT_ID}}',
},
},
Is there any youtube video or docs you recommend for transition in our case.
can you give a rough estimate of dev effort in our case for the transition to destination charge.
I can't really. The bigger dev effort depends on how you ingest data.
The Stripe code change is relatively simple (as you noted above)
ingest data? didnt quite get the context.
We already have reporting as we manage the sales tax and tips
Basically how do you handle your customer data will determine the amount of lift
And adjusting that to the change of Destination charges, since now the Stripe data will be coming from slightly different places.
Also how do we convert our existing standard accounts to custom or express ?
can we do that without involving the customer.
You would need to re-onboard them. No you can't really do this without involving the customer since Standard Accounts are standalone and don't let you as the platform access their data.
Is there a way can block your calendar for 15 mins to do a screen share and get your inputs.
Hello, I am taking over bismarck and catching up
Is there any specific difficulty about switching to Destination Charge? I am happy to assist
One thing Bismarck said is if we are using direct charges with custom connect, platform is finally responsible for dispute/refund if connected account has -ve balance.
can we https://stripe.com/docs/api/accounts/update#update_account-settings-payouts-debit_negative_balances set this to true.
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
To ensure that connected account is finally responsible
I believe it's explained here: https://stripe.com/docs/connect/account-balances#accounting-for-negative-balances
That parameter only means Stripe will attempt to debit, in case the connected account is responsible. But in your case (Custom Connected Account), the Platform is responsible in the first place After reading it again I am not sure about it. It does imply this parameter works with Custom Connected
That's how I understand it, but it's best to confirm with Support, really. They should have the concrete answer about these fund-related questions
What is the difference in dispute process for express vs custom. Would the express connected account see the dispute in their limited dashboard and able to reply to that .