I'm looking to begin freelance web development but unsure of how best to move forward. I've read that choosing to host sites for your client is up to you and all that but I had a question about integrating certain APIs.

Say I'm building an e-commerce site for a client and will use Stripe and Shopify in a Rails app. Would I have the client create an account on those platforms so that way they can link their bank account to Stripe for cashing out and will they need to make an account on Shopify as a partner in order to utilize API keys there that are unique to their business.

What is the best way to handle these third party programs?


1 Answer 1


I've done work that has had to work against merchant accounts (Authorize.net). Instead of using a live account (that can process real money) I coded against a free test account that Authorize.net provided. I used the same approach with Paypal, using the Paypal Sandbox. You should investigate to see if Stripe and Shopify offer something similar, where you can code against the test accounts and switch to production accounts once you've completed testing.

You should look to put the configuration information into a simple configuration file of some sort, rather than embedding it deep into your code. That way, it can be switched easily when the time comes.

  • Got it, Stripe does have a test version to play around with so I have used that in the past. When you switched to the production accounts after testing did you use your own production account or have the client create one that was synced up to their bank account?
    – suhaibh
    Sep 7, 2016 at 3:47
  • @suhaibh The client should create their own production accounts since the money transferred via Stripe and Shopify on the live site you create would be theirs.
    – ekad
    Sep 7, 2016 at 9:45
  • Have the client do it. Keep your hands out of their money concerns as much as possible, so if something ever goes wrong they can't say you were involved.
    – Xavier J
    Sep 7, 2016 at 12:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.