Single person company here. It's not hard to do, maybe an extra PHP class that abstracts details of different providers, and a separate class implementation on each provider. But you're right that you wouldn't do it for launch day.
It comes in really, really handy when your tiny 1-person company outlives your giant multinational payment provider. Happened to me a few times now, I'm on to my 3rd (4th?) provider in 20 years. There's a tendency for Borg-like consolidation in the payments industry (eg Avangate acquired 2Checkout, then were bought by Verifone). Anyone who lived through the Digital River era will know what I mean.
If you haven't done that code abstraction, imagine that you're suddenly unable to take any payments or make any sales and you are unable to do so until you rewrite all your payment processing code. That can be a long outage.
Having a backup is also useful when a customer's card gets declined by an overly zealous fraud screen at one provider. You can give that customer a "promocode" that changes the logic of your checkout flow and redirects processing to a different payment processor.
And having different processors active also lets you add different payment options (eg maybe your primary processor doesn't support Alipay or Pay With Amazon). But in practice that turned out not to be a good reason for me, Paypal/Visa/MC/Amex/Optima covered almost 100% of customers anyway. For the tiny handful that use checks I can handle that manually.
It comes in really, really handy when your tiny 1-person company outlives your giant multinational payment provider. Happened to me a few times now, I'm on to my 3rd (4th?) provider in 20 years. There's a tendency for Borg-like consolidation in the payments industry (eg Avangate acquired 2Checkout, then were bought by Verifone). Anyone who lived through the Digital River era will know what I mean.
If you haven't done that code abstraction, imagine that you're suddenly unable to take any payments or make any sales and you are unable to do so until you rewrite all your payment processing code. That can be a long outage.
Having a backup is also useful when a customer's card gets declined by an overly zealous fraud screen at one provider. You can give that customer a "promocode" that changes the logic of your checkout flow and redirects processing to a different payment processor.
And having different processors active also lets you add different payment options (eg maybe your primary processor doesn't support Alipay or Pay With Amazon). But in practice that turned out not to be a good reason for me, Paypal/Visa/MC/Amex/Optima covered almost 100% of customers anyway. For the tiny handful that use checks I can handle that manually.