Configuration:
- Company Currency: MXN
- Tax 16%.
- Multicurrency, MXN and USD.
- Decimal precision: 4
- Currency Data:
MXN: rate 1.0
USD rates

| Database time | rate | Local time (Mexico) | 
| --- | --- | --- |
| 2016-09-09 00:00:01 | 0.054440 | 2016-09-08 17:00:01 |
| 2016-10-11 00:00:01 | 0.051815 | 2016-10-10 17:00:01 |

Steps to reproduce:

1. Create an invoice for 600 USD  + tax (16%) with date 09/09/16 (September 9, 2016) and when you validate in the journal entry is $12,784.7172 MXN.
3. Create a bank statement in MXN and add a line with date 11/10/16 (October 11, 2016) and amount $13,372.80 MXN.
4. When reconcile select the invoice and there is a difference ($588.0828 MXN) add a line with the difference and select an account for the difference. 
<img width="607" alt="captura de pantalla 2016-11-04 a la s 17 23 26" src="https://cloud.githubusercontent.com/assets/6758279/20025385/749605a2-a2b3-11e6-8b1a-4e9fbf1521ed.png">

**Note that the amount of difference is $588.08 in when you select the account**

5. Click on reconcile.

Expected behavior:
- Reconcile the invoice and create account move.

Current behavior:
- Raise an error  `Wrong credit or debit value in accounting entry !`

![captura de pantalla 2016-11-01 a la s 19 18 52](https://cloud.githubusercontent.com/assets/6758279/19913537/1c272866-a069-11e6-9b06-5851681c7fa5.png)

addons/account/models/account_move.py
""" Undo a reconciliation """
        if not self:
            return True
        rec_move_ids = self.env['account.partial.reconcile']
        for account_move_line in self:
            for invoice in account_move_line.payment_id.invoice_ids:
                if account_move_line in invoice.payment_move_line_ids:
                    account_move_line.payment_id.write({'invoice_ids': [(3, invoice.id, None)]})
            rec_move_ids += account_move_line.matched_debit_ids
            rec_move_ids += account_move_line.matched_credit_ids
        return rec_move_ids.unlink()
    
    
    
    
    @api.model
    def create(self, vals, apply_taxes=True):
        """ :param apply_taxes: set to False if you don't want vals['tax_ids'] to result in the creation of move lines for taxes and eventual
                adjustment of the line amount (in case of a tax included in price). This is useful for use cases where you don't want to
                apply taxes in the default fashion (eg. taxes). You can also pass 'dont_create_taxes' in context.
            :context's key `check_move_validity`: check data consistency after move line creation. Eg. set to false to disable verification that the move