Recurring Transactions
How recurring payments differ from one-time payments and what to watch for.
Recurring transactions are charges made on a schedule using a saved payment method. They behave like regular payments but have additional compliance requirements.
Recurring vs. one-time payments
| Aspect | One-time | Recurring |
|---|---|---|
| Authorization | Per-transaction | Stored authorization |
| NACHA (ACH) | Single authorization | Reg E re-notification required on change |
| Card network | Standard | Must flag as merchant_initiated_transaction |
| Customer consent | Required at point of sale | Required at enrollment; re-notification on change |
Creating a recurring payment
Recurring payments are generated automatically by a subscription. See the Recurring Billing Guide → for creating plans and subscriptions.
For one-off charges against a saved payment method (outside a plan):
POST /v1/payments
{
"payment_method": "saved_card",
"payment_method_id": "pmid_xxxxxxxxxxxx",
"merchant_id": "mrch_xxxxxxxxxx",
"amount": 9900,
"currency": "USD",
"transaction_type": "merchant_initiated"
}Failed recurring payments
When a recurring invoice payment fails, Cresora fires recurring.invoice.failed. Your options:
- Retry — Cresora can automatically retry on a configurable schedule (smart retry)
- Notify customer — send a payment update request
- Pause subscription — until the customer updates their payment method
- Cancel subscription — after a configurable failure threshold
NACHA Reg E re-notification
For recurring ACH plans, NACHA requires re-notification when:
- The debit amount changes
- The debit date changes significantly
- Sufficient time has elapsed since the original authorization (typically 6 months for variable amounts)
Cresora fires ach.renotification_required when re-notification is needed. You must send the re-notification to the customer before the next charge.
See Recurring Billing Guide → for the re-notification flow.