Stripe sending money to user bank account - stripe-payments

I have built application that similar to to freelancer marketplace. I want to when user earn money thorugh my marketplace. A buyer only can pay using their card, which is already implemented with stripe
and a seller should be able to withdraw their money to direct their bank. But i didn't notice such a feature on the stripe.
I notice stripe refund method to refund funds, which i dont want, coz, i am not going to refund money to any user buyer. I just want to send the seller bank account directly from my stripe account
How can i do it?
I notice this, but i dont want it all
charge = await stripe.charges.refund(charge.id, {
amount: 1000
});

You need to read about Connect, Stripe's product to help you build marketplaces like you describe. Your seller would have a connected account and you'd send them money with payouts.

Related

Taking fee and payment reservation Stripe

Pretty new to Stripe, we're building an online marketplace. Each user can buy assets from any other user. We also take fees for each payment.
We go with connected accounts. Seller goes through the onboarding flow (create connected account, create account link etc), while buyer is registered as a customer of our platform on Stripe.
Now, whenever buyer makes a payment we create a payment intent to pay to us (amount + 20% fee via):
stripe.paymentIntents.create(params)
Then we create new payout to seller (amount) using source transaction from payment intent above:
await stripe.transfers.create({
amount: payment.amount * 100,
currency: payment.currency,
destination: seller.stripeAccountId,
source_transaction: sourceTransaction,
});
Is this the preferred and best way of handling this? In terms of time, we need first to wait for payment to settle to our bank account to be able to payout seller?
Is there any better way of doing this instead of manual payouts?
Is there a way to make direct transfer to connected account when user does payment?
I tried with payment intent, specifying connected account id in request, but API is complaining that customer id is on our platform but account id is specified, so it's not possible obviously.
Also, manual payouts would come handy to simulate payment escrow/deposit. When user create a request for some asset, we would immediately transfer certain amount to our account, like reserving that amount. And if the seller accepts the offer, we would do a payout. If seller rejects the offer, we would do payout to the buyer, giving him back his money.
Does this make sense?
Thanks in advance
You don't need Payout (yet) in your use case. You are doing Separate Charges and Transfers, and fund simply moves from your Account's balance to Connected Account's balance. It hasn't been out of your Connected Account's balance to your Connected Account's bank account yet, which is called "Payout".
In another word, Payout is separated process than Charges and Transfers. Charges and Transfers can happen immediately, and Payouts normally happen later on a daily basis or manually.
Find more explanation on Connect Balance.
There is also Destination Charge which is simpler than Separate Charges and Transfers. I recommend Destination Charge unless you have specific reason to use Separate Charges and Transfers, ie. you need to transfer to multiple Connected Accounts on one payment.

Using Stripe Connect - Can Stripe payements be used without being a Stripe member

I am creating a site that will need a payment gateway to split payments for sellers when a buyer buys an item from the seller.
I have found out with Stripe Connect you can split payments which is great, but does anyone know if a buyer wants to buy an item from the seller, do the buyer and seller need a Stripe account or can the buyer and seller send and receive money without a Stripe account?
I was going to use PayPal Chained Adaptive Payments but found out that this service is depreciated.
When using Stipe Connect there are multiple parties involved:
The platform account, that's the main Stripe account
The connected accounts, these are the sellers that are connected to the platform account. Each connected account need a Stripe account (either Standard, Express, or Custom)
The customers who will buy the products, they don't need a Stripe account

How to make custom payment to a customer

I am looking for a way to make payment to a customer like a business do.
for eg. a business will ask you to fill the form with bank name, acoount number IFSC code etc.
so customer can receive a payment.
I have user who is having a digital wallet with some amount.
I want to transfer the amount to user's provided bank account on the request.
I saw stripe documentation but I am not sure if stripe support custom payment.
Stripe provides refund as per below method where I have to provide charge id string
and because of charge id stripe will refund only the amount which was charged earlier and this is linked to particular charge only.
const stripe = require('stripe')('your_stripe_key');
const refund = await stripe.refunds.create({
charge: 'charge_id_string',
amount: 100,
});
I want to make custom payment/refund so I can transfer users wallet available balance to bank account.
Any suggestion will be appreciated.
I don't think you should use Refund because you can only create a refund based on an existing charge.
You should probably look at Transfer, which allows you to send funds from your Stripe account to a connected account. In your use case, you should create a connected account for your customer so that you can transfer refunds to your customer and eventually payout to their bank account.
Visit here to learn more about Stripe Connect.

How to pay a user with stripe?

I am building an ecommerce store like amazon where sellers can sell and they receive money when a product is bought.
I am using stripe api with nodeJS for handeling payments. What is exactly the process of paying a user with stripe?
On their documentation they said of creating an account then transferring fund but in the process what about taking user's payment details like their bank account.
What are the steps which I need to follow for a paying a user out?
You'd need to use Stripe Connect. Each merchant you pay will need to be a connected account to your platform.

Does Stripe Connect allows to top-up customer (buyer) account?

I want to create a marketplace, where buyers can buy credits (top up their platform accounts) and use them later to buy products from other customers. I want to use Stripe as payment processor. I did some research and I've noticed that Stripe Connect is appropriate for that kind of business. However I don't know how to do this. Seller can have Connected accounts created. Buyer can have Customer object created, where I can store payment methods for user. How then I could be able to topup Buyer account, when he hasn't any ? Maybe I could create Connected account for buyer too but then I can't make transfers between connected accounts ? Is it possible to have such a business model in Stripe ??

Resources