diff --git a/addons/payment/__openerp__.py b/addons/payment/__openerp__.py index d547a2f5568..b22e9f560f2 100644 --- a/addons/payment/__openerp__.py +++ b/addons/payment/__openerp__.py @@ -9,6 +9,7 @@ 'depends': ['account'], 'data': [ 'data/payment_acquirer.xml', + 'data/account.xml', 'views/payment_acquirer.xml', 'views/assets.xml', 'views/res_config_view.xml', diff --git a/addons/payment/data/account.xml b/addons/payment/data/account.xml new file mode 100644 index 00000000000..2c9ad492b82 --- /dev/null +++ b/addons/payment/data/account.xml @@ -0,0 +1,8 @@ + + + + Electronic + electronic + inbound + + diff --git a/addons/payment/models/account_payment.py b/addons/payment/models/account_payment.py index c9d3e610f5a..2b825b922e4 100644 --- a/addons/payment/models/account_payment.py +++ b/addons/payment/models/account_payment.py @@ -15,8 +15,17 @@ class AccountPayment(models.Model): return res + @api.onchange('payment_method_id', 'journal_id') + def _clear_electronic_payment_token(self): + if self.payment_method_id.code == 'electronic': + self.payment_token_id = self.env['payment.token'].search([('partner_id', '=', self.partner_id.id)], limit=1) + else: + self.payment_token_id = False + payment_transaction_id = fields.Many2one('payment.transaction', string="Payment Transaction") payment_token_id = fields.Many2one('payment.token', string="Saved payment token") + payment_type = fields.Selection(selection_add=[('electronic', 'Electronically receive money')]) + payment_method_id_code = fields.Char(related='payment_method_id.code') def _do_payment(self): tx_obj = self.env['payment.transaction'] @@ -37,7 +46,7 @@ class AccountPayment(models.Model): s2s_result = tx.s2s_do_transaction() - if not s2s_result or tx.state != 'done': # todo jov: what about pending transactions + if not s2s_result or tx.state != 'done': raise ValidationError(_("Payment transaction failed (%s)") % tx.state_message) self.payment_transaction_id = tx @@ -50,4 +59,3 @@ class AccountPayment(models.Model): res._do_payment() return res - diff --git a/addons/payment/views/account_payment.xml b/addons/payment/views/account_payment.xml index 07fba1d644f..884241500e6 100644 --- a/addons/payment/views/account_payment.xml +++ b/addons/payment/views/account_payment.xml @@ -18,7 +18,9 @@ - + +