Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
113 changes: 113 additions & 0 deletions website_sale_payment_term_acquirer/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
===============================
eCommerce Payment Term Acquirer
===============================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:5f3951d20ab4c2b20372ff4e42a96b709cc702321e020d6fb991dfd1eb594c09
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fe--commerce-lightgray.png?logo=github
:target: https://github.com/OCA/e-commerce/tree/18.0/website_sale_payment_term_acquirer
:alt: OCA/e-commerce
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/e-commerce-18-0/e-commerce-18-0-website_sale_payment_term_acquirer
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/e-commerce&target_branch=18.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module allows:

1. To relate payment acquirers used in checkout to payment terms: if a
payment acquirer is related to a payment term, when the payment
acquirer is selected the payment term is selected in the
corresponding SO.
2. To display the name of a specific payment acquirer in checkout with
the name of the payment term set in partner related to the user
completing the ecommerce order. This payment acquirer is not
displayed during the checkout if partner related to user does not
have a payment term set.

**Table of contents**

.. contents::
:local:

Usage
=====

Go to **Website** > **Configuration** > **Payment Acquirer**

You will find field **Payment Term** to relate a payment term to payment
acquirer alternatively, you can use flag **Display as partner's main
payment term** to: make this payment acquirer name appear in checkout
with partner’s default payment term name hide this payment acquirer from
checkout if partner’s default payment term is not set.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/e-commerce/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/e-commerce/issues/new?body=module:%20website_sale_payment_term_acquirer%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
-------

* Ooops
* Cetmix

Contributors
------------

- Ooops404 <`https://ooops404.com\\> <https://ooops404.com\>>`__
- Cetmix <`https://cetmix.com\\> <https://cetmix.com\>>`__
- `PyTech <https://www.pytech.it>`__:

- Simone Rubino <simone.rubino@pytech.it>

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

.. |maintainer-geomer198| image:: https://github.com/geomer198.png?size=40px
:target: https://github.com/geomer198
:alt: geomer198
.. |maintainer-CetmixGitDrone| image:: https://github.com/CetmixGitDrone.png?size=40px
:target: https://github.com/CetmixGitDrone
:alt: CetmixGitDrone

Current `maintainers <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-geomer198| |maintainer-CetmixGitDrone|

This module is part of the `OCA/e-commerce <https://github.com/OCA/e-commerce/tree/18.0/website_sale_payment_term_acquirer>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
2 changes: 2 additions & 0 deletions website_sale_payment_term_acquirer/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from . import controllers
from . import models
17 changes: 17 additions & 0 deletions website_sale_payment_term_acquirer/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"name": "eCommerce Payment Term Acquirer",
"summary": "eCommerce Payment Term Acquirer",
"author": "Ooops, Cetmix, Odoo Community Association (OCA)",
"version": "18.0.1.0.0",
"category": "Website",
"website": "https://github.com/OCA/e-commerce",
"maintainers": ["geomer198", "CetmixGitDrone"],
"license": "AGPL-3",
"depends": ["website_sale"],
"data": [
"views/payment_acquirer_views.xml",
"views/payment_templates.xml",
],
"demo": ["demo/demo.xml"],
"installable": True,
}
2 changes: 2 additions & 0 deletions website_sale_payment_term_acquirer/controllers/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from . import main
from . import portal
20 changes: 20 additions & 0 deletions website_sale_payment_term_acquirer/controllers/main.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
from odoo.http import request

from odoo.addons.website_sale.controllers.main import WebsiteSale


class WebsiteSale(WebsiteSale):
def _get_shop_payment_values(self, order, **kwargs):
values = super()._get_shop_payment_values(order, **kwargs)
# Get Customer Payment Term
user_payment_term = request.env.user.partner_id.property_payment_term_id
if not user_payment_term:
# Skip acquirers with active 'display_main_payment_term' key
values.update(
providers_sudo=values.get(
"providers_sudo", request.env["payment.provider"].sudo().browse()
).filtered(
lambda acq: not acq.display_main_payment_term,
)
)
return values
12 changes: 12 additions & 0 deletions website_sale_payment_term_acquirer/controllers/portal.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
from odoo.addons.sale.controllers import portal as sale_portal


class PaymentPortal(sale_portal.PaymentPortal):
def _create_transaction(self, *args, **kwargs):
sudo_transaction = super()._create_transaction(*args, **kwargs)
acquirer = sudo_transaction.provider_id
if not acquirer.display_main_payment_term and acquirer.payment_term_id:
sudo_transaction.sale_order_ids.write(
{"payment_term_id": acquirer.payment_term_id}
)
return sudo_transaction
16 changes: 16 additions & 0 deletions website_sale_payment_term_acquirer/demo/demo.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo noupdate="1">
<record id="payment_acquirer_partners_pt" model="payment.provider">
<field name="name">Partner's PT</field>
<field name="sequence">3</field>
<field name="state">enabled</field>
<field name="display_main_payment_term" eval="True" />
</record>

<record id="base.user_admin" model="res.users">
<field
name="property_payment_term_id"
ref="account.account_payment_term_end_following_month"
/>
</record>
</odoo>
86 changes: 86 additions & 0 deletions website_sale_payment_term_acquirer/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * website_sale_payment_term_acquirer
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 14.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-18 17:34+0000\n"
"Last-Translator: Ivorra78 <informatica@totmaterial.es>\n"
"Language-Team: none\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.17\n"

#. module: website_sale_payment_term_acquirer
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_payment_acquirer__display_name
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_sale_order__display_name
msgid "Display Name"
msgstr "Mostrar Nombre"

#. module: website_sale_payment_term_acquirer
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_payment_acquirer__display_main_payment_term
msgid "Display as partner's main payment term"
msgstr "Mostrar como plazo de pago principal del socio"

