Sometimes companies need to make prepayments to their suppliers. It’s not difficult to manage advance payments by utilizing modern software. In this post I explain functionality regarding advance payments (prepayments) in Microsoft Dynamics 365 for Finance and Operations (D365FO).
This post is also applicable to Dynamics AX 2012 (AX 2012).
D365FO has two options to manage advance vendor payments. One of the options is to use what is called “prepayment journal vouchers.” Another option is to use prepayment invoices. Let’s have a look at these options.
Prepayment journal vouchers
The concept of prepayments with a prepayment journal voucher is very simple. The system has the “Prepayment voucher” field in the lines of the payment journal. An accounts payable specialist creates a payment and activates this parameter for prepayments. The system, in turn, updates the posting profile and sets the value that is necessary for prepayments.

Prepayment journal vouchers can be used only if the payment amounts in the journal lines include sales tax. This setting must be specified in the payment journal header.

A prepayment posting profile must be specified in the accounts payable parameters. The system sets this profile in the payment journal line when the prepayment journal voucher is activated there.

When the payment journal is posted, the system records vendor prepayments as assets in the vendor transactions and the ledger.
When using prepayment vouchers, it is not possible to use payment proposals to create payment lines. The reason is that the system doesn’t know about the liability that needs to be paid. However, the prepayments can be marked with purchase orders.

It is also possible to mark prepayments with invoice journal lines. The system settles marked prepayments with the invoice when the invoice is posted.
Prepayment invoice
The system has an option to manage prepayments by using a functionality known as “prepayment invoices.” This option is available only if you use purchase orders. This means that is not possible to use this option if an invoice journal or invoice register is used.
Registering a prepayment
Before a prepayment invoice can be created, it is necessary to register a prepayment amount for the purchase order.

All registered prepayments can be found on the page, shown on the figure below.

Registering the prepayment doesn’t post any module or ledger transactions.
Creating a prepayment invoice
When an accounts payable specialist receives a prepayment invoice, this invoice must be recorded in the system. To do so, it is necessary to create a prepayment invoice based on the registered prepayment. You can do this in the “Open prepayments” page.

It’s also possible to create a prepayment invoice from the “Accounts payable > Purchase orders > All purchase orders” page by clicking the “Prepayment invoice” button in the “INVOICE” ribbon tab.
When a prepayment invoice is posted, the system creates a voucher. The voucher is recorded in the vendor transactions as a liability.

The system also books a liability in the ledger by crediting the summary account specified in the vendor posting profile. The system uses the posting profile that is linked to the prepayment invoice.

To define which profile must be linked to the prepayment invoice, the system uses settings in the accounts payable parameters. The system links the profile to the prepayment invoice at the moment the invoice is created.

The system also debits a prepayment account, specified in the inventory management postings.

It can be a good idea to set a meaningful prefix for the prepayment invoice voucher. This helps you to recognize prepayment transactions by looking at the voucher. In the example above, the prefix is “PPP-“. However, for example, the prefix can be “PrI-” meaning “Prepayment invoice.”
A voucher prefix is specified in a number sequence. The number sequence is set in the accounts payable parameters.

To summarize, as an outcome of posting of a prepayment vendor invoice, we have in the system a:
- Credit record in the vendor transactions for the prepayment invoice
- Credit record on the prepayment ledger account. The account is taken from the vendor posting profile
- Debit record on the prepaid expenses/assets ledger account. This account is taken from the inventory postings
Prepayment
A prepayment invoice can be paid the same way as an ordinary vendor invoice, meaning that payment proposal can be used. When a payment line for the prepayment invoice is created, the system uses the same posting profile that was used to post the prepayment invoice. Prepayment journal voucher functionality is not used for this payment.

When the payment is posted, the system creates a voucher to record prepayment in the vendor transactions and settles it with the prepayment invoice.

Regarding ledger entries, the system credits a bank account and debits a prepayment account. As a result, the system decreases payables which were booked by the prepayment invoice.

