Koppel is submitted. Two months after the code was finished, the Shopify App Store has it and I am waiting again.
I’m proud of this one. Proviand was the first app with my name on it. Koppel is the first one I built for a problem I have watched shop owners fight for years: selling on Bol from a Shopify store without copying numbers between two screens all day.
What it does
Koppel connects a Shopify shop to Bol. You pick the products and they go live on Bol by EAN. Stock and prices stay in sync. A Bol order shows up in Shopify as a normal order. Ship it and the track and trace goes back to Bol. Returns come in on one screen. Flat pricing, no fee per order.
That is the whole pitch. It took the summer to make it true.
The hard parts
Bol was the hard part, and what made it hard was the waiting. To connect a real seller account I needed a real seller account, and Bol took nine days to look at my company registration. Then Bol moved the offers API to a new version and removed the endpoint I used for prices without telling anyone. Then they wanted a delivery promise on every offer that I did not know existed. Each of those was a day I had planned for something else.
Shopify was the other hard part. An app that reads customer names and addresses needs a special permission, and until Shopify grants it you cannot listen for fulfilments. I had built the tracking push on that webhook. So in production, nothing pushed tracking to Bol. Nobody noticed, because the only merchant was me. It now checks for new shipments every two minutes instead and needs no extra permission at all.
The submission
I submitted. Shopify came back with feedback. Connecting Koppel needs the merchant’s own Bol API keys, the reviewer has none, so they sat at “Niet verbonden” with nothing to test. Fair.
I could not hand them my keys. Review traffic on a live seller account means real offers that real people can buy. So Koppel now has a demonstration mode. One reserved set of credentials connects to a small fake Bol that lives inside the app. Offers, orders, returns, the whole thing runs the exact code a merchant runs, with a banner that says Demonstratiemodus so nobody mistakes it for the real thing.
Building the fake Bol found two real bugs. An order for a product with zero stock failed silently, which is the worst kind of missing order. And the Pro plan was sold on a feature that was switched off. More on that below.
Resubmitted today. A parcel from Amazon is on its way so I can place a real order on Bol and watch it land in Shopify. Yes, I am buying my own product to test my own app.
UserJot and the repricer
Feedback used to be a form that dropped into a database table nobody read. It now goes to koppel.userjot.com, which is public. If you install Koppel and something is missing, say so there and everyone can watch me answer. Or not.
The first thing on that board is the repricer. It is built and tested. It adjusts your Bol prices automatically, within limits you set. It stays off until I have seen it do one real price round-trip on Bol’s demo environment. Until then it is gone from the plan cards and the marketing site. Selling a feature that does not run is not something I want to explain to a reviewer, or to a merchant.
Now
Proviand took three tries. I have budgeted the same for Koppel and would be quietly pleased with two.