Odoo is the world's easiest all-in-one management software. It includes hundreds of business apps:
CRM | e-Commerce | Accounting | Inventory | PoS | Project management | MRP | etc.
Sometimes, when a customer will pay their bills, they will pay extra, round up, or some other method where we end up getting more money than the invoice.
1) How do you handle this?
2) Where does this money go?
I have installed a module that adds a credit limit to the customer, but this isn't what I want I don't think. There should be a way to account for this extra payment and also use this at a later date in an order.
You are probably asking this question because you are using the "Register Payment" button on customer invoices. This button opens a wizard that is very simplistic and supposed to be used for very straightforward scenario. Eg: registering a payment that is exactly the amount of the invoice.
There is another way of registering a payment that allows more flexibility and control. It is by going to
Accounting > Customer Payments. There, you can create a new payment, select the customer, and the debits and credits will appear according to the invoices that are currently open as well as the credit memos that are still unused. The right way of working with that is to first enter in the field "Paid Amount" at the top the amount that you received, then to allocate the correct amounts to the correct records. Eg: if you receive one check from a customer that is supposed to pay one open invoice completely and half of a second once, you will want to specify the total amount of the check at the top and the correct allocation next to each open invoice.
So, if your "Paid amount" is equal to the total allocations, there will not be anything else to allocate anywhere and, in the example above, your 1st invoice will be fully reconciled and the second will be partially paid and still open with the other unpaid half as balance.
Now, you also have to realize that the "Paid amount" doesn't have to be total of your allocations. In that case, you will have to decide what to do with the remaining. For example, if only one open invoice exist for $1000 and you receive a wire transfer for $980 (because your bank kept a wiring fee), you will have to say that you received $980 in "Paid amount" but that the allocation is $1000 for a full reconciliation of the invoice. The system will then ask you what you want to do with the $20 difference and you will be able to specify a bank fee account to be used with the option "Reconcile payment balance". This is convenient when you need to put the remaining in 1 account. In more complex situations, you might need to put these remaining $20 in more than 1 account, for example $15 in bank fees and $5 in Paypal fees. In that case, you will have to go one level deeper, that is the accounting entries. You will go to
Accounting > Journal Entries > Journal entries and split the transaction in any number of debits and credits. You will be able to use any accounts for each line and, one thing that OpenERP even allow and which is pretty rare, is that it even allows you to specify different partners on each lines within on journal entry. That typically allows you to reconcile the payment from one partner with the invoice emitted to another one (in complex scenarios).