diff --git a/addons/payment_stripe/static/src/js/stripe.js b/addons/payment_stripe/static/src/js/stripe.js index ee8f0ff4ca6..2c22dcfa0f4 100644 --- a/addons/payment_stripe/static/src/js/stripe.js +++ b/addons/payment_stripe/static/src/js/stripe.js @@ -97,7 +97,10 @@ odoo.define('payment_stripe.stripe', function(require) { if (so_id) { so_id = parseInt(so_id[1]); } - + var invoice_id = $("input[name='return_url']").val().match(/invoices\/([0-9]+)/) || undefined; + if (invoice_id) { + invoice_id = parseInt(invoice_id[1]); + } var currency = $("input[name='currency']").val(); var currency_id = $("input[name='currency_id']").val(); @@ -127,6 +130,13 @@ odoo.define('payment_stripe.stripe', function(require) { }).then(function (data) { try { provider_form.innerHTML = data; } catch (e) {}; }); + } else if (window.location.href.includes("/my/invoices/")) { + var create_tx = ajax.jsonRpc('/invoice/pay/' + invoice_id + '/form_tx/', 'call', { + access_token: access_token, + acquirer_id: acquirer_id + }).then(function (data) { + try { provider_form.innerHTML = data; } catch (e) {}; + }); } else { var create_tx = ajax.jsonRpc('/shop/payment/transaction/' + acquirer_id, 'call', {