Contra Settlements & AP/AR Netting Adjustments
Offset open sales invoices (AR) against vendor purchase bills (AP) without cash movements when counterparties act as both customer and supplier, with automated FX handling and balanced journal posting.
Contra Settlements & AP/AR Netting Adjustments
In commercial trading, construction, distribution, and corporate group operations, businesses frequently conduct bilateral trade with counterparties who act simultaneously as customers (purchasing goods or services) and suppliers (providing materials, subcontracted labor, or equipment).
Instead of wiring redundant cash payments back and forth—incurring banking fees, payment processing delays, and liquidity drag—BIZA provides a dedicated Contra Settlement engine (/accounting/contra-settlements). This feature allows finance teams to legally and cleanly set off outstanding Accounts Receivable (AR) against Accounts Payable (AP) without touching a bank account.
1. When to Use a Contra Settlement
Contra settlements solve everyday corporate reconciliation scenarios:
- Two-Way Trading Partners: A distributor supplies finished goods to a vendor while purchasing raw packaging materials from the same entity.
- Subcontractor Material Offsets: A general contractor purchases building materials on behalf of a drywall subcontractor, deducting the cost from the subcontractor's monthly progress payment.
- Intercompany Clearing: Sister entities within a corporate group netting cross-charges, management fees, and shared operational costs.
- Barter & Cross-Servicing Agreements: Mutually agreed trade-ins, equipment exchanges, or reciprocal consulting services.
2. Setting Up Contra Counterparties
In BIZA, counterparties maintain distinct sub-ledger identities for strict auditability while linking seamlessly for contra clearing:
- The party is registered in the Customer master with its dedicated Accounts Receivable sub-account.
- The party is registered in the Supplier master with its dedicated Accounts Payable sub-account.
- In the Contra Settlement creation workspace (
/accounting/contra-settlements/new), the accountant selects both the Customer profile and the Supplier profile. BIZA instantly queries open balances across both ledgers.
3. Allocation Engine: Oldest-First vs. Line-by-Line Selection
The workspace presents a synchronized dual-table ledger view:
- Left Table (Accounts Receivable): All unpaid and partially paid sales invoices issued to the customer, displaying invoice number, issuance date, total amount, and remaining balance.
- Right Table (Accounts Payable): All approved, unpaid purchase bills and supplier entries, displaying bill reference, entry date, total amount, and outstanding payable.
Automated Greedy Allocation (Oldest-First)
The user enters the desired Set-Off Amount (e.g., SAR 25,000.00). Clicking Auto-Allocate (Magic Wand) triggers BIZA's allocation algorithm:
- Evaluates exact-match invoices and bills where the outstanding balance matches the set-off amount.
- If no single exact match exists, it performs an oldest-first (FIFO) allocation, sequentially exhausting open balances until the entire set-off amount is absorbed on both sides.
- Both the AR total and AP total must balance exactly to the cent before submission.
Manual Line-Item Adjustments
Accountants can override automated allocations at any time by toggling checkboxes and typing exact partial deduction amounts against specific disputed or milestone invoices.
4. Multi-Currency & Realized FX Recognition
When trading across borders (e.g., customer invoices billed in USD or EUR against supplier bills booked in SAR or AED), exchange rates may have fluctuated between initial billing and settlement date:
- Settlement Exchange Rate: BIZA records the agreed cross-currency exchange rate as of the settlement voucher date.
- Realized FX Gain/Loss Posting: If the base-currency value of the cleared receivable differs from the cleared payable, BIZA automatically balances the entry by routing the variance to the designated Realized Foreign Exchange Gain/Loss account.
5. Automated Balanced Journal Posting
Upon confirmation, BIZA posts a single atomic, bankless General Ledger journal entry:
$$\begin{aligned} \text{DR} \quad & \text{Accounts Payable (2000) — Vendor Sub-Ledger} & \text{SAR } 25,000.00 \ \text{CR} \quad & \text{Accounts Receivable (1100) — Customer Sub-Ledger} & \text{SAR } 25,000.00 \end{aligned}$$
(If foreign exchange variance applies, an offsetting entry to Realized FX Gain (4900) or Realized FX Loss (5900) is included).
Downstream System Updates
- Invoice Status Update: Each linked sales invoice has its
paid_amountcredited by the allocated amount. Fully satisfied invoices transition automatically to Paid; partially satisfied invoices transition to Partial. - Purchase Bill Status Update: Each linked purchase entry has its payment status updated accordingly.
- Traceability: The settlement produces a permanent Contra Settlement Voucher (e.g.,
CS-2026-0042) with clickable hyperlinks to every underlying sales invoice, supplier bill, and posted journal entry.