Stripe customer A pays customer B, we take a fee - stripe-payments

I have an application, where customer A offers rooms and customer B can book a room.
In this case customer B books a room and pays customer A, so I dont hold the money on stripe. I take a cut and charge customer A once a month for all his successfull bookings.
I am not able to find information on this topic, is this even possible?
To sum it up once again:
As it is now -> Customer B books a room and the money goes to my stripe account, where I need to pay customer A myself. Also in this case I need to pay 2 x transaction fees: Customer B -> My Stripe -> Customer A.
If I hold the money myself on stripe, do I need to have PCI DSS? According to https://stripe.com/docs/security Stripe has it.
EDIT
I need a BaFin licence here in germany (even If I hold the money for 1 second). That is why I want to make it possible that customer B can pay customer A directly.

Did you take a look at Destination Charges? It may be what you are looking for.
In your case:
Your application would be the platform account
A would have a Custom Stripe account
B would be a Customer object
Each time B books a room, you create a Charge by specifying the parameter destination[account] which will be the Custom Stripe account identifier of A. At the same time you can specify the parameter destination[amount] that will be less than the Charge amount, and the difference will be your cut. the value that you will set for destination[amount] will be transfered to the Custom Stripe account of A.
I think that you can easily set the recurrence of the payout (i.e. Custom Stripe Account to actual bank account) from the dashboard.
What I wrote above is really just a rephrasing of Creating Destination Charges on Your Platform - Collecting platform fees applied to your case.
Zusatz
I don't think you need an authorization from the BaFin. This what Stripe is for (among other things). At least in France, one does not need an authorization from the equivalent authority, ACPR - Banque de France.

Related

How to use customer credit balance without invoice in stripe?

I want to create a system in bubble.io app with stripe, in which:
the customer while purchasing products will pay though their credit balance but the invoice should not generate (or without invoice).
if it possible, then how? and if not then:
customer should transfer money to stripe platform balance and whenever they make a purchase the money should transfer from stripe platform balance to the seller.
any solution?
The customer's credit balance automatically applies toward the next invoice of the customer. So if you are not using invoices, it won't work. The alternative is to keep track of the customer's balance on your end, and change the amount they need to pay accordingly.
If you want the platform account to charge the customer, and then later send the funds to the connected account(s), then you should use separate charges & transfers.

Stripe connect. Transferring payment to a connected account charges fees on the main account

I have account B connected to account A (both are standard accounts).
What I'm trying to do: accept a payment through A and send the full amount to B, which then gets charged the corresponding Stripe fees.
What I did: Created a webhook that fires on charge.succeeded and does a transfer to the connected account (B), using the charge id in source_transaction (As per https://stripe.com/docs/connect/charges-transfers)
What happens: The connected account (B) seems to get the full payment, without fees, the fees seem to be charged to account A
Could it be that it's because in test mode? The idea is to use account A to send/split a payment between other accounts (1 or more), as in a marketplace.
You'd usually simply use a Direct Charge — https://stripe.com/docs/connect/direct-charges. That's exactly how you platform A makes an API call on connected account B to facilitate a payment, and the fees are paid by B.
The link you posted is for a more advanced integration where the platform processes the payment(and therefore pays the Stripe processing fees) and then transfers money to a connected account(like a company like Lyft charging a rider, then transferring some of the money to the driver).
The idea is to use account A to send/split a payment between other accounts (1 or more), as in a marketplace
You can't use Direct Charges to split a single payment between multiple connected accounts such that they all pay the fees separately. The most you could do is make multiple separate charges — like take the card from the customer, clone it to each individual account involved, and do N separate charges (https://stripe.com/docs/connect/cloning-customers-across-accounts) on each of them. I wouldn't really recommend that since it likely leads to more declines and disputes(it's weird to have a shopping cart with 5 items from 5 sellers and get charged by the actual 5 sellers, I would expect to be charged once by the company that runs the marketplace).
If you really need to do this type of business model where you take a single payment and then split between multiple sellers then you do need to take the approach you linked to, and have the platform pay the fees, that's the only way, it's specifically discussed at https://stripe.com/docs/connect/charges#types in detail.

Stripe payment and bank account

Is it possible with Stripe to perform a test transaction to ensure that an account is funded?
I would like to :
take the Credit Card ID at the moment of the booking (but no payment at that moment)
make the customer pay AFTER the service has been done
What you likely want is to place a hold on the card for the given amount, and then capture the funds later after the service has completed. When placing a hold the given amount is authorized and guaranteed by the cardholder's bank. You'll often see these types of transactions show up on your online bank statement when renting a car or when checking-in to a hotel room. When processing your payment with Stripe you would set the capture_method on the PaymentIntent to manual which tells Stripe to only authorize the given amount. Then, once the service is rendered you would capture the funds. The following guide covers the approach in detail:
https://stripe.com/docs/payments/capture-later

How to automatically bill Customer B depending on Customer A's subscription charge on Stripe?

We are looking for a way to bill one customer depending on how much another customer is charged weekly using Stripe Subscriptions. So the idea is to offer a weekly gym membership to full-time employees at city offices. The weekly fee will be $20 and we want the employees' company to contribute a certain amount to the weekly fee. For example, Customer A (employee) will pay $16 and Customer B (employee's Company) will pay the remaining $6. Is there a way to take Customer A's charge successful receipt and trigger Customer B's card to be charged automatically? The $20 subscription fee is not fixed as it will change depending on their usage ($20 is for 5 working days. If they use it for 3 days the total charge will be $12).
Since you are controlling Customer A's subscription and charge you can automate all of this. You indicated that you will change how much you charge Customer A each month. This is something that your code will handle and at that point it can automatically charge Customer B's card for the remainder of the fee.
Otherwise, you can use webhooks and listen for charge.succeeded events. Whenever Customer A has a successful charge, your webhook handler will find the corresponding Customer B in your database and create a Charge for the correct amount.

Multiple Stripe accounts in one form

With Stripe, can I have two charges from two different stripe accounts on one form? ie) Have the setup fee be sent Company A and the product fee sent to Company B...
I am creating a subscription based website however, I need to charge consumers a fee for their transaction as well as send the payment directly to the company. Example: The consumer will be charge a transaction fee of $5, which will go to my company. Furthermore, the price of the product will go to the company that posts the product. Therefore, I get the transaction fee and the company gets the money for their product.
Is there a way to do this with Stripe?
Yes, you'd need to use Stripe Connect to accept payments on behalf of other accounts, and optionally take a cut.
In your case, your account would be the platform's account and the company that ships the product would be a connected account.
You could then accept charges on behalf of this company, and specify your own application fee: https://stripe.com/docs/connect/payments-fees

Resources