diff --git a/addons/sale/models/payment.py b/addons/sale/models/payment.py
index c400e40a9833736c4e6a26e35558db0379f7b1d7..fb9806309cc9b9439812ef7a5d7024647242bfa0 100644
--- a/addons/sale/models/payment.py
+++ b/addons/sale/models/payment.py
@@ -167,6 +167,7 @@ class PaymentTransaction(models.Model):
     def render_sale_button(self, order, submit_txt=None, render_values=None):
         values = {
             'partner_id': order.partner_id.id,
+            'type': self.type,
         }
         if render_values:
             values.update(render_values)
diff --git a/addons/sale/models/sale.py b/addons/sale/models/sale.py
index 3d24696afa008a311b319574ab3855fb6e64147d..b938dbb2943c1f22a4874425af1323d1197d84c4 100644
--- a/addons/sale/models/sale.py
+++ b/addons/sale/models/sale.py
@@ -911,6 +911,7 @@ class SaleOrder(models.Model):
             'currency_id': currency.id,
             'partner_id': partner.id,
             'sale_order_ids': [(6, 0, self.ids)],
+            'type': self[0]._get_payment_type(),
         })
 
         transaction = self.env['payment.transaction'].create(vals)