The system settles the payment and the prepayment invoice. This means that vendor transactions don’t have open balances. The information about prepayment is kept only in the ledger on the account for prepayments. This account was debited when we posted a prepayment invoice.
The number for the payment voucher is taken from the sequence specified in the journal name. It’s a good idea to specify a meaningful prefix for the voucher.

Creating vendor invoice and applying prepayment
When the vendor invoice is received and created in the system, it is necessary to decrease the amount of the invoice by the amount that was in the prepayment invoice. To do this, you need to apply a prepayment invoice on the vendor invoice.
So, let’s create a vendor invoice and link it to the purchase order which was used for prepayment.

And now let’s go to the “Apply prepayment” page, select the invoice in the left tab (#264), mark the prepayment in the right part of the page, and then hit the “Apply prepayment” button.

As a result of posting the invoice with the applied prepayment, the system creates two vouchers: an invoice voucher and a prepayment application voucher.
Invoice voucher
The invoice voucher is used to record debt and expenses/assets as a vendor invoice always does. The system posts a liability in the vendor transactions.

It also books assets/expenses and liabilities in the ledger.

To book a liability in the ledger, the system uses a vendor posting profile specified in the invoice. The posting profile is transferred to the invoice from the accounts payable parameters.

Traditionally, it is always a good idea to specify a meaningful prefix for vouchers.

Prepayment application voucher
A prepayment application voucher is necessary to debit an applied prepayment that is going to be settled with the payable.

The voucher is also used to credit a prepaid amount and debit payables in the ledger.

To debit payables, the system uses the same posting profiles as for the invoice voucher. For crediting prepayment, the system uses the ledger account that was used for prepayment in the applied prepayment invoice.
The system also settles the invoice voucher and the prepayment application voucher in the vendor transactions.
To specify a prefix for prepayment application vouchers, you need to set a proper sequence in the settings as shown below.

Summary of the module and ledger entries
The summary of the module and ledger entries regarding prepayment invoices are shown in the table below. The “Vendor balance” entries are recorded in the vendor transaction (also known as module transactions). The “Cr Vendor balance” entries are recorded as a negative amount, and the “Dr Vendor balance” as a positive amount.
Prepayment invoice | Dr Prepayment Cr Vendor balance (prepayment inv. profile) |
Payment journal | Dr Vendor balance (prepayment inv. profile) Cr Bank |
Vendor invoice | Dr Asset/expenditure Cr Vendor balance (vendor invoice profile) |
Prepayment application | Dr Vendor balance (vendor invoice profile) Cr Prepayment |
Please note that the vendor balance account specified in the prepayment invoice profile is used as a valuation account for the prepayment account. For reporting purposes in the vendor prepayments portion of the balance sheet statement, the vendor prepayment carrying amount should be calculated as a net amount of these two accounts.
Applying/reversing prepayment
You might be in a situation when a prepayment wasn’t applied at the time of posting a vendor invoice. This means that prepayment wasn’t settled with the vendor invoice. The system allows you to apply the prepayment when an invoice has already been posted. To do so, go to the “All vendors” page, select the vendor where is necessary to apply a prepayment, and click the “Apply” button on the “Invoice” tab. The system shows all open vendor invoices in the left part of the page, and prepayment invoices available for settlement in the right part.
To undo a prepayment, you can use the “Reverse” button, which is located on the “All vendors” page, in the “Invoice” tab. On the left side of the “REVERSE PREPAYMENT APPLICATION” page, the system shows all vendor invoices where prepayment invoices were applied. On the right part, the system shows applied prepayment invoices.
That is all I have regarding vendor advance payments in Microsoft Dynamics 365 for Finance and Operations.
More information about prepayments can be found in the documentation.
Please feel free to share your thoughts regarding the topic in comments.
Good details. Do you an example where one can apply multiple prepayments against a single PO? It looks like the system only accepts one prepayment at a time on the PO
Hi Kendor,
Thanks for the comment. I think you can register the total amount of all prepayments and afterwards create as many prepayment invoices as is necessary.