A/R Down Payment
An advance payment request against a future invoice โ the customer pays up front, before goods or the final invoice.
An A/R Down Payment records an advance the customer pays up front, against invoices that will come later. It is used when money changes hands before the normal delivery-and-invoice cycle completes โ a deposit on a large order, a prepayment on a project, a booking fee. It lets the advance be tracked and later applied to the final invoice so the customer is not billed twice for the same amount.
Purpose
A down payment is created when a customer pays (or is asked to pay) in advance of the final invoice. Common cases: a deposit securing a big or custom order, a staged prepayment on a project, or any arrangement where cash is collected before goods ship.
The down payment sits outside the normal Order โ Delivery โ Invoice progression: it is a way to record and hold advance money so it can be drawn down against the eventual A/R Invoice. When the final invoice is raised, the down payment is applied to it, reducing the balance the customer still owes.
This document is the A/R Down Payment Invoice variant โ
DownPaymentType = "dptInvoice" โ a down payment that posts as an invoice-type
document (creating a tax point), as distinct from a down-payment request.
Position in the document chain
The down payment can copy from an order and is later applied against the final invoice.
flowchart TD
SO[Sales Order] -.optional.-> DP[A/R Down Payment]
DP -->|applied to| ARI[A/R Invoice]
ARI -->|customer pays balance| IP[Incoming Payment]
style SO fill:#dbeafe,stroke:#3b82f6
style DP fill:#e9d5ff,stroke:#9333ea,stroke-width:3px
style ARI fill:#fef9c3,stroke:#ca8a04
style IP fill:#fef9c3,stroke:#ca8a04- Copies from: a Sales Order (optional), or created directly.
- Becomes: applied against a later A/R Invoice, reducing the remaining balance due.
Key fields
The down payment is a Document entity with DocObjectCode = oDownPayments.
Header
| Field | Meaning |
|---|---|
DocEntry | Internal primary key. |
DocNum | User-visible document number. |
CardCode | Customer business-partner code. |
DocDate | Posting date. |
DownPaymentType | "dptInvoice" โ an invoice-type down payment (a tax point), not a mere request. |
DocTotal | Advance amount including VAT. |
VatSum | VAT on the advance. |
DownPayment | Down-payment amount tracked for later application. |
TransNum | G/L transaction number of the posting. |
DocumentStatus | bost_Open until fully drawn down. |
Lines (DocumentLines)
| Field | Meaning |
|---|---|
LineNum | 0-based line index. |
ItemCode | Item the advance relates to. |
Quantity | Quantity the advance covers. |
Price | Unit price before VAT โ the advance basis. |
VatGroup | Tax code for the advance. |
BaseType/BaseEntry/BaseLine | Link back to the source sales-order line, if copied. |
Stock and G/L effect
No stock movement. A down payment moves money, not goods โ inventory is untouched. Stock changes only when a Delivery is later posted for the actual sale.
G/L posting. An invoice-type down payment (dptInvoice) posts a journal entry
that records the advance received and the associated VAT โ the customer’s advance is
recognised as a liability of the company (money held that is not yet earned revenue),
with the tax point created. When the final A/R Invoice is issued and the down payment
applied, the advance is drawn down against it so revenue and the receivable net out
correctly and the customer is not charged the same amount twice.
Service Layer entity
| Property | Value |
|---|---|
| SL entity | DownPayments |
| Object code | oDownPayments (203) |
DownPaymentType | "dptInvoice" |
| Norma path | /b1s/v1/DownPayments |
How to create it in Norma
Use the create_ar_downpayment tool. It needs:
card_codeโ the customer’s code (e.g.C001).linesโ each anitem_code+quantity.- Optionally per line,
unit_priceโ when given it is authoritative (the down-payment amount); when omitted the line uses the item’s list price. This lets the advance be set to an agreed figure rather than the standard list price.
Use it when the user wants to record a customer down payment, advance, or prepayment
โ not for A/R invoices (use create_invoice) or credit memos (use
create_credit_memo). Because the down payment posts to the ledger, the human-review
gate applies: the tool prepares it, the review gate shows customer, lines, prices, and
total, and only on approval does the connector POST it to /b1s/v1/DownPayments. No
approval, no posting.