Recurring Payments Overview
AccruPay payment plans let you run recurring billing on top of your existing provider connection. You define a billing schedule once as a template, then create a plan for each customer. AccruPay handles the renewal charges automatically.
Two-object model
Payment Plan Template Payment Plan
──────────────────── ────────────────────────────
name: "Monthly Pro" → customer: customer-123
amount: $29.99 payment method: pm_abc123
interval: 1 month status: ACTIVE
trial: 14 days next charge: 2024-02-01
Template — a reusable billing schedule definition. Describes the amount, currency, renewal interval, trial period, and end conditions. Create one template and reuse it for any number of customers.
Plan — a live subscription instance tied to a specific customer and stored payment method. AccruPay uses the template's schedule to charge that payment method on each renewal date.
When to use AccruPay payment plans
AccruPay plans are a good fit when:
- Your billing schedule is fixed (same amount, same interval for all customers on a plan tier)
- You want the provider to manage renewal scheduling
- You do not need proration, metered billing, or seat-based pricing
Consider a custom scheduler instead when you need:
- Proration (mid-cycle upgrades/downgrades)
- Metered or usage-based billing
- Complex trial logic (e.g. credit-based trials)
- Fine-grained control over the exact charge date
For custom schedulers, use sdk.transactions.payments.paymentMethod.charge() on your own cron schedule.
What you will do
- Create a template — define the billing schedule once
- Save a customer's card — using the card checkout or save-a-card flow with
storePaymentMethod: true - Create a plan — link the template to the customer's stored payment method
- AccruPay charges automatically — renewals run on the provider side; sync or use webhooks to track status
Next steps
- Plan Templates — create and manage billing schedule definitions
- Payment Plans — create, cancel, and query customer subscriptions