Prepayment invoices
A Prepayment invoice bills a customer for a deposit against a specific, already-posted Sales invoice - a percentage or fixed amount collected up front, before the customer pays the invoice's own balance. It is raised directly from the Sales invoice it secures; there is no separate deposit workflow on a sales order.
Setup
Two things need to be configured before a Prepayment invoice can be posted:
An unearned revenue account. Navigate to Inventory management > Setup > Inventory posting profiles, open the Sales invoice tab, and select the Customer prepayment posting type. Add a row - typically with Item Code = All, since a prepayment isn't tied to a specific item - and set its Ledger account to the liability (unearned revenue / customer deposit) account the prepayment's credit side should post to. See Inventory posting profiles for the resolution hierarchy (Table → Group → All) this profile shares with every other posting type on the same tab.
Customer prepayment sits on the same Sales invoice tab as Revenue, Discount, and the other sale-related posting types, but it isn't revenue - it's unearned revenue, a liability, until the prepayment is later applied to a final invoice. Pointing it at your regular revenue account would recognize income before you've actually earned it.
Number sequences. Navigate to Accounts receivable > Setup > Accounts receivable parameters, open the Number sequences tab, and assign a number sequence to each of the four prepayment references: Prepayment invoice, Prepayment invoice voucher, Prepayment invoice reversal, and Prepayment invoice reversal voucher. The last two matter even if you never manually create a reversal - every settled Prepayment invoice generates one automatically (see "Settling and automatic application" below), and it needs its own number and voucher sequence to post.
Creating a Prepayment proposal
Open a posted Sales invoice and, from its Prepayment action group, select Prepayment proposal.
The proposal dialog shows:
- Total amount: The Sales invoice's own total amount (read-only) - the prepayment is always calculated against this.
- Prepayment type: Percent or Fixed.
- Prepayment value: A percentage (if type is Percent) or a direct amount (if type is Fixed).
- Total prepayment amount: Calculated automatically as you type, and capped at the invoice's own total - you can't propose a prepayment larger than the invoice itself.
Select Submit. This creates a new Prepayment invoice, linked to the Sales invoice by number, and takes you to its detail page.
The Prepayment invoice
The Prepayment invoice's Header tab shows the customer (Name, Invoice account), its own Date and Prepayment invoice number, Prepayment status, Currency, Total amount, Applied amount, Available amount, and Is fully applied. A Lines tab shows the single line carrying the prepayment amount.
Select Post to post it. Posting is irreversible - the invoice can no longer be modified or deleted afterwards.
Unlike a Sales invoice line, a Prepayment invoice doesn't let you pick a posting account or category directly. The credit side always resolves through the Inventory posting profile's Customer prepayment line configured above (no specific item or category) - configure it once, and every prepayment invoice posts through it.
Customer prepayment posting scenarios
The full lifecycle, worked through with round numbers. A customer orders goods worth $10,000; you agree to collect 30% ($3,000) up front as a prepayment.
1. Sales invoice posted for $10,000 - the ordinary Sales invoice posting: revenue is recognized and the customer's receivable is raised for the full amount, exactly as described in that guide.
2. Prepayment proposal and Prepayment invoice. From the posted Sales invoice, a Prepayment proposal at 30% produces a Prepayment invoice for $3,000. Posting it creates:
| Account | Debit | Credit | Posting type |
|---|---|---|---|
| Accounts Receivable (customer's posting profile account) | 3,000 | Customer balance | |
Unearned revenue (Inventory posting profile's Customer prepayment line) | 3,000 | Customer prepayment |
The customer now owes 3,000 for the prepayment specifically, and you carry a matching liability - you haven't earned this revenue yet, only received (or are owed) a deposit against it.
3. Customer pays the Prepayment invoice. Settling it through a customer payment journal, same as any other invoice:
| Account | Debit | Credit |
|---|---|---|
| Bank/Cash | 3,000 | |
| Accounts Receivable (prepayment) | 3,000 |
The Prepayment invoice's own transaction is now fully settled and closes.
Settling and automatic application
Pay off the Prepayment invoice the same way you'd settle any other customer transaction - through a customer payment journal, from Customer transactions or the prepayment invoice's own open transaction. There is no special "prepayment payment" flow.
The moment the Prepayment invoice becomes fully settled (its status moves to Closed), the system automatically - in the same request, with no background job and no manual "Apply prepayment" step to trigger:
-
Creates and posts a Prepayment invoice reversal document, mirroring the original invoice's lines and reversing its Dr Accounts Receivable / Cr Unearned revenue entries:
Account Debit Credit Posting type Unearned revenue (Inventory posting profile's Customer prepaymentline)3,000 Customer prepayment Accounts Receivable (customer's posting profile account) 3,000 Customer balance -
Settles that reversal against the original Sales invoice's own open transaction, for the full prepayment amount - reducing the Sales invoice's outstanding balance from 10,000 to 7,000. If the Sales invoice's own cash discount is still within its window at that moment, the settlement grosses the amount up proportionally so the correct cash discount is still recognized on the portion the prepayment just covered.
The customer now owes only the remaining 7,000, settled through an ordinary customer payment journal against the Sales invoice like any invoice with no prepayment at all.
Some ERPs require a manual "Apply prepayment to invoice" action once the deposit is paid. Here, settling the Prepayment invoice is that action - as soon as it closes, its amount is applied to the linked Sales invoice without further input.
Worked example from this application. Sales invoice SI-000000015 (Apex Distributors) totals AED 5,090.38. A Prepayment proposal for 10% produces a Prepayment invoice for AED 509.04. After it's posted and then settled in full:
- The Prepayment invoice's own transaction closes (balance 0).
- The settling payment closes (balance 0).
- A
Prepayment invoice reversaltransaction appears, already closed (balance 0). - Sales invoice
SI-000000015's own open balance drops from 4,465.13 to 3,956.09 - the customer now owes 509.04 less, without a separate payment against the sales invoice itself.
Viewing on the Sales invoice
The originating Sales invoice's own detail page gains a Prepayments tab once a prepayment has been raised against it, listing each applied Prepayment invoice by number, its Amount, Currency, and Application date - the date the automatic application in the previous section actually ran.