#rana-uzair_error

1 messages ยท Page 1 of 1 (latest)

topaz skiffBOT
#

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

๐Ÿ“ 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.

tribal dagger
#

hi

orchid plume
#

Hi! Looking into this!

#

It looks like it's not possible to create connected accounts where the loss liability is on the platform. But you can still do direct charges or destination charges with the on_behalf_of parameter and collect an application_fee.

topaz skiffBOT
tribal dagger
#

wait wait , i am confused ,
you are saying use this approch
const paymentIntent = await stripe.paymentIntents.create({
amount: 500,
currency: 'aed',
payment_method_types: ['card'],
on_behalf_of: 'acct_CONNECTED_ACCOUNT_ID', // record for connected account
transfer_data: {
destination: 'acct_CONNECTED_ACCOUNT_ID',
},
application_fee_amount: 50,
});

but my question is where i can get acct_CONNECTED_ACCOUNT_ID ?
if we are unble to create a sub-account in AE ?

main berry
#

๐Ÿ‘‹ taking over for my colleague. Let me catch up.

tribal dagger
#

this is our model
Our platform is a digital tipping system based in the UAE. Users on the platform are divided into:
Tip Receivers: Can only receive tips; they cannot send tips.
Tip Givers: Can tip using their cards.
Whenever a tip is made, the platform collects a small fee(plateform charge) from the transaction and transfers the remaining amount to the tip recipient.

Can you please tell me how i can achieved this model , with AE stripe account !

main berry
#

unfortunately Stripe Connect doesn't support Connect Accounts with business type individual in UAE

tribal dagger
#

What if I can use the type company?

main berry
#

then tip receivers would have to have a registered company in AE and have to undergo verification processes

tribal dagger
#

Please explain the solution to achieve the model I described. If the tip receiver registers their company in the UAE, will we then be able to meet our platform requirements?

#

Anyone there?

main berry
#

sorry I missed your message

tribal dagger
#

If our tip receivers register as a company in the UAE and provide a trade license, can we create a Custom connected account for them under our UAE platform?"

  1. Payout Model
    "For these UAE company accounts, is the only supported model destination_charges or separate charges and transfers? And do we need to use application_fee_amount to collect our platform fee?"

  2. Loss Liability
    "In this configuration, will Stripe take on the loss liability by default, since the platform cannot be loss-liable in the UAE?"

  3. Verification Requirements
    "Besides a trade license, what other mandatory documents do UAE connected accounts need for verification?"

  4. on_behalf_of Limitation
    "We read that on_behalf_of isn't supported for UAE platforms. Can we confirm that we must omit this parameter when creating destination charges?"

"Once the account is verified, can the tip receiver receive payouts in AED to their local bank?"

topaz skiffBOT
exotic basalt
#

hi! I'm taking over this thread.

tribal dagger
#

hi

exotic basalt
tribal dagger
#

this is our model
Our platform is a digital tipping system based in the UAE. Users on the platform are divided into:
Tip Receivers: Can only receive tips; they cannot send tips.
Tip Givers: Can tip using their cards.
Whenever a tip is made, the platform collects a small fee(plateform charge) from the transaction and transfers the remaining amount to the tip recipient.

Can you please tell me how i can achieved this model , with AE stripe account !

#

Standard and with verification will work ? in AE

#

is any one there ?

exotic basalt
#

please be patient, I'm helping other people on Discord.

#

Can you please tell me how i can achieved this model , with AE stripe account !
I'm not sure I understand your question, sorry.

tribal dagger
#

Our platform is a digital tipping service based in the UAE. Hereโ€™s how our model works:
Tip Givers: They pay using a card.
Tip Receivers: They can only receive tips (not send).
Whenever a tip is made, the platform deducts a small fee, and the remaining amount is sent to the tip recipient.
We want to implement this using Stripe Connect in the UAE, and we understand there are restrictions for UAE platforms, such as:
Express/Custom accounts with platform loss liability are not allowed.
Destination charges and separate charges and transfers are supported.
on_behalf_of is not supported for UAE.
Here are my questions:
Which type of connected account should we use? (Standard or Custom)
If we use Standard accounts, can we still collect a platform fee using application_fee_amount?
If Custom accounts are possible, and the tip receivers register as companies in the UAE with a trade license, can we then achieve our model using destination charges?
Will Stripe automatically handle loss liability in this scenario?
Can you confirm this is the only compliant way to implement this for a UAE platform?

exotic basalt
#

Which type of connected account should we use? (Standard or Custom)
that's up to you. but we recommend against using Custom, because the integration is a lot more complex.
If we use Standard accounts, can we still collect a platform fee using application_fee_amount?
yes
If Custom accounts are possible, and the tip receivers register as companies in the UAE with a trade license, can we then achieve our model using destination charges?
Will Stripe automatically handle loss liability in this scenario?
Can you confirm this is the only compliant way to implement this for a UAE platform?
that would be question for the Stripe Support team: https://support.stripe.com/contact

tribal dagger
#

Can we fully implement this model using Standard accounts for tip receivers

exotic basalt
#

I think it should work yes, but I recommend trying your setup in test mode.

tribal dagger
#

