Credit pool
A credit pool is a customer’s live balance of a specific credit currency. The pool is funded by grants or top-ups and reduced by metered usage in real time, with every change recorded in an append-only ledger for audit, analytics, billing sync, and revenue recognition. The pool is made up of credit blocks (also called a “grant” or “allocation”), each of which represents a separate deposit of credits into the balance. These blocks can come from different sources such as recurring plan allocations, prepaid packages, promotional credits, or manual adjustments. Each block carries its own rules and metadata, for example:- Amount – the number of credits in the block (e.g., 5,000 credits).
- Creation date – when the grant has been created.
- Effective date – when the credits become usable.
- Expiration date – when the credits expire if unused.
- Category – whether the credits are paid or promotional.
- Cost basis – the effective price per credit, used for revenue recognition.
- Priority – determines which block is consumed first when multiple are available.
- Status – the state of the block (available, expired, revoked).
- Recurring credits included in plans (e.g. annual, monthly, daily, etc.).
- Prepaid packages with fixed amounts.
- Top-ups (manual or automatic).
- Promotional credits granted for adoption.
- Manual adjustments applied by an admin.
Credit ledger
The credit ledger is an append-only, chronological record of every state change affecting credits. It provides transparency for customers and Stigg app users, and supports forensic audits, revenue recognition, and reconciliation with billing. Every change to the credit pool is captured in the ledger, including:- Credit grants – new blocks added from plans, top-ups, or promotions.
- Top-ups and adjustments – manual or automatic increases/decreases to the balance.
- Deductions – reductions from metered usage, recorded per event.
- Expirations – blocks that reached their configured expiry date.
- Revocations – credits manually voided or removed.
- Starting and ending balances for each change.
- Timestamps for when changes occurred.
- Actors (system or admin) that initiated the balance change.