Skip to content

Commit a72f4e6

Browse files
committed
[ADD] payment_providers: Pay on site & Cash on delivery
task-4987726 Group bank payments (wire transfer and SDD) in a single file
1 parent 36514ea commit a72f4e6

File tree

11 files changed

+141
-93
lines changed

11 files changed

+141
-93
lines changed

content/applications/finance/accounting/payments/batch_sdd.rst

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -81,13 +81,13 @@ To create an |sdd| mandate:
8181
(:guilabel:`gear`) icon, then select :guilabel:`Mandate form`.
8282
- The :guilabel:`SDD Scheme` depends on the type of customer: Select :guilabel:`CORE` for B2C
8383
customers and :guilabel:`B2B` for B2B customers.
84-
- |sdd| mandates are created automatically for :doc:`online payments made with SDD
85-
<../../payment_providers/sdd>`.
84+
- |sdd| mandates are created automatically for :ref:`online payments made with SDD
85+
<payment_providers/bank_payments/sdd>`.
8686

8787
Once an |sdd| mandate is active, subsequent |sdd| payments can be generated via Odoo and
8888
:ref:`uploaded to your online banking interface <accounting/batch_sdd/XML>`. Customers with an
89-
active |sdd| mandate can also use this payment method for :doc:`online purchases
90-
<../../payment_providers/sdd>`.
89+
active |sdd| mandate can also use this payment method for :ref:`online purchases
90+
<payment_providers/bank_payments/sdd>`.
9191

9292
.. _accounting/batch_sdd/close-revoke-mandate:
9393

@@ -139,7 +139,7 @@ of all posted |sdd| payments to your online banking interface. To do so, follow
139139

140140
.. seealso::
141141
- :doc:`batch`
142-
- :doc:`SEPA Direct Debit for online payments <../../payment_providers/sdd>`
142+
- :ref:`SEPA Direct Debit for online payments <payment_providers/bank_payments/sdd>`
143143
- `SEPA guidelines
144144
<https://www.europeanpaymentscouncil.eu/document-library/implementation-guidelines/sepa-credit-transfer-inter-psp-implementation-guidelines>`_
145145

content/applications/finance/accounting/payments/online.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ Configuration
1919
Make sure your :doc:`payment providers are correctly configured <../../payment_providers>`.
2020

2121
.. note::
22-
By default, ":doc:`Wire Transfer </applications/finance/payment_providers/wire_transfer>`" is the
22+
By default, :ref:`Wire Transfer <payment_providers/bank_payments/wire_transfer>` is the
2323
only payment provider activated, but you still have to fill out the payment details.
2424

