Skip to main content

Postpaid

In postpaid mode, customers consume services first and pay invoices later. Saved payment methods can be auto-charged when invoices are due.

Payment gateway requirement

Postpaid is available only when both are true:

  1. The payment gateway natively supports automatic charging of credit cards for recurring payments with variable amounts (for example, Stripe)
  2. Has Autocharge is enabled for that provider in CMP (Settings β†’ Billing Setup β†’ Payment Provider)

Enabling Has Autocharge in CMP alone is not enough if the gateway does not support autocharge natively. See each gateway page (for example, Stripe β€” Payment Gateway Providers).

Postpaid β€” hourly and monthly only

Use postpaid only with hourly and monthly billing cycles β€” not quarterly or longer.

RiskWhy it matters
Revenue delayWaiting months or years to collect on a long committed period
Fraud exposureCustomer can use services for the full cycle and leave before paying

For quarterly and longer cycles, use prepaid or manual. See Billing Cycles β€” payment modes by cycle.

Set payment mode: Clients β†’ Register Client (Step 2 β€” new onboarding) or Clients β†’ [Customer] β†’ Billing Setup (existing account)

Admin onboarding​

Admin selects POSTPAID when onboarding a customer via Clients β†’ Register Client.

StepAction
1Basic Details β€” enter customer information
2Payment Mode & Pricing Settings β€” select POSTPAID, Payment Method (Credit Card), assign Price Rate Card
3Quota Management β€” assign quotas
4Success β€” customer must attach credit card to activate

See Admin registration flow and Step 2 β€” Postpaid (admin).

Screenshot: Register Client β€” Step 2 Postpaid

Self-registration​

Customers can select POSTPAID on the public signup form when postpaid is enabled for Customer in Payment Mode Settings. Modes marked Recommended show a badge on the form.

StepAction
1Verify Email Address
2Complete Payment β€” select POSTPAID, add and validate credit card

Account activates once the customer attaches a saved card (requires gateway with Has Save Card and auto-charge support).

See Self-registration flow.

Billing cycles and postpaid​

Billing cycleUse with postpaid?
Hourlyβœ… Recommended β€” usage consolidated monthly; threshold limits exposure
Monthlyβœ… Recommended β€” one billing period of outstanding exposure
Quarterly❌ Not recommended
Semi-annually❌ Not recommended
Annually❌ Not recommended
Bi-annually❌ Not recommended
Tri-annually❌ Not recommended

Why quarterly and longer cycles do not fit postpaid:

  • Revenue risk β€” you may wait many months or over a year before collecting payment for a committed period
  • Fraud risk β€” a customer can provision long-cycle services, consume resources, and leave before an invoice is settled

Enable only hourly and monthly billing cycles for postpaid customers. Use prepaid or manual for quarterly and longer commitments. See Billing Cycles β€” payment modes by cycle.

Quick start
RuleBehaviour
Service creationAllowed until threshold is reached
Threshold breachInvoice generated immediately + card auto-charge attempted
Monthly renewalInvoices at month end; auto-charged to saved card
Failed chargeRetries daily per invoice_no_of_attempts β†’ then Frozen

Threshold (spending cap)​

Threshold limits exposure before the normal billing period ends.

Configure:

  • Global β€” per currency in Global Settings
  • Account-level β€” override on individual customer in Billing Setup

Purpose​

Postpaid customers can create services before paying. Threshold minimizes fraud risk by triggering early invoicing when usage reaches the cap.

Behaviour when threshold is reached​

  1. System immediately generates an invoice (even if billing cycle has not ended)
  2. System attempts to collect payment from the saved payment method
  3. Threshold resets to 0 after invoice processing
  4. Customer can continue using services until threshold is reached again

Example:

  • Customer ABC β€” postpaid, threshold $1,000
  • Usage reaches $1,000 β†’ invoice generated β†’ auto-charge attempted β†’ threshold reset
Manual mode threshold

The same threshold concept applies to Manual accounts β€” but payment is offline and admin marks paid instead of auto-charge.

Service creation​

CMP allows customers to create services as long as the defined threshold is not exceeded.

Service renewal​

At the end of each month:

  1. Invoices generated based on actual usage
  2. Invoices automatically charged to the customer's saved card

Auto-charge failure workflow​

Retry attempts​

  • System retries charging the card once per day
  • Number of attempts controlled by global setting invoice_no_of_attempts

Invoice frozen​

If all retry attempts fail:

  1. Invoice marked Frozen
  2. Notifications sent to admin and customer
  3. Email templates: FrozenInvoiceCustomerNotification, FrozenInvoiceAdminNotification

Handling frozen invoices​

