diff --git a/addons/account_voucher/wizard/account_statement_from_invoice.py b/addons/account_voucher/wizard/account_statement_from_invoice.py
index 4644bdee62d99e678a12d2d3e326c67cd4a4ea1e..41d3560e2784e0291f4ae0ef3c9cb8c768142a1b 100644
--- a/addons/account_voucher/wizard/account_statement_from_invoice.py
+++ b/addons/account_voucher/wizard/account_statement_from_invoice.py
@@ -78,10 +78,11 @@ class account_statement_from_invoice_lines(osv.osv_memory):
                             'invoice_id': line.invoice.id})
             type = 'general'
             ttype = amount < 0 and 'payment' or 'receipt'
-            sign = 1
+            sign = 1 if ttype == 'receipt' else -1
             if line.journal_id.type in ('sale', 'sale_refund'):
                 type = 'customer'
                 ttype = 'receipt'
+                sign = 1
             elif line.journal_id.type in ('purchase', 'purchase_refund'):
                 type = 'supplier'
                 ttype = 'payment'