diff --git a/addons/payment_ogone/models/ogone.py b/addons/payment_ogone/models/ogone.py index 0a07315467f52d31944b6124c4b2cf0d3735d773..53db91d5e3496fb01a22de9cc43ce2faee49e2cf 100644 --- a/addons/payment_ogone/models/ogone.py +++ b/addons/payment_ogone/models/ogone.py @@ -264,7 +264,7 @@ class PaymentTxOgone(osv.Model): 'acquirer_id': tx.acquirer_id.id, 'acquirer_ref': alias }) - tx.partner_reference = alias + tx.write({'payment_method_id': ref}) return tx @@ -294,7 +294,7 @@ class PaymentTxOgone(osv.Model): 'date_validate': datetime.datetime.strptime(data['TRXDATE'], '%m/%d/%y').strftime(DEFAULT_SERVER_DATE_FORMAT), 'acquirer_reference': data['PAYID'], } - if data.get('ALIAS') and tx.partner_id and tx.type == 'form_save': + if data.get('ALIAS') and tx.partner_id and tx.type == 'form_save' and not tx.payment_method_id: pm_id = self.pool['payment.method'].create(cr, uid, { 'partner_id': tx.partner_id.id, 'acquirer_id': tx.acquirer_id.id, @@ -399,6 +399,14 @@ class PaymentTxOgone(osv.Model): 'date_validate': datetime.date.today().strftime(DEFAULT_SERVER_DATE_FORMAT), 'acquirer_reference': tree.get('PAYID'), }) + if tree.get('ALIAS') and tx.partner_id and tx.type == 'form_save' and not tx.payment_method_id: + pm = tx.env['payment.method'].create({ + 'partner_id': tx.partner_id.id, + 'acquirer_id': tx.acquirer_id.id, + 'acquirer_ref': tree.get('ALIAS'), + 'name': tree.get('CARDNO'), + }) + tx.write({'payment_method_id': pm.id}) if tx.callback_eval: safe_eval(tx.callback_eval, {'self': tx}) return True