I recently open-sourced a Laravel SDK for Creem.io and wanted to write up the story behind it, because the path to building it was a bit roundabout.
Backstory
My existing project uses Omnipay, the PHP League's payment abstraction library (not a payment provider itself), to handle checkout through multiple gateways via a single interface. I originally planned to stick with a provider that already had an Omnipay driver. But mid-integration I switched to Creem. Since the project was already wired through Omnipay, I wrote a driver for it: romansh/omnipay-creem.
Omnipay is a solid choice when you need to swap gateways with one line of code. The trade-off is that it's a lowest-common-denominator abstraction: you get purchase() and completePurchase(), and everything else (webhook routing, event dispatching, config management, retry logic) you have to build yourself.
At some point I discovered Creem had a developer bounty for an official Laravel SDK. Since I was already working w
Discussion
Begin the discussion
Begin something meaningful by sharing your ideas.