Fewer involuntary cancellations
Network-token refresh, PSD2 exemption logic and reason-coded retries recover renewals the incumbent quietly loses.
Most subscription revenue does not leak at signup. It leaks at the renewal — a card expires, a debit-order mandate lapses, an issuer declines for a coded reason nobody reads. BazPay runs recurring payment processing across cards, BACS Direct Debit and open banking on one contract. Mandates, SCA exemptions, reason-coded retries and cancellation flows sit inside the gateway. Your app listens for the webhook.
The gains show up in the second month, not the first. These four points are what finance and product teams point to when they compare renewal cohorts against their incumbent processor.
Network-token refresh, PSD2 exemption logic and reason-coded retries recover renewals the incumbent quietly loses.
Recurring card payment, BACS Direct Debit and open-banking A2A run through the same subscription object.
debit-order mandates and card credentials live on the gateway. Your database keeps identifiers, not sensitive data.
Every subscription state change — pause, cancel, refund — is logged, timestamped and pushed by signed webhook.
Regional payers do not all pay the same way. Pick the rail per plan, per country, or per payer — the billing logic above stays identical, and swapping rails on an existing subscription is a single API call.
MIT
The classic renewal. Fast, and the widest reach.
Mandate
Lower cost per charge. Best for long contracts.
Account-to-account
For renewals a payer prefers to approve each time.
Four states. Every transition fires a signed webhook the moment it happens, and every invoice line stays linked to the plan that generated it.
The payer authenticates through 3-D Secure 2.2 or signs a debit-order mandate. We store the token, never a raw PAN.
Charges run on your billing date. Trials, proration and mid-term plan changes post the correct amount.
Soft declines go into a reason-coded retry queue. Hard declines skip retries and enter dunning.
Upgrades, pauses and cancellations post back the same day. Refunds and credit notes stay linked to the plan.
One subscriptions endpoint. One plans endpoint. One
customers endpoint. Idempotency keys make every write safe to retry, and
the response shape stays constant whether the plan bills a recurring card payment or a
debit-order mandate.
POST /v1/subscriptions
Idempotency-Key: sub-1a4c-9f22
{
"customer": "cus_5F9k",
"plan": "plan_pro_monthly",
"payment_method": "card",
"trial_days": 14,
"start_date": "2026-08-10",
"metadata": { "team_id": "TEAM-9142" }
} The response returns the subscription id, the next billing date, the current period end and the stored payment-method reference. See the full schema in the API reference.
A blind retry loop annoys issuers and burns your attempt budget. Our engine reads the decline code first. Soft declines get another try on a coded schedule. Hard declines stop at once and go to a dunning email.
Every attempt is logged with its code, so you can see which issuers decline most and at what time of the month.
Track renewals in real-time analytics| Decline reason | Class | Next action |
|---|---|---|
| Insufficient funds | Soft decline | Retry on a schedule tuned to payday cycles |
| Card expired | Soft decline | Try the network token, then request an update |
| Do not honour | Soft decline | Retry within the scheme's attempt limit, then escalate |
| Stolen or lost card | Hard decline | Stop retrying, email the payer for a new method |
| Mandate cancelled | Return code | Pause the subscription and flag it in the dashboard |
| 3-D Secure required | Auth required | Step up the next attempt through 3-D Secure 2.2 |
Attempt limits are set by the card schemes. We stay inside them and never add attempts of our own.
Recurring payments are governed work. These four points decide whether an automatic recurring payment goes through, and how you defend it later.
The first charge carries strong customer authentication. Later PSD2 recurring payments run as MIT under an approved exemption.
We store the mandate reference, signing date and payer details. Your database never has to.
BazPay holds PCI DSS Level 1 on the gateway. You keep merchant SAQ A and zero card-data scope.
We underwrite a defined list of merchant categories. Renewal approval rates hold steady because the book stays clean.
Fraud checks run on renewals too. See anti-fraud controls and checkout products for the pieces on either side of billing.
Every capability below is available on the standard integration — no enterprise-tier gate on the primitives you need to run a subscription book.
Fixed, tiered, per-seat or usage-based plans. Mid-cycle upgrades prorate to the day.
Free or paid trials with automatic conversion. Grace windows on failed renewals are yours to configure.
Discount codes, credit notes and off-cycle top-ups sit on the same subscription object.
Every subscription and invoice event ships with an HMAC-SHA256 signature and a timestamp header.
Retry any create or update with the same key — you will never double-bill on a network blip.
Scheme fees, interchange and gateway margin split on every recurring card payment line.
Charge in EUR and more than twenty presentment currencies; settle to your local settlement account.
Payers or your support agents cancel or pause a plan without a code deploy — every action is audit-logged.
BazPay is a regional gateway. If your business bills predictable renewals with a clean chargeback profile, our underwriting is built for you.
Out of scope: adult, gambling, CBD, nutraceutical, forex, CFD, crypto-exchange, debt-collection and MLM. We do not board those models on any rail.
Monthly and annual plans, seat upgrades, trials, dunning and mid-cycle proration for product-led SaaS.
Memberships, paywall unlocks and pay-as-you-read top-ups for newspapers, magazines and paid newsletters.
Replenishment boxes, membership pricing and loyalty programs for DTC stores on WooCommerce, Magento 2, PrestaShop and Shopware.
Monthly retainers, capped-hour packages and per-project subscriptions billed on card or SEPA Instant.
Migrating an existing book of subscribers? Write to [email protected] and we will map your plans before you move a single payer.
Building a custom flow? Check WooCommerce, Magento 2, PrestaShop and Shopware plugin coverage first — most subscription models are covered without code.
Recurring payment processing is the collection of charges that run on a schedule against a stored payment credential or mandate. BazPay stores the credential, runs the charge, applies PSD2 exemption logic, retries soft declines by reason code and pushes every state change by signed webhook. Card, BACS Direct Debit and open banking share the same subscription object.
A cancellation can come from your app, from the BazPay dashboard, or from the payer's issuer as a stop instruction. Cancelling a subscription immediately halts the retry queue, stops future authorisations against the stored token or mandate, and fires a subscription.cancelled webhook. If the payer asks to cancel a recurring payment mid-cycle, you decide whether to prorate or credit — both flows are supported.
Recurring card payment on Visa, Mastercard, Cartes Bancaires and eftpos; BACS Direct Debit under CORE and B2B mandates; and open-banking A2A renewals where the payer prefers per-charge approval. Wallets (Apple Pay, Google Pay) work on top of the card rail because the wallet returns a network token.
Under PSD2, the first charge carries strong customer authentication. Subsequent renewals run as merchant-initiated transactions (MIT) under a stored consent. Our engine applies transaction-risk-analysis, trusted-beneficiary or low-value exemptions where the rules allow, so the payer sees a challenge only on the initial authorisation or when the issuer forces a step-up.
For cards, the initial authorisation captures the shopper's 3-D Secure response plus a consent to charge on file; that receipt is stored against the customer object. For SEPA Instant, the payer signs a mandate — CORE for consumers or B2B for businesses — and BazPay stores the mandate ID, signing date, settlement account and payer identity. Both records are exportable for audit.
The card schemes cap the number of attempts per declined transaction, and we stay inside that cap. Soft declines are retried by reason code on a schedule tuned to payday cycles; hard declines stop immediately and enter dunning. The engine never adds attempts of its own on top of scheme limits.
Yes. A payer can hold more than one payment method against the same plan. If the primary recurring card payment fails, the engine can fall back to the debit-order mandate. The billing schedule and invoice numbering stay consistent.
A non recurring payment is a single authorisation with no stored consent to charge again — a one-off purchase, a one-time top-up, a manual invoice paid once. A recurring payment references a subscription or a stored mandate and is expected to fire again on a schedule. The dashboard filters both separately and reporting keeps them on distinct lines.
BazPay ships maintained plugins for WooCommerce, Magento 2, PrestaShop and Shopware, each with subscription flows enabled. For custom stacks, the REST API and signed webhooks are the same primitives our plugins use, so a hand-rolled integration reaches parity in days rather than weeks. We do not ship consumer-facing mobile payment apps for merchants; the merchant interface is the web dashboard and the API.
Yes. Hosted checkout, hosted fields, receipts and shopper-facing dunning emails are localised for Dutch-speaking regional markets. A recurring payment in Dutch reads correctly for payers in the Netherlands and localised for date, currency and mandate wording where SEPA schemes require it.
Yes. Plans, proration, trials, invoices, dunning and cancellations all run inside BazPay. Webhooks push every state change to your app so your database can stay thin. Merchants that already run a billing system keep it and use BazPay purely as the recurring payment processor beneath it.
No. BazPay is a regional gateway with a defined acceptance list. Our subscription book is scoped to e-commerce, subscription software, digital publishers and professional services. We do not board adult, gambling, CBD, nutraceutical, forex, CFD, crypto-exchange, debt-collection or MLM models.
Build a full billing cycle against the live API today. Model a trial, a proration event and a failed renewal — no card needed, no sales call first.