Thanh Nguyen Viet
Thanh Nguyen Viet

Reputation: 33

Stripe - How to make the application on behalf of the user (connect account) to pay another user (another connect account)

This is the application workflow.

The application has 3 objects

  1. People who need to find a problem solver
  2. Partners of (1), they can help (1) find a problem solver
  3. Problem solver.

When (3) completes the work, they notify (1), then (1) will pay (3). The application and (2) will receive a fee upon payment.

(1) will pay for (3) by clicking the "pay" button on the app.

All 3 (1) (2) (3) can log into the app and they can view the payment history.

Note: A Connect Account is required to connect to the application for (1)

So the questions are:

  1. (1) already have a Stripe account, how to (1) connect to the app? I have used this guide https://stripe.com/docs/connect/oauth-standard-accounts but the Date Connected is empty and Status is Restricted even though they have completed the connect process (details_submitted = true)
  2. Is a Connect Account required for (2) and (3)?
  1. How will (1) pay for (2) and (3)?
  1. Can you give me documents on how to get payment history for each object?

Thanks.

Upvotes: 0

Views: 587

Answers (1)

karllekko
karllekko

Reputation: 7198

Let's rephrase this in terms of Stripe Connect integration concepts.

People who need to find a problem solver

I assume those are end-customers, people who pay money into your business. Those are represented by Stripe Customer objects but don't need an account or relationship with Stripe.

Partners of (1), they can help (1) find a problem solver

If these people are receiving money, then in Stripe terms they are the same as your (3) category, they need Stripe Connect accounts :

Problem solver.

Sounds like these people receive money. That means they need to have a Stripe Connect account to verify their identity and set up a bank account to receive payouts to.

====

Note: A Connect Account is required to connect to the application for (1)

That's not true. If this (1) is only paying money, as a customer that you charge, they don't need a Stripe account. Only people receiving money need accounts.

(1) already have a Stripe account, how to (1) connect to the app? I have used this guide https://stripe.com/docs/connect/oauth-standard-accounts but the Date Connected is empty and Status is Restricted even though they have completed the connect process (details_submitted = true)

Generally you should just the main guide https://stripe.com/docs/connect/standard-accounts. If you're facilitating payments you should just create new accounts instead of reusing exising ones with OAuth, that approach is only for 'extensions'.

The way it works is such that the user signs up and a new Stripe account is created(they might have an existing Stripe account but the onboarding creates a new one linked to their Stripe login but with tighter control and scoped to your platform).

Is a Connect Account required for (2) and (3)?

Yes, because they receive money.

If yes, what is the type of Account? Express or Standard?

It's up to you, you would read the docs and choose the one that makes sense for your use case. https://stripe.com/docs/connect/accounts#choosing-approach

How will (1) pay for (2) and (3)?

You'd use a Connect charge flow that allow payments from an end customer to be split among parties. Again, you'd read the docs and choose the flow that makes sense. https://stripe.com/docs/connect/charges#types If you want the money split three ways(you, the helper, and the solver), you likely need to use "Separate Charges and Transfers" which is complex.

Can you give me documents on how to get payment history for each object?

https://stripe.com/docs/api/charges/list would be the starting point, but beyond that it will highly depend exactly what you end up building.

Upvotes: 1

Related Questions