Skip to content
手册 v0.1.0 · KaiderBooks v2.0.0 · 2026-07-20

Supplier to payment

In one sentence

Register the supplier, enter a bill when their invoice arrives, approve it (which posts a journal including input GST), then allocate your payment against it — the mirror image of the sales chain, with debits and credits the other way round.


1. The chain at a glance

StepYou doThe system doesDocument status
1Create a supplierStores a contact (kind = supplier) under this client
2Enter a billSaves a draft; nothing hits the ledgerDraft
3Review, then Approve & PostAssigns the formal bill number and posts the journalAwaiting payment
4Pay, record a payment and tick the billPosts the payment journal and updates the billPartial / Paid

Step 3 is the point of no return

Before Approve & Post a bill is a draft you can freely edit or delete. Once posted it has a formal number and a journal behind it, so it can only be voided (which posts a reversing journal) — never edited.


2. Suppliers

Screenshot 01-suppliers
图 01-suppliers

A supplier is a contact record under the current client's books. You cannot raise a bill until one exists.

FieldRequiredNotes
Supplier nameShown on bills, aging and payments
UENOptional. If entered it must be a valid Singapore UEN; leave blank for overseas suppliers
Peppol IDIdentifier on the e-invoicing network
Payment terms (days)Defaults to 30; used to derive bill due dates
Email / phone / addressContact details
GST registeredEnables the GST registration number field

Each row offers Edit and Delete. Deletion is a soft delete — historical bills and journals remain intact.

Supplier or customer?

Both are "contacts", separated by kind: invoices list only customers, bills list only suppliers. If a company both buys from and sells to your client, create two records or set the kind to both.


3. Entering a bill

Screenshot 02-bill-form
1
Pick the supplier; only supplier-type contacts are listed
2
Purchases default to TX (input tax), which is claimable
图 02-bill-form
FieldNotes
SupplierOnly contacts of kind supplier under this client are listed
Bill date / due dateThe due date cannot precede the bill date; it drives aging buckets
Line itemsDescription, quantity, unit price (dollars), expense or asset account, GST code

Line accounts are limited to expense and asset types (services go to expense, equipment to assets), and the GST code defaults to TX (input tax). That is the key difference from the sales chain: sales use SR for output tax, purchases use TX for input tax, both land in the 2200 GST control account, and the F5 return nets them off automatically.

For "1 × $300 at TX": subtotal $300.00, GST 9% = $27.00, total $327.00.

Screenshot 03-bills-list
图 03-bills-list

The Source column distinguishes manually entered bills from ones captured through the document inbox.

The journal produced by Approve & Post

For a $327.00 bill (subtotal $300 + GST $27):

AccountDebitCredit
5000 Expenses300.00
2200 GST control (input)27.00
2000 Trade payables327.00

It mirrors the invoice journal exactly: receivables sit on the debit side there, payables on the credit side here; GST is credited there (output) and debited here (input).

Status decides what you can click

StatusAvailable actions
DraftEdit / Approve & Post / Delete
Awaiting paymentVoid
Partial / Paid / VoidNone

4. Aging dashboard

Screenshot 05-ap-aging
图 05-ap-aging

One row per supplier, split into four buckets by days overdue (0–30 / 31–60 / 61–90 / 90+). Rows with anything in 90+ turn red, flagging what to settle first.

The data comes from bills in Awaiting or Partial status, so a supplier disappears once everything is paid.


5. Payments and allocation

Screenshot 04-payment-modal
图 04-payment-modal

Choosing a supplier lists every awaiting or partially paid bill they have. Ticking one fills the amount with its outstanding balance; lower it for a part payment.

FieldNotes
MethodGIRO / PayNow / Bank transfer / Cheque (bank transfer by default)
Bank accountLeave empty to use the default cash account (1000)
ReferenceThe bank reference — useful later during reconciliation

Two totals sit at the bottom: the payment total (sum of ticked amounts) and the unallocated balance. If the latter turns red you have over-allocated and the confirm button stays disabled.

After posting, the bill's paid amount updates, its status becomes Partial or Paid, and AP aging drops accordingly.

Paid the wrong amount?

Click Void on the payment: the system reverses the payment journal, rolls the allocation back, and returns the bill to Awaiting. Every original record stays for audit.


6. Voiding and deleting

What you want to undoHowResult
An unposted draft billClick Delete in the listThe record disappears; no journal ever existed
A posted billClick Void in the listA reversing journal is posted, the bill becomes Void, the original journal is marked reversed
A posted paymentClick Void in the payments listReverses the payment journal and rolls the allocation back; the bill returns to Awaiting

Why posted documents cannot simply be deleted

Once a journal is in the ledger it is audit evidence and must leave a trail. The system replaces deletion with reversal: an equal-and-opposite journal cancels the effect while both entries are retained permanently, so anyone can see what was originally recorded and how it was corrected.


Next: Manual journals and reversals →