Lesson learned about ShopifyAPI Billing

the blog image

May 25, 2011

I am in the midst of no longer giving away simple (or complex) Apps for free, but instead, hooking into the Shopify Billing system built into the API, so I can receive some lunch money from my hard work.

So, I receive access to a store, as the store admin, deploy my code, and test out the Recurring Charge calls. It all works as expected in my experiments, so I call up the shop keeper and let her push the actual button confirming that yes, she is willing to pay the small monthly fee for using my small App to relieve her of tedious work.

I get another call to deploy the same kind of App. So I set out to see how that all works by accepting a staff account to the new store, and wiring it all up. After some initial glitches with my sloppy code migration, I hook into the App and it is approved, but I always end up at the “confirmed” page of my App sans a valid charge ID. WHA HAPPEN? WHUZZUP?

I load up my App with debugging and see that what ends up happening is that my App finds itself Authorized in the Shop, but the redirect ends up at the Shop Admin Account page. It gradually dawns on me, the problem is simple. I am NOT the Shop Admin, I am a pee-on staff member. So all my testing of the “Do you Accept to Pay XX$ for this App” are falling on deaf ears.

I asked my client to login and click on the App login… she is directly confronted with the correct screen, from Shopify, asking her if she accepts the charge for the App. She agrees, and ends up at my Apps confirmed script with the charge ID. All is well. Lesson learned.