SPB Git

spb/air Public MIT

AIR — The Language of Accounting.

Python 100%
2.7 KB · 79 lines yaml
Raw Blame History
1# Projet : AIR — Accounting Intermediate Representation2# Auteur : Simon-Pierre Boucher3# Contact : contact@spboucher.ai4#5# Golden cases — purchases: recoverable taxes (ITC/ITR) and the ALSL6# capitalization policy (>= 5000 CAD -> equipment asset).7# Rates & rounding per docs/research/canada-gst-qst.md (verified 2026-08-05).89cases:10  - name: purchase_expense_qc11    description: "400.00 supplies on account: ITC 20.00, ITR 39.90 both recoverable (debited as receivables)"12    air:13      events:14        - id: evt_purch_supplies15          type: Purchase16          date: 2026-07-1017          parties: {buyer: "company:acme", vendor: "vendor:papco"}18          amount: {amount: "400.00", currency: CAD}19          tax: {jurisdiction: CA-QC}20    expected_entries:21      - id: je_evt_purch_supplies22        lines:23          - ["5000", debit, "400.00", CAD]24          - ["1210", debit, "20.00", CAD]25          - ["1220", debit, "39.90", CAD]26          - ["2000", credit, "459.90", CAD]2728  - name: purchase_capitalized_qc29    description: "6000.00 machine: >= 5000 threshold -> capitalized to equipment (ALSL classification policy)"30    air:31      events:32        - id: evt_purch_machine33          type: Purchase34          date: 2026-07-1135          amount: {amount: "6000.00", currency: CAD}36          tax: {jurisdiction: CA-QC}37    expected_entries:38      - id: je_evt_purch_machine39        lines:40          - ["1500", debit, "6000.00", CAD]41          - ["1210", debit, "300.00", CAD]42          - ["1220", debit, "598.50", CAD]43          - ["2000", credit, "6898.50", CAD]4445  - name: purchase_below_threshold_qc46    description: "4999.99: one cent below the threshold -> stays an expense; QST 498.749 rounds to 498.75"47    air:48      events:49        - id: evt_purch_below50          type: Purchase51          date: 2026-07-1252          amount: {amount: "4999.99", currency: CAD}53          tax: {jurisdiction: CA-QC}54    expected_entries:55      - id: je_evt_purch_below56        lines:57          - ["5000", debit, "4999.99", CAD]58          - ["1210", debit, "250.00", CAD]59          - ["1220", debit, "498.75", CAD]60          - ["2000", credit, "5748.74", CAD]6162  - name: purchase_cash_qc63    description: "100.00 paid cash immediately: QST 9.975 rounds to 9.98; credit cash not AP"64    air:65      events:66        - id: evt_purch_cash67          type: Purchase68          date: 2026-07-1369          amount: {amount: "100.00", currency: CAD}70          payment: {method: cash, immediate: true}71          tax: {jurisdiction: CA-QC}72    expected_entries:73      - id: je_evt_purch_cash74        lines:75          - ["5000", debit, "100.00", CAD]76          - ["1210", debit, "5.00", CAD]77          - ["1220", debit, "9.98", CAD]78          - ["1000", credit, "114.98", CAD]79