It just turns out that most of our users are only really interested in using Stripe at the early stage, so for now our codebase is closely embedded into their billing product.
It's going to be fun(?) ripping all of it out and moving towards a PSP agnostic architecture you mentioned.
Lago is better in that they have have support for custom payment integrations [3].
[2] https://paystack.com/stripe/south-africa
[3] https://getlago.com/docs/integrations/payments/custom-paymen...