diff --git a/bt5/erp5_accounting/ActionTemplateItem/portal_types/Accounting%20Transaction/create_reversal.xml b/bt5/erp5_accounting/ActionTemplateItem/portal_types/Accounting%20Transaction/create_reversal.xml
index 30244bb821e0fdc1fe07bc54ddf56d6d580a6d17..6980452f527a0c38ea7aa82b5ccbaeaabe5b4b9b 100644
--- a/bt5/erp5_accounting/ActionTemplateItem/portal_types/Accounting%20Transaction/create_reversal.xml
+++ b/bt5/erp5_accounting/ActionTemplateItem/portal_types/Accounting%20Transaction/create_reversal.xml
@@ -71,7 +71,7 @@
       <dictionary>
         <item>
             <key> <string>text</string> </key>
-            <value> <string>string:${object_url}/AccountingTransaction_createReversalTransaction</string> </value>
+            <value> <string>string:${object_url}/AccountingTransaction_viewCreateReversalTransactionDialog</string> </value>
         </item>
       </dictionary>
     </pickle>
diff --git a/bt5/erp5_accounting/ActionTemplateItem/portal_types/Payment%20Transaction/create_reversal.xml b/bt5/erp5_accounting/ActionTemplateItem/portal_types/Payment%20Transaction/create_reversal.xml
index d98b2f07f3203d34b61e75a0240cc581a6a52343..b90534ec7d24b83500680e299206b2f030638fe3 100644
--- a/bt5/erp5_accounting/ActionTemplateItem/portal_types/Payment%20Transaction/create_reversal.xml
+++ b/bt5/erp5_accounting/ActionTemplateItem/portal_types/Payment%20Transaction/create_reversal.xml
@@ -71,7 +71,7 @@
       <dictionary>
         <item>
             <key> <string>text</string> </key>
-            <value> <string>string:${object_url}/AccountingTransaction_createReversalTransaction</string> </value>
+            <value> <string>string:${object_url}/AccountingTransaction_viewCreateReversalTransactionDialog</string> </value>
         </item>
       </dictionary>
     </pickle>
diff --git a/bt5/erp5_accounting/ActionTemplateItem/portal_types/Purchase%20Invoice%20Transaction/create_reversal.xml b/bt5/erp5_accounting/ActionTemplateItem/portal_types/Purchase%20Invoice%20Transaction/create_reversal.xml
index 30244bb821e0fdc1fe07bc54ddf56d6d580a6d17..6980452f527a0c38ea7aa82b5ccbaeaabe5b4b9b 100644
--- a/bt5/erp5_accounting/ActionTemplateItem/portal_types/Purchase%20Invoice%20Transaction/create_reversal.xml
+++ b/bt5/erp5_accounting/ActionTemplateItem/portal_types/Purchase%20Invoice%20Transaction/create_reversal.xml
@@ -71,7 +71,7 @@
       <dictionary>
         <item>
             <key> <string>text</string> </key>
-            <value> <string>string:${object_url}/AccountingTransaction_createReversalTransaction</string> </value>
+            <value> <string>string:${object_url}/AccountingTransaction_viewCreateReversalTransactionDialog</string> </value>
         </item>
       </dictionary>
     </pickle>
diff --git a/bt5/erp5_accounting/ActionTemplateItem/portal_types/Sale%20Invoice%20Transaction/create_reversal.xml b/bt5/erp5_accounting/ActionTemplateItem/portal_types/Sale%20Invoice%20Transaction/create_reversal.xml
index dbb256a6523e7714ecedbd3724d4699ddb0100e9..e3c474a1b082d381f06e0891e43852e4381f8a3c 100644
--- a/bt5/erp5_accounting/ActionTemplateItem/portal_types/Sale%20Invoice%20Transaction/create_reversal.xml
+++ b/bt5/erp5_accounting/ActionTemplateItem/portal_types/Sale%20Invoice%20Transaction/create_reversal.xml
@@ -71,7 +71,7 @@
       <dictionary>
         <item>
             <key> <string>text</string> </key>
-            <value> <string>string:${object_url}/AccountingTransaction_createReversalTransaction</string> </value>
+            <value> <string>string:${object_url}/AccountingTransaction_viewCreateReversalTransactionDialog</string> </value>
         </item>
       </dictionary>
     </pickle>
