#naveed-web3auth_docs
1 messages ¡ Page 1 of 1 (latest)
đ 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/1311587406914519101
đ Have more to share? Add more details, code, screenshots, videos, etc. below.
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.
- naveed-web3auth_docs, 1 hour ago, 17 messages
- naveed-web3auth_docs, 1 day ago, 45 messages
What happens to the HKD in the platform account? How to handle it if we only support SGD or USD?
And if covering stripe fees by platform is not important which kind of integration is most optimal in terms of currency exchange rates.
Are there cross-border fees also being incurred?
- Direct Charges creates the payments directly on the connected account and allows the connected account to manage the payments on their own such as refund and dispute.
- Destinations Charges with
on_behalf_ofcollects the payments on the platform and transfer the funds to the connected account later with connected account as the merchant of records. However, connected account will not be able to manage the payments.
Hi there based on the docs and actually trying it out it seems to not be the case
destination charges without on_behalf_of works like that
however with on_behalf_of there are not transfers that take place
however with on_behalf_of there are not transfers that take place
Transfer should take place withon_behalf_ofon Destination Charges. Could you share the Payment Intent (pi_xxx) that you see otherwise?
ok let me take a look
ok lets see
- using destination charges with on_behalf_of py_1QPzURG0yqe8136a5uxqyDqp
- using direct charges pi_3QQ1ZRG0yqe8136a10g1nabX
hmm yeah i see some differences
py_1QPzURG0yqe8136a5uxqyDqp is the destination payment on the connected account after the transfer from platform. The original payment on the platform is https://dashboard.stripe.com/test/payments/pi_3QPzUFImFOsfVEtU1ADnSxbx
Sign in to the Stripe Dashboard to manage business payments and operations in your account. Manage payments and refunds, respond to disputes and more.
Ok hold on so what this means is
Its charging the platform in the connected accounts settlement currency (HKD)
and then transferring the remainder to the connected account?
I'd recommend checking how the fund flow for Destination Charges work here: https://docs.stripe.com/connect/charges#destination
Its charging the platform in the connected accounts settlement currency (HKD)
and then transferring the remainder to the connected account?
Yup! The amount after deductingapplication_fee_amountwill be transferred to the connected account from platform
would you say direct charges would be more optimal then
this seems to require quite a bit of back and forth
What type of connected account do you use? Standard, Express, Custom or using controller config?
thats open to change, it depends on which is most optimal and results in the lowest costs
Ideally was hoping to quote a customer a certain percentage e.g. x% that covers everything (including stripe fees)
Are you going to let the connected accounts to manage the payments such as refund and dispute on their own?
but our business model is similar to shopify for which docs recommended direct charges
yeah tbh would prefer that.
i meant direct not destination
the docs recommended direct
but that doesnt allow for covering stripe fees on behalf of customer
To confirm that I understand the flow correctly for destination charges + on_behalf_of
- Customer pays in EUR, charge goes to platform and converts fro EUR to HKD (since HKD is the connected account's settlement currency)
- Stripe fees deducted from that and transferred to connected acc
- Connected acc transfers the application fee from this amount back to us (no extra charges incurred on this)
Are there cross-border charges incurred here?
Also, since we are SGD USD based what can we do with this HKD in our acc?
For direct charges the HKD is auto-converted to default settlement currency of platform (in our case SGD)
If you wish to let the connected account to manage the payments by their own, then Direct Charges should be used.
Destination Charges is commonly used when the platform manages the payments for the connected account.
Instead of using the default account type such as Standard, Express or Custom, you can use controller properties in the connected account creation that allows more configurations on who to pay for the Stripe fee: https://docs.stripe.com/connect/migrate-to-controller-properties#account-controller-properties
More specifically, controller.fees.payer property: https://docs.stripe.com/api/accounts/create#create_account-controller-fees-payer
You can then use Direct Charges after that
let me try setting that field and trying direct charges to see if it works
not sure if ill be able to update an existing account
maybe ill have to create a new one
You won't be able to update to the existing connected account to use controller properties. This can only be done with new account creation
I'd recommend using this guide as a start for your business use case to determine what to set in your controller properties: https://docs.stripe.com/connect/design-an-integration
Ok first error message when creating like so
stripe accounts create --country="HK" --default-currency="hkd" -d "controller[fees][payer]=application" -d "controller[losses][payments]=stripe" -d "controller[stripe_dashboard][type]=full" -d "controller[requirement_collection]=stripe"
{
"error": {
"message": "`fees[payer]=application` is not supported when creating an account with the full dashboard.",
"request_log_url": "https://dashboard.stripe.com/test/logs/req_J56LMYMrk9VXwj?t=1732780152",
"type": "invalid_request_error"
}
}
After updating that the next error
{
"error": {
"message": "With a dashboard type of `express`, the Connect application must control losses.",
"request_log_url": "https://dashboard.stripe.com/test/logs/req_tttbAKbSGnK2Ob?t=1732780208",
"type": "invalid_request_error"
}
}
Seems like my platform has to connect losses
Ok
Forcontroller[fees][payer]=application and controller[stripe_dashboard][type]=full, this requires access approval. As per checking, indeed that controller properties don't allow full Dashboard with platform collecting the Stripe fee by default.
With your business requirements that:
- Connected account manages the payments
- Platform covers the Stripe fee
One way I can think of without additional approval is to create a Standard connected account with Direct Charges. You can then set the application_fee_amount to a certain percentage e.g. x% that covers everything (including Stripe fees).
Ok so I have tried your suggestion, but conceded to the express dashboard requirement and created an account without a type that has controller properties set with payer as my platform and am now trying a direct charge on it
this is the charge in question ch_3QQ2Z6Id8No1GnTU2DE4tKPT
interestingly now i cannot trace where the stripe fees have been taken
is this a bug?