2525
To activate the Invoice Online Payment, go to :menuselection:`Accounting --> Configuration -->

content/applications/finance/payment_providers.rst

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@ Online payments
77
.. toctree::
88
:titlesonly:
99

10-
payment_providers/wire_transfer
11-
payment_providers/sdd
1210
payment_providers/adyen
1311
payment_providers/amazon_payment_services
1412
payment_providers/asiapay
@@ -27,6 +25,8 @@ Online payments
2725
payment_providers/stripe
2826
payment_providers/worldline
2927
payment_providers/xendit
28+
payment_providers/bank_payments
29+
payment_providers/inperson_payments
3030

3131
Odoo embeds several **payment providers** that allow your customers to pay online, on their
3232
*customer portals*, or on your *eCommerce website*. They can pay sales orders, invoices, or
@@ -52,7 +52,8 @@ Supported payment providers
5252

5353
To access the supported payment providers, go to :menuselection:`Accounting --> Configuration -->
5454
Payment Providers`, :menuselection:`Website --> Configuration --> Payment Providers`, or
55-
:menuselection:`Sales --> Configuration --> Payment Providers`.
55+
:menuselection:`Sales --> Configuration --> Payment Providers`. Click the relevant payment provider
56+
card to access and configure the related provider.
5657

5758
.. _payment_providers/online_providers:
5859

@@ -196,12 +197,20 @@ Online payment providers
196197
Bank payments
197198
-------------
198199

199-
- | :doc:`Wire Transfer <payment_providers/wire_transfer>`
200-
| When selected, Odoo displays your payment information with a payment reference. You have to
201-
approve the payment manually once you have received it in your bank account.
202-
- | :doc:`SEPA Direct Debit <payment_providers/sdd>`
203-
| Your customers can make a bank transfer to register a SEPA Direct Debit mandate and get their
204-
bank account charged directly.
200+
- | :ref:`Wire Transfer <payment_providers/bank_payments/wire_transfer>`
201+
| Odoo displays your payment information with a payment reference. You have to approve the payment
202+
manually once it has been received in your bank account.
203+
- | :ref:`SEPA Direct Debit <payment_providers/bank_payments/sdd>`
204+
| Customers can make a bank transfer to register a SEPA Direct Debit mandate and allow their
205+
account to be charged directly for future payments.
206+
207+
In-person payments
208+
------------------
209+
210+
- | :ref:`Pay on Site <payment_providers/inperson_payments/pay_on_site>`
211+
| Customers can reserve products online and pay when collecting their orders in store.
212+
- | :ref:`Cash on Delivery <payment_providers/inperson_payments/cash_on_delivery>`
213+
| Customers can pay for their orders upon delivery.
205214
206215
.. _payment_providers/add_new:
207216

@@ -483,8 +492,6 @@ payments from other payments.
483492
:alt: Define an outstanding account for a payment provider.
484493

485494
.. seealso::
486-
- :doc:`payment_providers/wire_transfer`
487-
- :doc:`payment_providers/sdd`
488495
- :doc:`payment_providers/adyen`
489496
- :doc:`payment_providers/authorize`
490497
- :doc:`payment_providers/asiapay`
@@ -500,4 +507,6 @@ payments from other payments.
500507
- :doc:`payment_providers/stripe`
501508
- :doc:`payment_providers/worldline`
502509
- :doc:`payment_providers/xendit`
510+
- :doc:`payment_providers/bank_payments`
511+
- :doc:`payment_providers/inperson_payments`
503512
- :doc:`accounting/bank`

content/applications/finance/payment_providers/sdd.rst renamed to content/applications/finance/payment_providers/bank_payments.rst

Lines changed: 54 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,55 @@
1-
=================
1+
=============
2+
Bank payments
3+
=============
4+
5+
.. seealso::
6+
:doc:`../payment_providers`
7+
8+
.. _payment_providers/bank_payments/wire_transfer:
9+
10+
Wire transfer
11+
=============
12+
13+
The **Wire Transfer** payment method allows you to provide payment instructions to customers,
14+
such as your bank details and a reference to include with the payment. These instructions are
15+
displayed after the customer selects :guilabel:`Wire Transfer` as the payment method and clicks the
16+
:guilabel:`Pay now` button at the end of the checkout process on your ecommerce website or on the
17+
customer portal.
18+
19+
.. note::
20+
- While this method is widely accessible and requires minimal setup, it is not efficient
21+
process-wise. It is recommended to set up a :doc:`payment provider <../payment_providers>`
22+
instead.
23+
- Online orders remain in the :guilabel:`Quotation sent` (i.e., unpaid order) stage until you
24+
receive the payment and manually :guilabel:`Confirm` the order.
25+
26+
To configure **Wire Transfer**, follow these steps:
27+
28+
#. :ref:`Navigate to the Wire Transfer payment provider <payment_providers/supported_providers>`.
29+
#. In the :guilabel:`Configuration` tab, select whether the memo or :guilabel:`Communication` to be
30+
displayed alongside the payment instructions should be:
31+
32+
- :guilabel:`Based on Document Reference`: the sales order or invoice number
33+
- :guilabel:`Based on Customer ID`: the customer identifier
34+
35+
#. Enable :guilabel:`Enable QR codes` to activate QR code payments.
36+
37+
.. note::
38+
:doc:`Additional accounting setup <../accounting/customer_invoices/epc_qr_code>` is required
39+
to use QR codes.
40+
41+
#. Define the payment instructions in the :guilabel:`Messages` tab. If :doc:`a bank account
42+
<../accounting/bank>` has already been defined, the account number is automatically added to the
43+
default message generated by Odoo. You can also add it afterward and update the message by
44+
clicking :guilabel:`Reload pending message`.
45+
#. Set the :guilabel:`State` field to :guilabel:`Enabled`.
46+
47+
.. tip::
48+
**Wire transfer** can be used as a template for other payment methods that are processed
49+
manually, such as checks, by renaming or duplicating it.
50+
51+
.. _payment_providers/bank_payments/sdd:
52+
253
SEPA Direct Debit
354
=================
455

@@ -24,7 +75,7 @@ customers' bank accounts based on a signed :ref:`SEPA Direct Debit mandate
2475
.. _sdd/configuration:
2576

2677
Configuration
27-
=============
78+
-------------
2879

