All threads / How do I hold Braintree payments for longer than the given escrow duration?

Ask A Question

Notifications

You’re not receiving notifications from this thread.

How do I hold Braintree payments for longer than the given escrow duration?

Tharan Raj asked in General

I want to create a payment system using Braintree that will only charge the user once a certain condition is met. Lets assume its like freelancer and we need the payment to only go through when the job is confirmed to be done.

That's a really good question. As far as I know, you can't extend it or create a hold for a longer period of time.

Kickstarter simply saves the card to be charged at a future date and does not create holds on the cards. This is also bad for your customers because they can't actually use that money on their credit card in the meantime. You also don't necessarily know if the project will get fully funded, so it doesn't completely make sense to reserve that money from your users. The only downside to this is you'll see a portion of those pledges get declined when the project is fully funded. Kickstarter provides a "Fix payment" process when the pledge gets declined that you can read more about here: https://www.kickstarter.com/help/faq/backer+questions

Generally I'd say for crowd funding, you'll want to stick with Kickstarter's approach and not apply holds. You can then spend your time designing the failed pledge process so that that is really smooth when a card fails at that time.

oh ok. thanks!

by the way I know(thanks to the gorails video on braintree) how to charge customers and accept payments. but how do I release funds to a user's bank account assuming i want the payment two work like a 2 way marketplace. I understand braintree has a marketplace feature but i think that is only available in the US.

That's a bit longer of a process that I haven't dove into just yet, but it's not too bad. Basically you'll need to add an extra step at the beginning to onboard your "SubMerchants". You'll ask for some information on them, send it over to Braintree and save the response. It'll give you some extra information that you can use for every transaction to make it processed on the sub-merchant's account. This is nice because it doesn't make you have an escrow feature and can happen directly on their account. They outline a lot of this here which is pretty similar to what I covered in my videos, but you'll have to build a couple things from scratch like the onboarding form for submerchants. https://developers.braintreepayments.com/guides/marketplace/overview?_ga=1.80046359.1408912539.1449506584

If you do need to have an escrow feature, you'll probably have a bit more work to do. You'll be the one accepting all the money and then paying things out from your bank account. I'm not sure about all the details on this but I'm sure you could also do this with Braintree. It might make your accounting a bit more complex, but is also very doable.

Join the discussion

Want to stay up-to-date with Ruby on Rails?

Join 33,665+ developers who get early access to new tutorials, screencasts, articles, and more.

    We care about the protection of your data. Read our Privacy Policy.

    logo Created with Sketch.

    Ruby on Rails tutorials, guides, and screencasts for web developers learning Ruby, Rails, Javascript, Turbolinks, Stimulus.js, Vue.js, and more. Icons by Icons8

    © 2020 GoRails, LLC. All rights reserved.