ActorAction
AdminVerify with client β†’ manually unfreeze invoice β†’ system can process again
CustomerOpen Invoice Details β†’ attempt manual pay β†’ on success, services continue

Consolidated invoicing (one account, one invoice)​

Postpaid deployments often require one consolidated invoice per billing cycle β€” not separate invoices per service event.

DATE_TO_DATE billing rule exception

The DATE_TO_DATE billing rule does not support monthly consolidation.

Reason: Invoices are generated dynamically at the exact date/time each service is created β€” billing periods differ per service.

Example:

  • Service A created on 5th β†’ cycle runs 5th–5th
  • Service B created on 12th β†’ cycle runs 12th–12th
  • Each service gets its own invoice

For consolidated monthly postpaid billing, use billing rules other than DATE_TO_DATE (for example, FIXED_PRORATA). See Billing Rules.

VM upgrade billing (postpaid)​

Hourly services​

PeriodCharging
Before upgradeOriginal hourly rate β€” immediate invoice
After upgradeNew hourly rate to month end β€” included in month-end invoice

Monthly and fixed cycles​

Same proration logic as prepaid upgrades.

Postpaid upgrade invoicing:

  • One invoice at end of billing period (e.g. 1st of next month)
  • Multiple line items on that invoice β€” for example:
    • Line 1: 1st–12th old plan = $39.36
    • Line 2: 12th–30th upgrade adjustment = $29.52

Early deletion before cycle ends​

Billing cycleCharge
HourlyActual usage from creation to deletion only
Fixed cyclesFull period charged β€” no refund. Admin may grant free credits for disputes

Admin-created manual invoices​

QuestionAnswer
Auto-charge postpaid card immediately?No
Who settles?Admin marks paid, or customer pays manually in portal

Admin-created manual invoices are not processed automatically by CMP.

Disciplinary actions and renewals​

Disciplinary stateRenewal invoices
FreezeSystem continues creating renewal invoices
SuspendSystem continues creating renewal invoices
TerminatedSystem does not create renewal invoices

Full workflow: Disciplinary Actions.

Invoice settings (postpaid)​

Postpaid invoice timing is controlled by flags in Admin β†’ Invoices β†’ Invoice Settings.

Global settingPurpose
invoice_no_of_attemptsDays/attempts to retry failed card charges
delay_due_date_in_daysDelay invoice due date (0 = immediate)

Postpaid invoice generation modes​

CMP supports two postpaid invoice generation approaches. Both are controlled by invoice settings flags β€” default is false for both.

FlagDefaultWhen trueWhen false (default)
POSTPAID_ADVANCE_PRO_RATA_INVOICEfalseA pro-rata payable invoice is generated immediately at service creationUsage records are maintained during the cycle; charges are converted to a payable invoice on the next renewal. This cycle repeats
POSTPAID_ADVANCE_INVOICEfalseThe renewal payable invoice is generated on the 1st of the month (start of month)Usage records are maintained during the cycle; charges are converted to a payable invoice on the next renewal. This cycle repeats
Decide at system setup β€” StackConsole only

Both flags default to false. If your deployment needs advance postpaid invoicing, decide this during initial system setup and inform StackConsole so the flags can be configured correctly.

Changing this behaviour after go-live is not supported. Mid-stream changes can break billing workflows and cause invoice inconsistencies for existing services.

Default mode (false β€” standard postpaid)​

When both flags are false:

  1. CMP maintains usage records during the billing cycle
  2. On the next renewal, accumulated usage is converted to a payable invoice
  3. Auto-charge runs against the payable invoice
  4. The cycle repeats for each subsequent period

This is the behaviour most postpaid deployments use out of the box.

Advance mode (flags enabled)​

When advance flags are enabled, CMP generates payable invoices immediately on the advance schedule instead of deferring conversion of usage records to payable invoices.

Invoice typeWhen generated (advance mode)
Pro-rata invoiceImmediately at service creation
Renewal invoiceOn the 1st of the month (start of month) β€” not at end of month

Example β€” monthly billing cycle, service created 10 Jan 2026:

InvoiceGeneratedCovers period
Pro-rata10 Jan 2026 (immediately at creation)10 Jan – 31 Jan 2026
Next renewal1 Feb 2026 (start of month)1 Feb – 28 Feb 2026
Same advance timing as manual mode

Advance postpaid invoicing uses the same timing as Manual advance invoice settings β€” pro-rata at creation, renewal on the 1st of the month. Only the flag names differ (POSTPAID_ADVANCE_* vs MANUAL_ADVANCE_*).

Payment mode conversion

Only Manual β†’ Postpaid is supported β€” it happens automatically when the customer saves a card. Prepaid and postpaid accounts cannot be converted to another payment mode. See Changing payment mode.