How does a developer add a new payment gateway or delivery company plug-in?
Gateways and delivery companies follow a plug-in pattern. A new payment gateway is added as a provider with its key/secret, fees, and BNPL flag — implemented to the gateway contract and then configurable in the admin. A new delivery company is registered with its API connection (or marked manual). For genuinely new provider *types*, a developer implements the relevant interface in…
Gateways and delivery companies follow a plug-in pattern. A new payment gateway is added as a provider with its key/secret, fees, and BNPL flag — implemented to the gateway contract and then configurable in the admin. A new delivery company is registered with its API connection (or marked manual). For genuinely new provider *types*, a developer implements the relevant interface in the Infrastructure layer and registers it; for providers of an existing type, it's configuration. This extensibility is why adding payment or delivery options is typically configuration rather than core surgery.