const link = stripe.oauth.authorizeUrl({
response_type: 'code',
client_id: process.env.STRIPE_CLIENT_ID,
scope: 'read_write',
redirect_uri: ${process.env.FRONTEND_URL}/stripe/callback
});

const paymentIntent = await stripe.paymentIntents.create({
amount: 10000, // e.g., AED 100.00
currency: 'aed',
payment_method_types: ['card'],
application_fee_amount: 500, // platform fee (AED 5.00)
transfer_data: {
destination: 'acct_XXXXXX', // Tip Receiver's Standard account ID
},
confirm: true,
});

done by this appproch ?

exotic basalt
#

why are you using OAuth? this is an old integration that we no longer recommend.

tribal dagger
#

Standard accounts, is not availabe iin AE !

exotic basalt
#

so what types of account do you want to use?

tribal dagger
#

const account = await stripe.accounts.create({
type: 'standard',
country: 'AE',
email: user.email,
business_type: 'individual',
});

StripeInvalidRequestError :'individual' is not a supported business type in the country AE.

exotic basalt
topaz skiffBOT
tribal dagger
#

Platforms in AE cannot create accounts where the platform is loss-liable, due to risk control measures. Please refer to our guide (https://support.stripe.com/questions/connect-availability-in-the-uae) for more details.

const account = await stripe.accounts.create({
    type: 'custom', // Standard & Express are not available in AE
    country: 'AE',
    email: user.email,
    business_type: 'company', // or 'sole_prop'
    capabilities: {
        transfers: { requested: true },
        card_payments: { requested: true }
    },
    business_profile: {
        name: user.businessName,
        mcc: '5734', // Example MCC
        url: 'https://easytipping.com'
    }
  });
rustic raptor
#

Standard & Express are not available in AE
Are they not?

tribal dagger
#

hi your are third agent ,
please tell me the solution of this
this is our model
Our platform is a digital tipping system based in the UAE. Users on the platform are divided into:
Tip Receivers: Can only receive tips; they cannot send tips.
Tip Givers: Can tip using their cards.
Whenever a tip is made, the platform collects a small fee(plateform charge) from the transaction and transfers the remaining amount to the tip recipient.

Can you please tell me how i can achieved this model , with AE stripe account !

rustic raptor
#

Where is your platform based? AE?

tribal dagger
#

AE

rustic raptor
#

That will get you an 'individual' account, but maybe Express accounts are not what you want (read above). Connect support is spotty in AE I'm afraid

tribal dagger
#

Platforms in AE cannot create accounts where the platform is loss-liable, due to risk control measures.
face this issue

rustic raptor
#

Can you share the req_xxx ID?

tribal dagger
#

req_hWbatiowJ6trFh

rustic raptor
#
losses: { payments: "application" }

Is the issue

tribal dagger
#

let me check

#

no its not working ,

only standard with business_type company is work ,but the tip receiver has no registered company in UAE

#

Our Use Case

Platform: Based in UAE.

Tip Givers: Pay using card.

Tip Receivers: Can only receive tips (they cannot send or refund).

Whenever a tip is made, the platform takes a small fee and the remaining amount goes to the tip receiver.

Our Current Understanding & Actions

We know Standard accounts are allowed in AE (Custom requires high complexity).

We cannot use business_type: individual for AE; receivers must register as a company with a UAE trade license.

We want to use Stripe Connect to:

Create a connected account for each tip receiver.

Collect our platform fee automatically when a tip is processed.

Our preferred charge model: Direct charges or Destination charges (as suggested by docs).

We attempted:

Creating Custom accounts and setting controller.losses.payments = 'application' โ†’ Error: AE platforms cannot be loss-liable.

Separate Charges and Transfers โ†’ Disallowed because platform cannot hold funds.

Current Limitation

In AE, we cannot create accounts where the platform is loss-liable.

Individuals are not supported, so all receivers must be businesses.

We want to confirm whether Standard accounts + Direct charges with application_fee_amount is the correct and compliant solution.

What We Need from Stripe

Can we achieve our model using Standard accounts in AE, where:

Each tip receiver registers as a UAE company.

We process Direct charges on their account and collect platform fee via application_fee_amount.

Is there any restriction on Direct charges for AE platforms?

Is OAuth onboarding for Standard accounts still allowed for AE, or should we use the latest Connect Onboarding flow?

Is there any alternative way to implement this if we want more control over payouts without violating AE compliance?

exotic basalt
#

no its not working ,
can you share a Request ID that failed?

tribal dagger
#

req_2jgCreYeGJztxr

exotic basalt
#

can you try setting controller.losses.payments: "stripe", as the error message implies?

tribal dagger
#

const account = await stripe.accounts.create({
country: 'AE',
controller: {
stripe_dashboard: {
type: 'none',
},
fees: {
payer: 'application',
},
losses: {
payments: 'stripe',
},
requirement_collection: 'application',
},
capabilities: {
transfers: {
requested: true,
},
},
tos_acceptance: {
service_agreement: 'recipient',
},
});
StripeInvalidRequestError: When controlling requirement collection, the Connect application must also control losses, fees, and specify a dashboard type of none.

#

req_SwNH4FnImfp5HS

exotic basalt
#

got it. it possible that what you are trying to do is just not supported by Stripe.