Finance — Data & read/write tables
Read/write tables & records
Convention: 📖 READ, ✏️ WRITE (insert/update).
| Area | Data |
|---|---|
| Billing | Billing, payment option, billing period/context, invoice split rule. |
| Invoice | Invoice, InvoiceLine, status, Sent/Viewed, lock/processing flags, scheduler. |
| Credit note | CreditNote, line/allocation, header attendee sync. |
| Finance transaction | Projection/search record, BookingNumbers, SearchKey, AmountDue/AmountCredited; refresh via worker. |
| Invoice email/reminder | NotificationJob (including PaymentSuccessConfirmation) ✏️ WRITE; OutgoingMessage ✏️ WRITE; Invoice.Sent ✏️ UPDATE. |
| Invoice event | Invoice_Fully_Paid ✏️ WRITE (EntityEvent) — only published on transition to Paid; hint PaymentSuccessConfirmation (810). |
| Projection sync | EntityEventScheduler ✏️ WRITE (Sync_Invoice_BookingNumbers, Refresh_FinanceTransaction_Projection) → finance-transaction-queue. |
| Settings | BusinessUnitInvoiceSetting, finance/accounting settings, invoice template. |
| Provider sync | Xero/accounting provider connection, sync status/error metadata. |
| Subsidy | SubsidyBatch, SubsidyBatchLine, SubsidyBatchLineAllocation, SubsidyAcceptance, SubsidyRate/SubsidyRateLine, SubsidyEstimation/SubsidyEstimationBatch/SubsidyEstimationAllocation ✏️ WRITE. |
| Subsidy licence | Licence (subsidy SWN/Program ID) ✏️ WRITE; site binding via Licence.OrgId. |
| Closure Day adjustment | TermBookingLine, invoice/credit-note logs, CreditNote/CreditNoteLine ✏️ WRITE; ClosureDay/balance-audit 📖 READ — issued-minus-credited, tax-aware, atomic zero line; read-only audit up to 50 closure days. |
| Invoice Manager Booking Info | Billing → booking hierarchy 📖 READ — billing-scoped, read-only, auth/BU/customer check; handoff to Booking Manager by billing filter. |
| Subscription Billing | EnrollmentBillingSchedule, SubscriptionTermBillingSchedule, SubscriptionPriceLine 📖 READ; EnrollmentInvoiceLog, Invoice, InvoiceLine ✏️ WRITE — base schedule/add-on only for the correct schedule. |
| Booking Enrichment reconciliation | TermBookingLine, TermAttendance 📖 READ; Billing, Invoice/CreditNote, TermBookingInvoiceLog/TermBookingCreditNoteLog ✏️ WRITE — charge each occurrence once. |
Data from other domains
| Domain | What Finance reads it for |
|---|---|
| Booking | Booking/order/session/extra/discount and priced Enrichment lines to generate invoices/reconciliation. |
| Subscription | Enrollment schedule, billing schedule, price line, period to issue recurring invoices; it does not take the Enrichment Booking amount. |
| Payment | Payment method/payment status to show collection status and reconcile. |
| Master Data | Account, attendee, BU, org, term/program metadata on documents. |
| Platform | EntityEvent/history for audit and notification side effects. |
External providers
| Provider | Role |
|---|---|
| Xero | Syncs invoice/credit note/payment or accounting data per provider configuration. |
| Payment providers | Windcave/Kiwi/Direct Debit affect paid state but belong to Payment. |
Related
- Architecture & data — Billing/Invoice/CreditNote relationships.
- Payment — collection & paid state.
Real-world example: Click a Booking ID with
BillingIdin Invoice Manager. → Read the full billing booking hierarchy; a row without billing does not expose out-of-scope data.