2980
To configure **SEPA Direct Debit**, follow these steps:
3081

@@ -54,11 +105,8 @@ To configure **SEPA Direct Debit**, follow these steps:
54105
.. tip::
55106
You can also test SEPA direct debit payments using the :ref:`payment_providers/test-mode`.
56107

57-
.. seealso::
58-
:doc:`../payment_providers`
59-
60108
Online payments with |sdd|
61-
==========================
109+
--------------------------
62110

63111
Customers selecting |sdd| as a payment method are prompted to enter their IBAN to complete the
64112
:ref:`SEPA Direct Debit mandate <accounting/batch_sdd/sdd_mandates>`.
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
==================
2+
In-person payments
3+
==================
4+
5+
.. _payment_providers/inperson_payments/pay_on_site:
6+
7+
Pay on site
8+
===========
9+
10+
To allow customers to reserve products online and pay when collecting them in-store, enable and
11+
configure the :ref:`Click & Collect feature <ecommerce/shipping/instore-pickup>`. The **Pay on
12+
Site** payment provider is automatically enabled and published. To edit the default instructions
13+
shown to customers, :ref:`access the payment provider form <payment_providers/supported_providers>`
14+
and go to the :guilabel:`Messages` tab.
15+
16+
.. note::
17+
The method is only available at checkout for customers who select the **Pick up in store**
18+
delivery method.
19+
20+
.. _payment_providers/inperson_payments/cash_on_delivery:
21+
22+
Cash on delivery
23+
================
24+
25+
The **Cash on Delivery** payment method allows customers to pay for their order at the time of
26+
delivery. To make it available to customers, :doc:`navigate to the relevant delivery method form
27+
</applications/inventory_and_mrp/inventory/shipping_receiving/setup_configuration/new_delivery_method>`
28+
and enable :guilabel:`Cash on Delivery`. The **Cash on Delivery** payment provider is automatically
29+
enabled and published. To edit the default instructions shown to customers, :ref:`access the payment
30+
provider form <payment_providers/supported_providers>` and go to the :guilabel:`Messages` tab.
31+
32+
.. note::
33+
This method is only available at checkout for customers who select a delivery method with the
34+
:guilabel:`Cash on Delivery` feature enabled.
35+
36+
.. seealso::
37+
:doc:`../payment_providers`

content/applications/finance/payment_providers/wire_transfer.rst

Lines changed: 0 additions & 58 deletions
This file was deleted.
Binary file not shown.
Binary file not shown.

content/applications/inventory_and_mrp/inventory/shipping_receiving/setup_configuration/new_delivery_method.rst

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@ product, and the shipping details can be added to the delivery order.
1212
Configuration
1313
-------------
1414

15-
To configure delivery methods, go to :menuselection:`Inventory app --> Configuration --> Delivery
15+
To configure delivery methods, go to :menuselection:`Inventory --> Configuration --> Delivery
1616
Methods`.
1717

1818
.. note::
1919
If the :guilabel:`Delivery Methods` option is not available from the :guilabel:`Configuration`
2020
drop-down menu, verify whether the feature is enabled by following these steps:
2121

22-
#. Go to :menuselection:`Inventory app --> Configuration --> Settings`.
22+
#. Go to :menuselection:`Inventory --> Configuration --> Settings`.
2323
#. Scroll to the :guilabel:`Shipping` section and enable the :guilabel:`Delivery Methods` feature
2424
by checking the corresponding checkbox.
2525

@@ -33,14 +33,18 @@ a form to provide details about the shipping provider, including:
3333

3434
- :guilabel:`Delivery Method` (*Required field*): the name of the delivery method (e.g. `flat-rate
3535
shipping`, `same day delivery`, etc.).
36-
- :guilabel:`Website`: configure shipping methods for an **eCommerce** page. Select the applicable
37-
website from the drop-down menu, or leave it blank to apply the method to all web pages.
36+
- :guilabel:`Website`: configure :doc:`delivery methods for an ecommerce
37+
</applications/websites/ecommerce/shipping>`. Select the applicable website from the drop-down
38+
menu, or leave it blank to apply the method to all web pages.
3839
- :guilabel:`Provider` (*Required field*): choose the delivery service, like FedEx, if using a
3940
:ref:`third-party carrier <inventory/shipping/third_party>`. Ensure the integration with the
4041
shipping carrier is properly installed and select the provider from the drop-down menu. For more
4142
details on configuring custom shipping methods, such as :ref:`fixed price
4243
<inventory/shipping/fixed>` or :ref:`based on rules <inventory/shipping/rules>` options, refer to
4344
their respective sections below.
45+
- :guilabel:`Cash on Delivery`: allow customers to choose the :ref:`Cash on Delivery
46+
<payment_providers/inperson_payments/cash_on_delivery>` payment method when selecting this
47+
delivery option on the ecommerce website.
4448
- :guilabel:`Company`: If the shipping method should apply to a specific company, select it from the
4549
drop-down menu. Leave the field blank to apply the method to all companies.
4650
- :guilabel:`Routes`: select the applicable routes to define different delivery methods, such as
@@ -76,7 +80,7 @@ For examples on how to configure specific shipping methods, refer to the section
7680
Fixed price
7781
-----------
7882

79-
To configure a shipping price that is the same for all orders, go to :menuselection:`Inventory app
83+
To configure a shipping price that is the same for all orders, go to :menuselection:`Inventory
8084
--> Configuration --> Delivery Methods`. Then, click :guilabel:`New`, and on the shipping method
8185
form, set the :guilabel:`Provider` to the :guilabel:`Fixed Price` option. Selecting this option
8286
makes the :guilabel:`Fixed Price` field become available, which is where the fixed rate shipping
@@ -172,7 +176,7 @@ different :doc:`routes <../daily_operations/use_routes>` for it.
172176
- in-store pickup or home delivery: ship from the central warehouse, or pick from the store's
173177
stock, depending on customer selection.
174178

