Milestones, deposits and store settlement
In one sentence
v10 brings six spreadsheet-prone workflows back to the same journal truth: milestone revenue, deposit vesting, store settlement, accrual drafts, receivables alerts and the IAF audit file.
1. Milestone revenue recognition
When creating a sales invoice, select Recognition method → Milestone for a line whose revenue depends on delivered outcomes. Add each milestone label and amount. The editor shows the milestone total and its difference from the line net amount; the difference must be zero.
After the invoice is sent:
| Event | Debit | Credit |
|---|---|---|
| Invoice date | 1100 Trade Receivables, including GST | 2250 Deferred Revenue for the net amount, plus 2200 GST |
| Achievement date | 2250 Deferred Revenue | The revenue account selected on the invoice line |
Go to Books → Sales & AR → Revenue Recognition → Milestones. On a pending row, select Achieve, enter the real achievement date and confirm. A date in a locked period is rejected. An achieved milestone cannot be achieved again, so no duplicate journal is created.
EP deposit model
For an EP Package One priced at 7,000.00:
- Issue the full invoice at signing, with “EP approved” at 3,500.00 and “Delivery completed” at 3,500.00.
- The invoice posts Dr 1100 7,630.00 / Cr 2250 7,000.00 / Cr 2200 630.00.
- Record the customer's 3,500.00 deposit through the normal receipt flow. The receipt reduces receivables but does not recognise revenue.
- When the EP is approved, achieve the first milestone. Only then does 3,500.00 move from 2250 to revenue.
- Achieve the second milestone after final delivery.
Refund when the application is unsuccessful
Void the original full invoice first. The system reverses both the invoice journal and any achieved milestone journals, then record the cash refund through the payment flow. If the contract refunds only 1,500.00, do not edit the original milestone amount. Reissue the non-refundable difference as an immediate “services already performed” invoice. This prevents stranded balances in 2250 or revenue.
2. Deposit ledger
Go to Books → Settlement Centre → Deposit Ledger. The list shows total contributions, refunds, forfeitures, current balance and amounts now due. Select a counterparty to expand the vesting timeline and complete entry history.
Every action creates an append-only posted journal:
| Action | Debit | Credit |
|---|---|---|
| Contribution | Bank | 2410 Dividend Retention Deposits or 2420 Upfront Bonds |
| Refund | 2410 / 2420 | Bank |
| Forfeiture | Current 2410 / 2420 balance | 4900 Deposit Forfeiture Income |
Dividend retention uses an anniversary true-up: cumulative contributions as at the anniversary are multiplied by the unlocked percentage, less all prior refunds. The upfront bond unlocks 25% at months 15, 18, 21 and 24. The system prevents over-refunds, and a forfeiture must equal the entire current balance.
Two views, one fact
The deposit ledger and the counterparty-dimension balance in 2410/2420 come from the same journals. If they differ, investigate a manual journal that bypassed the ledger instead of posting an adjustment merely to force agreement.
3. Reading the store settlement
Go to Books → Settlement Centre → Store Settlement, then select the client and month. Turnover and net profit are derived from posted and reversed journals before the client settings are applied.
For turnover of 40,000.00, net profit of 7,600.00 and an exemption line of 5,600.00:
| Line | Formula | Amount |
|---|---|---|
| Investor base distribution | 5,600 × 51% | 2,856.00 |
| Uplift profit E | 7,600 − 5,600 | 2,000.00 |
| Investor uplift share | 2,000 × 25% | 500.00 |
| Investor total | 2,856 + 500 | 3,356.00 |
The contract example “about 2,800 + 500 = 3,300” rounds 2,856 down in its narrative. The system applies the complete 51% formula, so the accounting settlement is 3,356.00. It does not introduce a 56.00 plug to imitate an approximate example.
The operator's 30% retention applies only to the base distribution. The 25% uplift share is paid immediately in full. The statement therefore shows “70% cash from base distribution” and “uplift paid in full” as separate lines. The support-fee suggestion also checks whether account 1320 is cleared and whether operator take-home meets the threshold. Use Export XLSX to retain the monthly approval working paper.
4. Accrual rules
Go to Books → Settings → Accrual Rules:
pct_of_accounts: a percentage of the selected accounts' monthly net movement, such as turnover × 3% management fee.uplift_share: the greater of turnover × a% and uplift profit E × b%, such as the brand promotion fee.
Select Preview this month first, then Generate monthly drafts. The engine creates draft journals only and never posts automatically. Running the same rule for the same month again returns it as skipped rather than creating another draft. Review the debit, credit and amount in Journals before posting.
5. Receivables alerts
The Dashboard's Receivables Monitor card shows red and yellow counts. Open it to see each configured account grouped by dimension value:
- current balance
- most recent credit date, treated as the repayment date
- stale days
- expected monthly repayment
- amount behind schedule from the configured start date
- red, yellow or green severity
Lines without a dimension are grouped under unassigned. Alerts are calculated when the page is opened; they do not change the books or send background messages.
6. Exporting IAF
In the IAF section of Store Settlement, choose a date range and download the TXT file. It contains:
CompInfoStart: company and reporting-period detailsPurcDataStart: posted purchase bill linesSuppDataStart: posted, non-reversed sales invoice linesGLDataStart: all posted and reversed journal lines
Amounts always have two decimals, and each GL account runs forward from its opening balance. Debits and credits in GLDataEnd must agree, and every account's final balance must equal the trial balance for the same end date. Do not resave the TXT in Excel before giving it to an auditor or IRAS, because that can alter pipe fields or encoding.
7. Economic events, reconciliation and security
v11 connects store and membership systems to the same append-only journal truth. Go to Books → Sales & AR → Economic Event Review to filter incoming events, inspect their amount and operating-stat summaries, post valid rows, reject invalid rows with a reason, or post a pending batch.
Seven contract types cover voucher top-ups/redemptions, points accrual/redemption, daily sales closes, commission accruals and reversals. Re-sending the same source-system externalId is safe: the original event is returned and no second journal is created. Corrections use a reversal event rather than editing posted history.
The Stored value and points reconciliation section in Receivables Monitor compares the operator's daily reported balance with accounts 2430 and 2440. A mismatched row is red and shows the exact operator-minus-ledger difference. Investigate the underlying event before making any adjustment.
Personal two-step verification
Open the user menu → Personal security. Scan the QR code with an authenticator, retain the manual secret in an approved password manager, and enter the current six-digit code. Once enrolled, every password login requires a second code. Disabling your own 2FA also requires a current code.
Partners configure firm-wide controls in Admin → Security:
- Require two-step verification guides unenrolled users through binding during login.
- Require event HMAC signatures rejects unsigned, altered or stale event requests.
- Automatically post economic events bypasses human review; leave it off until the review owner approves.
Each switch is off during development and carries an “Enable at launch” reminder. API keys display both the API key and HMAC signing secret once at creation; copy both immediately. Integration details belong in the developer runbook, not in screenshots or support messages.
Next: GST and filing →