Skip to main content
Postpaid billing is how Monigo works out of the box. The customer consumes usage during a billing period, and at period end Monigo aggregates that usage, generates an invoice, finalizes the amounts, and then collects payment through your connected payment provider. The customer pays after the usage has happened — in arrears. This is the right default for most products:
  • SaaS with a card on file that you charge at the end of each cycle
  • Usage-based products billed monthly in arrears
  • Customers you trust to pay after consumption rather than pre-funding an account
If instead you want the customer to pre-fund a balance and have it debited at billing time, see Prepaid Billing. To debit a wallet continuously as usage accrues, see Real-Time Billing.
Postpaid is the default billing_mode for every plan. You don’t have to set anything — it’s what you get when you omit billing_mode. Payout plans always use the postpaid flow.

How it works

Everything in this flow runs automatically once a subscription’s period ends — you don’t trigger any of it by hand.

Setting up a postpaid plan

Because postpaid is the default, you can simply omit billing_mode. It’s shown explicitly below for clarity:
Postpaid works with every billing_period (daily, weekly, monthly, quarterly, annually) and every pricing model. See Pricing Models for the full set.

The billing cycle at period end

When a postpaid period closes, Monigo runs these steps automatically:
  1. Aggregates usage — all events ingested during the period are rolled up per metric.
  2. Calculates the invoice total — each price rule is applied to its metric’s aggregated value; VAT is added if configured.
  3. Generates a draft invoice — one line item per metric/price pair.
  4. Finalizes the invoice — amounts are locked, status moves to finalized, and invoice.finalized fires.
  5. Attempts collection — Monigo charges the customer through your connected payment provider.
  6. Advances the period — the subscription moves to its next billing period.
For the period-level view of this, see Billing Cycle.

The happy path: payment succeeds

When collection succeeds, the invoice moves to paid, paid_at is stamped, and an invoice.paid webhook fires. The resulting invoice will have: How Monigo collects, in order:
  1. Wallet — if the customer has a wallet with enough balance, it’s debited first.
  2. Saved card — otherwise the default card on file (captured from prior successful charges) is charged.
  3. Payment link — if there’s no chargeable card, Monigo emails the customer a hosted payment link to settle the invoice.
A card is added to the customer’s file automatically the first time they pay through a provider — there’s no separate “save card” step. Subsequent invoices can then be charged without customer interaction.

Handling failed payments

If collection fails (insufficient funds, expired card, provider decline), the invoice stays finalized and a payment.failed webhook fires. Monigo then begins dunning — it automatically retries collection on a fixed schedule:
payment.failed
If any retry succeeds, the invoice moves to paid and invoice.paid fires — the dunning sequence ends there.
Use the payment.failed webhook to nudge the customer early — an email or in-app banner asking them to update their card often recovers the payment before the dunning retries are exhausted.

When dunning is exhausted

If all three retries fail, Monigo suspends the subscription and fires subscription.suspended:
subscription.suspended
A suspended subscription stops accruing billable usage. To recover it, have the customer settle the outstanding invoice (update their card and retry the charge, or pay the hosted link), then resume the subscription:
Don’t void a finalized invoice just to stop dunning — voiding cancels the charge entirely and the customer is never billed for that period. Use it only when the customer genuinely should not be charged. See Invoice Lifecycle.

Webhook events

Register a webhook endpoint in the Webhooks guide to receive these events and verify their signatures.

Customer portal

In the customer portal, postpaid subscriptions show the customer their invoices (draft, finalized, paid, void), the estimated total for the current open period, and their saved payment methods. When an invoice is unpaid, the portal surfaces a Pay now action backed by your payment provider — no code required on your side.

Comparing the billing modes