stripe bank to bank direct transfers - stripe-payments

OK, I am a little confused on the best way to setup Stripe for customer to customer direct bank transfer. Here's what I want to do.
I am building a rental platform where a tenant and landlord can enter their bank information (routing and account) and then on a monthly basis transfer money from the tenant to pay the landlord directly (ie, bank to bank transfer) for that months rent.
I think Stripe Connected account makes the most sense to make this happen. But I guess I am not fully understanding the flow, even after reading the docs. Any insight will be greatly appreciated.

You need to use Stripe Connect to accept payments on behalf of others. In your scenario, you'd create customers for the tenants and connected accounts for the landlords, then create charges to move funds from a tenant to a landlord, with your platform optionally taking a cut out of the transaction.
Since you want the tenant to pay via bank transfer, you'd need to use ACH rather than cards.

Related

How to collect members' bank info?

Say I have a company where I want to make direct deposits to members' bank account. I understand that's it a really bad idea to ask them their information on the site and store it in the database.
But what If i ask our members to email us their bank info for direct deposits? I would then simply take their info and put it in excel sheet instead of storing it in the server(and delete the original email). That would be my reference point to sending the members direct deposits using my bank account. Is that legally allowed? If not, what would be another method to request a member's bank account info to make direct deposits?
Collecting banking account information has significant security implications and doing via email is not kosher. But there are alternatives.
The simplest alternative is using interbank service like Zelle where you can send money to your members' bank accounts using just their email accounts (the one associated with their bank login). We pay our smaller vendors this way and most get paid immediately without any transaction fees. But this may not work for members who use smaller banks outside the network (e.g credit unions) and the service does not have sophisticated tracking or linking to invoices.
If you have international members or need a more scalable/programmatic/self-serve solution, you can consider using a payment gateway provider like paypal/braintree or stripe-connect. Stripe is especially easy to integrate with a website and instead of you collecting and maintaining banking information for your members, stripe does on your behalf. Companies like Lyft use this to pay their drivers. It scales and works in almost all major international locations. Downside is there are per transaction fees which get steep if you want instant payments.

How to transfer money from one stripe account to multiple connected standalone stripe accounts

I am working with a marketplace website. Initially, I will be charging a customer for buying a product and the money will be credited to my stripe account. After that, I want to transfer some money from my stripe account to two different standalone connected stripe accounts in. How can I achieve this using stripe?
The exact feature you are looking for is Transfer. Before April 6, 2017, transfers also represented movement of funds from a Stripe account to a card or bank account. This behaviour has since been split out into a Payout object, with corresponding payout endpoints.
This link has detailed guide of how to create Transfers.
I know this was asked long ago but I couldn't find any satisfactory or to the point answer.
You need to use the "Separate Charges & Transfers" flow described here: https://stripe.com/docs/connect/charges-transfers.
I also recommend that you write to Stripe's support at https://support.stripe.com/email to explain your business model and desired payment flows to make sure that it's something that Stripe can support.

How to pay out to a bank account using Stripe?

I have a site where I am using Stripe API to collect payments. I would like to send some amount of the money I collect to a user's bank account. How would I go about doing this?
You can't simply send funds to any bank account from your own Stripe account.
You can use Stripe Connect to accept payments on behalf of others (and optionally take a fee for yourself), then send funds to their bank account. But there a lot of things to consider when using Connect and it's quite a lot more complex than simply using Stripe for yourself.
If it sounds like Connect is a good fit for you, I greatly recommend you spend some time to read the docs as well as this article.

Allow users to accept payments from their users

I am working on a software that is to be used by businesses which make about $0.5mil revenue per year. I would like to incorporate into the software the option for my users to accept card payments from their clients. So far it seems I have the following options:
Manage multiple merchant accounts on behalf of my clients, however this has a few drawbacks. I would, for example, like to charge some small fee to cover the costs (about 0.1%) which I cannot accept if the payment to my user doesn't go through some stage that I can control where I can deduct the fee and send it my way. Also, about 50% of the mentioned revenue is paid for by credit or debit cards so a volume of $250,000 might not be enough to cover the fees set by the account provider.
Send everything through a merchant account that I control and then distribute the funds to the users. This, however, seems like a very small scale solution at best with the average number of payments per user per day being around 15.
The end result should be that the user enters a price in the software, this gets sent to a card reader where the user's client inserts their card and makes the payment. The amount charged includes all the fees associated. The amount paid will then be sent to some merchant account where my fee will be sent to me and the merchant fee will be deducted, the rest will be sent to my user's account. The whole point being that the user doesn't have to bother with setting up merchant account or card reader and simply gets a card reader from us which connects to the software and can immediately accept payments.
I sincerely hope I am missing something but I would appreciate any help with finding a way how to charge clients of my users and take some small fee.
So as it turns out, the best way to do this is using Stripe after all. If anyone is ever concerned, this is how I solved the problem.
Stripe is currently rolling out Managed Accounts of their Stripe Connect which can be used to effectively manage Stripe accounts for my customers. Therefore, once a user registers for my payment program, I create a managed account for them without the user knowing at all. For incoming Stripe payments I can then use the destination property as the id of the account where the money should go and specify an application fee which will be charged to my own account.
From there on the only problem to solve is that Stripe only supports online payments which can be overcome by using for example Payworks, however so far their service has been pretty terrible so this may be a weak point in the system.

Can Stripe support Offline Payments?

I am using Stripe for online payments but also users can pay offline (cash or check). I want to centralize all my invoices/charges in one place (Stripe).
I am not sure if I can add offline payments (cash or check) to stripe or not. I guess I can if I created customers, invoices, charges with livemode=false for my live keys.
Is this feasible and will Stripe accept having some (customers, invoices and charges) with livemode=false and others with livemode=true?
If yes, should I fill fake credit card info or should I set it as nil?
Stripe does not allow you to create a Subscription on a Customer if you don't have a credit card setup. More accurately, it does not allow you to create a subscription if a customer does not have a way to pay for the next invoice. So for offline payments, you could update the 'account_balance' on the customer to have a negative value equal to the amount the customer wired (credits). Stripe will then allow you to create a subscription for the customer because it knows that the customer has enough account balance to pay for the next invoice. This post has more details.
We don't currently support offline payments, so you'll want to look at a separate accounting system for those payments.
That said, it's totally understandable that you'd want to keep this data in one place. You might be interested in using our webhooks system to offer live updates to your accounting system without directly touching the code that creates the charge in Stripe.

Resources