Tag Archives: Cloud-Based accounting systems

Overpayment received in foreign currency

Software: MoneyWorks accounting system

You get an error of ‘Receipt amount exceeds amounts allocated to invoices’ when try applying an overpayment to a foreign currency invoice. You have to use dummy invoices to transit the additional amount received between the Overpayment Received and the Accounts Receivable account.

Assuming Singapore dollar is your base currency. You received a payment of US$10,960 from a customer for an invoice of US$10,690. This cause an overpayment of US$270 which you need to capture as an outstanding to the customer.

For illustration purpose, we create a current liability account and name it as ‘Overpayment Received’ (Check with your accountant for an appropriate name use).

To offset the full amount received, you create a dummy sales invoice of US$270 to the customer. This invoice debit USD Accounts Receivable and credit Overpayment Received account of US$270, which will add to the outstanding of US$10,690.

overpayment invoice

Then, record a receipt of US$10,960 into your USD bank account and offset both sales invoices. This receipt debits USD Bank US$10,960 and credit USD Accounts Receivable US$10,690 and US$270.


Next, record a dummy negative sales invoice (credit note) to reverse the US$270 from Overpayment Received account. This negative sales invoice debit Overpayment Received and credit USD Accounts Receivable.

credit note

You have an option to offset the credit note with the future sales invoice or send a refund to the customer. The ‘Send a refund to debtor’ feature is under the Command menu which debits the USD Accounts Receivable and credit USD Bank account.

send refund to debtor

Sign up a free demo to find out how MoneyWorks can help in managing your business finance.

Advances received from a foreign currency customer

Software: MoneyWorks accounting software

You cannot use the overpayment method on a foreign currency customer; you get a warning message ‘Receipt amount exceeds amounts allocated to invoices’ when trying to apply overpayment. Use credit note method instead if you are not using the order system.

Warning message

First, issue a sales invoice to the foreign currency customer with the ‘advances received’ account, which is a current liability account type, if your customer required an invoice to arrange payment. This invoice debits the foreign currency accounts receivable and credit advances received.

Assuming you issue a sales invoice to a foreign currency customer demanding for an advance payment of US$10,000 at an exchange rate of 1SGD:0.73USD (We will use this rate for the whole case study). This invoice

Debit USD accounts receivable 10,000
Debit USD accounts receivable~~DEL 3,698.63

Credit Advances Received 10,000
Credit Advances Received 3,698.63

Offset the sales invoice via a receipt when the customer paid; you cannot use the overpayment method but to offset the invoice completely (assuming full payment received). This receipt debit the USD bank and credit USD accounts receivable.

You can record a receipt for the advances without first creating a sales invoice if your business policy is not having advances invoice for the customer, it will debit the bank and credit advance received.

Then, use a credit note to reclassify the advances received to the accounts receivable if you prefer to view it or track from the ageing report, or when there are multiple advances received without a proper schedule.

Issue a credit note to the customer with the advances received account and enter ‘advance received’ (or something similar) at the transaction description field; it helps to differentiate from the other credit note which you may see in the ageing report.

Credit Note

The credit note (assuming same exchange rate used)

Debit Advances Received 10,000
Debit Advances Received 3,698.63

Credit USD Accounts Receivable 10,000
Credit USD Accounts Receivable~~DEL 3,698.63

Ageing report.png

Amend the ‘Type’ column formula of the statement, if you require to send statement to the customer, from:
If(Type = “DI@”, if(Gross >= 0,”Invoice”, “Credit”), if(Type = “CR@”, “Receipt”, “”))

If(Type = “DI@”, if(Gross >= 0,”Invoice”, if (Gross < 0 and Transaction.Description = “@Advances”, “Adv Rec”, “Credit”)), if(Type = “CR@”, “Receipt”, “”))

This formula prints the advances received (a credit note transaction) in the statement as ‘Adv Rec’ instead of ‘Credit’ to help reduce confusion.


You may consider engaging a MoneyWorks consultant in your area if you are having trouble customising the template.

Record a product/service invoice once you are ready to ship the goods or perform the services. The invoice (assuming goods valued at US$10,000, which is same as the advances received)

Debit USD Accounts Receivable 10,000
Debit USD Accounts Receivable~~DEL 3,698.63

Credit Sales 10,000
Credit Sales 3,698.63

You can then do a receipt to offset the product invoice and the credit note when received the payment from the customer (if the value of the product invoice is higher than the advances received), or offset the credit note with the product invoice with the contra feature from the Command menu.



1. Sales Invoice for demanding advances.

Debit Accounts Receivable
Credit Advances Received

2. Receipt. Receive payment for above invoice (1).

Debit Bank
Credit Accounts Receivable

3. Credit Note. Create a credit note to reverse the advances received to accounts receivable.

Debit Advance Received
Credit Accounts Receivable

4. Sales Invoice. Issue a sales invoice for the products/services which you sell to the customer.

Debit Accounts Receivable
Credit Sales

5. Receipt/ Contra. You can either contra or use a receipt to offset the Credit Note against the Sales Invoice (4).

6. Receipt. Do a receipt for the balance payment received from the customer for invoice (4).

Debit Bank
Credit Accounts Receivable


Note: There might be balances in the ‘advance received’ account if the exchange rate used in advances invoice and credit note (reverse of advances) is different. In this case, you have to pass a journal to transfer the balances from the advances received to the exchange gain/loss account.