shetabit/multipay
Multipay is a Laravel package that unifies multiple payment gateways behind one clean API, letting you create payment requests, redirect users, verify callbacks, and manage transactions without rewriting code when you switch providers.
PaymentGateway port. It informs the architecture decision around how much payment logic lives in domain code vs. a package.Adopt (or pilot) when:
Look elsewhere when:
To executives: This is a small, MIT-licensed Laravel package that gives us ready-made connections to multiple payment gateways through one interface. For an Iran-market launch it can shorten checkout delivery from a multi-week integration project to a short configuration-and-verify task, at effectively zero licence cost. The trade-off is support risk: it's a community package with limited adoption signals, so we should adopt it behind our own internal interface and budget a short audit of the specific gateways we need. Recommendation: pilot one gateway, keep the exit cheap, and don't let it become load-bearing infrastructure.
To engineering: It's a Laravel service provider plus a driver pattern — gateways are selected by config, and our code talks to one consistent pay/verify surface. We should wrap it in our own PaymentGateway port so a swap to Omnipay or a direct SDK is a one-adapter change, not a refactor. Budget time to (a) audit the drivers we actually use, (b) add integration tests around callback verification and failure paths, and (c) pin the version and fork if upstream stalls. Treat driver correctness — not the API — as the real risk.
How can I help you explore Laravel packages today?