#. module: website_sale_payment_term_acquirer
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_payment_acquirer__id
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_sale_order__id
msgid "ID"
msgstr "ID"

#. module: website_sale_payment_term_acquirer
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_payment_acquirer____last_update
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_sale_order____last_update
msgid "Last Modified on"
msgstr "Última Modificación el"

#. module: website_sale_payment_term_acquirer
#: model:payment.acquirer,name:website_sale_payment_term_acquirer.payment_acquirer_partners_pt
msgid "Partner's PT"
msgstr "PT del Socio"

#. module: website_sale_payment_term_acquirer
#: model:ir.model,name:website_sale_payment_term_acquirer.model_payment_acquirer
msgid "Payment Acquirer"
msgstr "Método de Pago"

#. module: website_sale_payment_term_acquirer
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_payment_acquirer__payment_term_id
msgid "Payment Term"
msgstr "Términos de Pago"

#. module: website_sale_payment_term_acquirer
#: model:ir.model,name:website_sale_payment_term_acquirer.model_sale_order
msgid "Sales Order"
msgstr "Orden de Ventas"

#. module: website_sale_payment_term_acquirer
#: model_terms:ir.ui.view,arch_db:website_sale_payment_term_acquirer.payment_tokens_list_custom
msgid "Test Mode"
msgstr "Modo de Prueba"

#. module: website_sale_payment_term_acquirer
#: model_terms:payment.acquirer,auth_msg:website_sale_payment_term_acquirer.payment_acquirer_partners_pt
msgid "Your payment has been authorized."
msgstr "Su pago ha sido autorizado."

#. module: website_sale_payment_term_acquirer
#: model_terms:payment.acquirer,cancel_msg:website_sale_payment_term_acquirer.payment_acquirer_partners_pt
msgid "Your payment has been cancelled."
msgstr "Tu pago ha sido cancelado."

#. module: website_sale_payment_term_acquirer
#: model_terms:payment.acquirer,pending_msg:website_sale_payment_term_acquirer.payment_acquirer_partners_pt
msgid ""
"Your payment has been successfully processed but is waiting for approval."
msgstr "Su pago ha sido procesado con éxito pero está esperando su aprobación."

#. module: website_sale_payment_term_acquirer
#: model_terms:payment.acquirer,done_msg:website_sale_payment_term_acquirer.payment_acquirer_partners_pt
msgid "Your payment has been successfully processed. Thank you!"
msgstr "Su pago ha sido realizado correctamente. Gracias!"
87 changes: 87 additions & 0 deletions website_sale_payment_term_acquirer/i18n/it.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * website_sale_payment_term_acquirer
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 14.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2025-04-14 11:24+0000\n"
"Last-Translator: mymage <stefano.consolaro@mymage.it>\n"
"Language-Team: none\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.10.4\n"

#. module: website_sale_payment_term_acquirer
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_payment_acquirer__display_name
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_sale_order__display_name
msgid "Display Name"
msgstr "Nome visualizzato"

#. module: website_sale_payment_term_acquirer
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_payment_acquirer__display_main_payment_term
msgid "Display as partner's main payment term"
msgstr "Usa il nome del termine di pagamento cliente predefinito"

#. module: website_sale_payment_term_acquirer
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_payment_acquirer__id
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_sale_order__id
msgid "ID"
msgstr "ID"

#. module: website_sale_payment_term_acquirer
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_payment_acquirer____last_update
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_sale_order____last_update
msgid "Last Modified on"
msgstr "Ultima modifica il"

#. module: website_sale_payment_term_acquirer
#: model:payment.acquirer,name:website_sale_payment_term_acquirer.payment_acquirer_partners_pt
msgid "Partner's PT"
msgstr "Termine di pagamento del partner"

#. module: website_sale_payment_term_acquirer
#: model:ir.model,name:website_sale_payment_term_acquirer.model_payment_acquirer
msgid "Payment Acquirer"
msgstr "Acquirente pagamento"

#. module: website_sale_payment_term_acquirer
#: model:ir.model.fields,field_description:website_sale_payment_term_acquirer.field_payment_acquirer__payment_term_id
msgid "Payment Term"
msgstr "Termine di pagamento"

#. module: website_sale_payment_term_acquirer
#: model:ir.model,name:website_sale_payment_term_acquirer.model_sale_order
msgid "Sales Order"
msgstr "Ordine di vendita"

#. module: website_sale_payment_term_acquirer
#: model_terms:ir.ui.view,arch_db:website_sale_payment_term_acquirer.payment_tokens_list_custom
msgid "Test Mode"
msgstr "Modalità test"

#. module: website_sale_payment_term_acquirer
#: model_terms:payment.acquirer,auth_msg:website_sale_payment_term_acquirer.payment_acquirer_partners_pt
msgid "Your payment has been authorized."
msgstr "Il pagamento è stato autorizzato."

#. module: website_sale_payment_term_acquirer
#: model_terms:payment.acquirer,cancel_msg:website_sale_payment_term_acquirer.payment_acquirer_partners_pt
msgid "Your payment has been cancelled."
msgstr "Il pagamento è stato annullato."

#. module: website_sale_payment_term_acquirer
#: model_terms:payment.acquirer,pending_msg:website_sale_payment_term_acquirer.payment_acquirer_partners_pt
msgid ""
"Your payment has been successfully processed but is waiting for approval."
msgstr ""
"Il pagamento è stato elaborato con successo ma è in attesa di approvazione."

#. module: website_sale_payment_term_acquirer
#: model_terms:payment.acquirer,done_msg:website_sale_payment_term_acquirer.payment_acquirer_partners_pt
msgid "Your payment has been successfully processed. Thank you!"
msgstr "Il pagamento è stato elaborato con successo. Grazie!"
Loading
Loading