Last verified: 28 September 2026

Payment Providers Disclosure

Every payment provider Sovern supports, auto-projected from the canonical registry. Sovern owns orders / invoices / ledger / reconciliation / dunning end-to-end; only payment-execution delegates to a registered provider.

Generated from lib/registry/payment-providers-registry.ts · 1 registered provider

Payment provider abstraction (Rule 12)

Per amended AGENTS.md Rule 12: payment processing is provider-abstracted via the PaymentProviderDefinition registry. bank-transfer is the sovereign-default v1 provider; additional providers (PSD2, Stripe, Adyen, Mollie, local PSPs, card acquirers, etc.) are permitted as plug-in implementations per expression / geography but are never hardcoded, never architecture-defaulted, never assumed. Two CI guards enforce: direct provider-SDK imports are banned outside lib/modules/payment/providers/<key>/ folders, and every concrete adapter must have a corresponding registry row.

Providers

bank-transfer — Bank Transfer

sovereignty: sovereign · regions: global · currencies: EUR, USD, GBP, CHF, SEK, NOK, DKK · credentials: not required · implementation: lib/modules/payment/providers/bank-transfer

Future providers (§ZAJ horizon)

The closed registry is intentionally narrow at v1. Per the §ZAJ horizon stub, the payment-provider marketplace will land post-launch with expression-declared payment-provider requirements + on-demand registration. See docs/architecture/DECISIONS.md §ZAJ when published.