175-
To set up routes, go to :menuselection:`Inventory app --> Configuration --> Routes`. Click
179+
To set up routes, go to :menuselection:`Inventory --> Configuration --> Routes`. Click
176180
:guilabel:`New`, or select the desired route.
177181

178182
On the route form, in the :guilabel:`Applicable On` section, tick the :guilabel:`Shipping Methods`
@@ -183,7 +187,7 @@ checkbox.
183187

184188
Routes form with the :guilabel:`Shipping Method` checkbox ticked.
185189

186-
Then, go to :menuselection:`Inventory app --> Configuration --> Delivery Methods`, and select the
190+
Then, go to :menuselection:`Inventory --> Configuration --> Delivery Methods`, and select the
187191
desired shipping method.
188192

189193
On the shipping method form, in the :guilabel:`Routes` field, select the available fulfillment

content/applications/websites/ecommerce/shipping.rst

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -99,14 +99,14 @@ In the :guilabel:`Provider` field, select :ref:`Based on Rules <inventory/shippi
9999
Click & Collect
100100
===============
101101

102-
To allow customers to reserve products online and pay for/collect them in-store, follow these steps:
102+
To allow customers to reserve products online and collect them in-store, follow these steps:
103103

104104
#. Go to :menuselection:`Website --> Configuration --> Settings`.
105-
#. Scroll to the :guilabel:`Delivery` section, enable :guilabel:`Click & Collect`, and
105+
#. Scroll to the :guilabel:`eCommerce` section, enable :guilabel:`Click & Collect`, and
106106
:guilabel:`Save`.
107107
#. Click :icon:`fa-arrow-right` :guilabel:`Configure Pickup Locations` to :ref:`configure
108-
<inventory/shipping_receiving/configure-delivery-method>` the delivery method and ensure the
109-
:guilabel:`Provider` field is set to :guilabel:`Pick up in store`.
108+
<inventory/shipping_receiving/configure-delivery-method>` the delivery method if needed and
109+
ensure the :guilabel:`Provider` field is set to :guilabel:`Pick up in store`.
110110
#. In the :guilabel:`Stores` tab, click :guilabel:`Add a line` and select the warehouse(s) where
111111
customers can collect their orders.
112112
#. Once your setup is complete, click the :guilabel:`Unpublish` button to change the status to
@@ -122,4 +122,7 @@ To allow customers to reserve products online and pay for/collect them in-store,
122122
selector on the product page.
123123
- Each warehouse must have a **complete address** to ensure its location is accurately displayed
124124
to customers. Incomplete addresses prevent the warehouse from being shown.
125-
- The Click & Collect option is not available for services.
125+
- The :guilabel:`Click & Collect` option is not available for services.
126+
- By default, the :ref:`Pay on Site <payment_providers/inperson_payments/pay_on_site>` payment
127+
method is :ref:`enabled and published <payment_providers/add_new>` when the :guilabel:`Click &
128+
Collect` feature is activated.

0 commit comments

Comments
 (0)