diff --git a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_createReversalTransaction.xml b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_createReversalTransaction.xml
index 51a2502d50241f050a1541c083147298c96fd163..49cf25c6df4c865eb34f25c28f45aac66ed08458 100644
--- a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_createReversalTransaction.xml
+++ b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_createReversalTransaction.xml
@@ -100,7 +100,8 @@ if context.getProperty(\'payment_mode\'):\n
 \n
 line_list = context.AccountingTransaction_getAccountingTransactionLineList(\n
                 portal_type=context.getPortalAccountingMovementTypeList())\n
-line_list.reverse()\n
+if not cancellation_amount:\n
+  line_list.reverse()\n
 \n
 # guess portal_type to create lines\n
 if line_list:\n
@@ -118,7 +119,9 @@ for line in line_list:\n
   if line.getDestinationTotalAssetPrice():\n
     new_line.setDestinationTotalAssetPrice(\n
                                   - line.getDestinationTotalAssetPrice() )\n
-  \n
+\n
+  new_line.setCancellationAmount(cancellation_amount)\n
+\n
   # copy some values if they are defined explicitly on line\n
   for prop in [ \'source_section\', \'destination_section\',\n
                 \'source_payment\', \'destination_payment\', \'resource\' ]:\n
@@ -139,7 +142,7 @@ return context.REQUEST.RESPONSE.redirect("%s/view?portal_status_message=%s" %\n
         </item>
         <item>
             <key> <string>_params</string> </key>
-            <value> <string></string> </value>
+            <value> <string>cancellation_amount=False</string> </value>
         </item>
         <item>
             <key> <string>errors</string> </key>
@@ -159,12 +162,13 @@ return context.REQUEST.RESPONSE.redirect("%s/view?portal_status_message=%s" %\n
                   <dictionary>
                     <item>
                         <key> <string>co_argcount</string> </key>
-                        <value> <int>0</int> </value>
+                        <value> <int>1</int> </value>
                     </item>
                     <item>
                         <key> <string>co_varnames</string> </key>
                         <value>
                           <tuple>
+                            <string>cancellation_amount</string>
                             <string>_getattr_</string>
                             <string>context</string>
                             <string>Base_translateString</string>
@@ -192,7 +196,9 @@ return context.REQUEST.RESPONSE.redirect("%s/view?portal_status_message=%s" %\n
         <item>
             <key> <string>func_defaults</string> </key>
             <value>
-              <none/>
+              <tuple>
+                <int>0</int>
+              </tuple>
             </value>
         </item>
         <item>
diff --git a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_viewCreateReversalTransactionDialog.xml b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_viewCreateReversalTransactionDialog.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a4713d6b025dd701489c5e08ef5040328dd85ef5
--- /dev/null
+++ b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_viewCreateReversalTransactionDialog.xml
@@ -0,0 +1,155 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="ERP5Form" module="Products.ERP5Form.Form"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary/>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_objects</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>action</string> </key>
+            <value> <string>AccountingTransaction_createReversalTransaction</string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>edit_order</string> </key>
+            <value>
+              <list/>
+            </value>
+        </item>
+        <item>
+            <key> <string>encoding</string> </key>
+            <value> <string>UTF-8</string> </value>
+        </item>
+        <item>
+            <key> <string>enctype</string> </key>
+            <value> <string>multipart/form-data</string> </value>
+        </item>
+        <item>
+            <key> <string>group_list</string> </key>
+            <value>
+              <list>
+                <string>left</string>
+                <string>right</string>
+                <string>center</string>
+                <string>bottom</string>
+                <string>hidden</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>groups</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>bottom</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>center</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>left</string> </key>
+                    <value>
+                      <list>
+                        <string>your_cancellation_amount</string>
+                      </list>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>right</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>AccountingTransaction_viewCreateReversalTransactionDialog</string> </value>
+        </item>
+        <item>
+            <key> <string>method</string> </key>
+            <value> <string>POST</string> </value>
+        </item>
+        <item>
+            <key> <string>name</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>pt</string> </key>
+            <value> <string>form_dialog</string> </value>
+        </item>
+        <item>
+            <key> <string>row_length</string> </key>
+            <value> <int>4</int> </value>
+        </item>
+        <item>
+            <key> <string>stored_encoding</string> </key>
+            <value> <string>UTF-8</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Create Reversal Transaction</string> </value>
+        </item>
+        <item>
+            <key> <string>unicode_mode</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>update_action</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>update_action_title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_viewCreateReversalTransactionDialog/your_cancellation_amount.xml b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_viewCreateReversalTransactionDialog/your_cancellation_amount.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e874d703f67c02ca560c5e40d379565258f0c855
--- /dev/null
+++ b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/AccountingTransaction_viewCreateReversalTransactionDialog/your_cancellation_amount.xml
@@ -0,0 +1,171 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="CheckBoxField" module="Products.Formulator.StandardFields"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>your_cancellation_amount</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string>Use negated quantity or simply invert debit and credit</string> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <int>1</int> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <int>1</int> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Use Negated Quantities</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_accounting/bt/revision b/bt5/erp5_accounting/bt/revision
index b475567cd6f2263e95aa1ffc4106e9c13567e555..cebfe35138190d20bf85d56a06c9174306054fcd 100644
--- a/bt5/erp5_accounting/bt/revision
+++ b/bt5/erp5_accounting/bt/revision
@@ -1 +1 @@
-945
\ No newline at end of file
+946
\ No newline at end of file