With all the designs I’ve made for systems using the Stripe API that blew up in my face because of some undocumented edge-case, you would’ve though I’d internalise this by now, and remembered that the only real strategy for knowing that a design is viable is to actually test it.

But no.

And so here I am once again, trying to contort my design so that it’ll work with the Stripe API while trying to avoid making any dramatic changes. 🤦

So, for next time: build a prototype, and use it to validate your hypothesis. Honestly, just do it. Spending those few hours of work now will save you the many hours of work down the line, when you find that you’ve hit some edge-case and you’ll have to go back to the drawing board.

Just frickin' prototype!