Skip to content

Commit 1c0b0ae

Browse files
[IMP] Subscriptions: Renew subscriptions page rework
closes #14768 Signed-off-by: Thomas Jude Cavazos (thjud) <thjud@odoo.com> Co-authored-by: Felicia Kuan <feku@odoo.com>
1 parent eb79372 commit 1c0b0ae

File tree

6 files changed

+61
-90
lines changed

6 files changed

+61
-90
lines changed

content/applications/finance/accounting/payments.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,8 @@ payment method.
9191

9292
.. _accounting/payments/from-invoice-bill:
9393

94+
.. _finance/accounting/register-payment-invoice-bill:
95+
9496
Registering payment from an invoice or bill
9597
===========================================
9698

content/applications/sales/sales/sales_quotations/create_quotations.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,6 +282,8 @@ Notes tab
282282
In the :guilabel:`Notes` tab of the quotation form, enter any specific internal notes about the
283283
quotation and/or customer, if desired.
284284

285+
.. _sales/sales_quotations/send-and-confirm:
286+
285287
Sending and confirming quotations
286288
=================================
287289

content/applications/sales/subscriptions/renewals.rst

Lines changed: 57 additions & 90 deletions
Original file line numberDiff line numberDiff line change
@@ -2,127 +2,94 @@
22
Renew subscriptions
33
===================
44

5-
The foundation of any subscription business model is recurring payments. This is when customers
6-
reliably pay a regular amount at specific intervals, in exchange for access to a subscription
7-
product or service.
8-
9-
Subscription renewal is the process customers follow when they willingly choose to continue
10-
participating in, and paying for, a subscription product or service.
11-
12-
Subscribers experience the renewal process at different intervals -- weekly, monthly, annually, etc.
13-
-- depending on the duration of the agreed-upon contract.
14-
15-
Most companies that offer subscriptions prefer to automate the renewal process for customers.
16-
However, manual subscription renewals are still used in some cases.
5+
Subscription renewal is the process customers follow when they willingly choose to continue a
6+
subscription product or service. Subscribers go through the renewal process at different intervals
7+
-- weekly, monthly, annually, etc. -- depending on the duration of the agreed-upon contract. Most
8+
companies that offer subscriptions prefer to automate the renewal process for customers. However,
9+
manual subscription renewals are still used in some cases.
1710

1811
With the Odoo **Subscriptions** application, a company can manage all of its subscriptions in one
19-
place. Renewals can be processed automatically, or manually, include additional products or upsells
20-
per renewal order, and be filtered in batch views to quickly locate customers who need to renew
21-
their subscriptions.
12+
place. Renewals can be processed automatically or manually, include additional products or upsells
13+
per renewal order, and be filtered in batch views to locate customers who need to renew their
14+
subscriptions.
2215

23-
Subscription renewals
24-
=====================
16+
Create a renewal manually
17+
=========================
2518

26-
In order to renew a subscription, a quotation with a subscription product **must** be confirmed,
27-
with a configured *Recurring Plan* selected.
19+
In order to create a renewal quotation, there are certain prerequisites that a subscription must
20+
meet.
2821

29-
To open a subscription quotation, navigate to :menuselection:`Subscriptions app --> Subscriptions
30-
--> Quotations`, and select the desired quotation from the list. Or, create a new one by clicking
31-
:guilabel:`New` to open a new quotation form.
22+
- A quotation with a subscription product must be confirmed.
23+
- A configured *recurring plan* must be selected.
24+
- Payment from the customer for the initial subscription must be invoiced and registered.
3225

33-
.. note::
34-
- Only a singular product is required.
35-
- A subscription service counts as a product, as it is considered a recurring product.
36-
37-
Subscription quotations **must** be confirmed, and payment from the customer for the
38-
initial subscription **must** be invoiced and registered in order to successfully open a *Renewal
39-
Quotation*.
40-
41-
.. seealso::
42-
For more information on the above process of confirming quotations and invoicing payments,
43-
see:
44-
- :doc:`../sales/sales_quotations/create_quotations`
45-
- :doc:`../sales/sales_quotations/get_paid_to_validate`
46-
47-
Once the payment from the subscription quotation is confirmed, the quotation turns into a sales
48-
order. An :guilabel:`In Progress` tag is applied to the sales order form, and a series of buttons
49-
also appear at the top of the sales order, including a :guilabel:`Renew` button.
26+
To check if an existing subscription quotation meets the prerequisites, navigate to
27+
:menuselection:`Subscriptions app --> Subscriptions --> Quotations` and select the desired quotation
28+
from the list. Properly configured subscriptions show as being in the :guilabel:`Sales Order` stage,
29+
have an :guilabel:`In Progress` tag, and have the :guilabel:`Renew` button in the row of buttons
30+
directly above the order form.
5031

5132
.. image:: renewals/renew-button.png
5233
:align: center
5334
:alt: Renew button on subscription sales order with Odoo Subscriptions.
5435

5536
When the :guilabel:`Renew` button is clicked, Odoo instantly presents a new renewal quotation,
56-
complete with a :guilabel:`Renewal Quotation` tag.
57-
58-
.. image:: renewals/renewal-quotation.png
59-
:align: center
60-
:alt: Renewal quotation in the Odoo Subscriptions application.
61-
62-
From here, a standard sales flow can occur to confirm the quotation. This typically begins
63-
by clicking :guilabel:`Send by Email`, which sends a copy of the quotation to the customer, by
64-
email, for them to confirm, and eventually, pay for.
65-
66-
.. note::
67-
In the chatter of the :guilabel:`Renewal Quotation`, it is mentioned that this subscription is
68-
the renewal of the subscription from the original sales order.
37+
complete with a :guilabel:`Renewal Quotation` tag. Important reference information like the start
38+
date and next invoice date are automatically added to the renewal quotation's chatter.
6939

70-
Once the :guilabel:`Renewal Quotation` is confirmed, it becomes a sales order, and a
71-
:guilabel:`Sales History` smart button appears at the top of the page.
40+
From here, follow the standard sales flow to :ref:`confirm the quotation
41+
<sales/sales_quotations/send-and-confirm>`, :doc:`invoice the order
42+
<../../sales/sales/invoicing/invoicing_policy>`, and :ref:`register payment
43+
<finance/accounting/register-payment-invoice-bill>`.
7244

73-
.. image:: renewals/sales-history-smart-button.png
74-
:align: center
75-
:alt: Sales History smart button in the Odoo Subscriptions application.
76-
77-
When that :guilabel:`Sales History` smart button is clicked, Odoo reveals a separate page,
78-
showcasing the different sales orders attached to this subscription, along with their individual
79-
:guilabel:`Subscription Status`.
45+
Once the renewal quotation is confirmed, it becomes a sales order and a :icon:`fa-usd`
46+
:guilabel:`Sales History` smart button appears at the top of the page. When the :icon:`fa-usd`
47+
:guilabel:`Sales History` smart button is clicked, Odoo loads a new page showcasing the different
48+
sales orders attached to this subscription, along with their individual :guilabel:`Subscription
49+
Status`.
8050

8151
.. image:: renewals/sales-history-page.png
8252
:align: center
8353
:alt: Renewal quotation in the Odoo Subscriptions application.
8454

85-
Additionally, once the :guilabel:`Renewal Quotation` is confirmed, an :guilabel:`MRR` smart button
86-
also appears at the top of the sales order.
87-
88-
.. image:: renewals/mrr-smart-button.png
89-
:align: center
90-
:alt: MRR smart button in the Odoo Subscriptions application.
91-
92-
When clicked, Odoo reveals an :guilabel:`MRR Analysis` page, detailing the monthly recurring revenue
93-
related to this specific subscription.
94-
9555
.. important::
96-
On rare occasions, automatic payment can fail, which results in a *Payment Failure* tag on the
97-
top-right of the sales order, if there is an error in the payment method.
56+
On rare occasions, automatic payments can fail to register properly, which results in a
57+
:guilabel:`Payment Failure` tag on the sales order and the :guilabel:`Contract in exception`
58+
checkbox being automatically ticked in the :guilabel:`Subscription` section of the sales order's
59+
:guilabel:`Other Info` tab.
9860

99-
This is done to prevent the system from charging the customer again the next time a scheduled
100-
action is run. Because the status of the payment is unknown, Odoo requests a manual operation to
101-
check if the payment has been made, before the payment can be used again.
61+
Being marked :guilabel:`Contract in exception` prevents scheduled actions from running, which
62+
keeps the system from accidentally double-charging the customer if the automatic payment actually
63+
went through. Because the status of the payment failed to register with the system, users must
64+
manually check if the payment has been made before automatic payments and other scheduled actions
65+
can resume.
10266

10367
To do this, navigate to :menuselection:`Subscriptions app --> Subscriptions --> Quotations`.
104-
Click into the desired subscription, then check the *Chatter* to see if the payment was made.
68+
Click into the desired subscription, then check the Chatter to see if the payment was made.
10569

106-
If the payment was **not** made, first enter :doc:`debug mode <../../general/developer_mode>`.
70+
If the payment *was not* made, first enter :doc:`developer mode <../../general/developer_mode>`.
10771
Then, click the :guilabel:`Other Info` tab, and untick the checkbox next to :guilabel:`Contract
108-
in exception`. Reload the sales order, and the :guilabel:`Payment Failure` tag is gone.
72+
in exception`. Reload the sales order and confirm that the :guilabel:`Payment Failure` tag is
73+
gone.
10974

110-
If the payment **was** made, a new invoice must be made and posted manually. This automatically
111-
updates the next invoice date of the subscription. Once created, enter :doc:`debug mode
112-
<../../general/developer_mode>`, and navigate to the new sales order. Click the :guilabel:`Other
113-
Info` tab, and untick the checkbox next to :guilabel:`Contract in exception`.
114-
Reload the sales order, and the :guilabel:`Payment Failure` tag is gone.
75+
If the payment *was* made, a new invoice must be made and posted manually. This automatically
76+
updates the next invoice date of the subscription. Once the invoice is created, enter
77+
:doc:`developer mode <../../general/developer_mode>` and navigate to the new sales order. Click
78+
the :guilabel:`Other Info` tab, and untick the checkbox next to :guilabel:`Contract in
79+
exception`. Reload the sales order and confirm that the :guilabel:`Payment Failure` tag is gone.
11580

11681
.. figure:: renewals/contract-in-exception.png
11782
:align: center
118-
:alt: The "contract in exception" option selected with the "payment failure" tag shown.
83+
:alt: The contract in exception option selected with the payment failure tag shown.
11984

120-
The :guilabel:`contract in exception`` option selected with the :guilabel:`payment failure`
121-
tag shown.
85+
The :guilabel:`Contract in exception` option selected with the :guilabel:`Payment Failure` tag
86+
shown.
12287

123-
In both cases, once the :guilabel:`Contract in exception` option is no longer selected, Odoo
124-
handles renewals automatically again. If the subscription remains in *payment failure*, it is
125-
skipped by Odoo until the sales order is closed.
88+
In both cases, once the :guilabel:`Contract in exception` checkbox is no longer ticked, Odoo
89+
handles renewals automatically again. If the subscription remains in :guilabel:`Payment Failure`,
90+
it is ignored by Odoo until the sales order is closed.
12691

12792
.. seealso::
12893
- :doc:`../subscriptions`
94+
- :doc:`../sales/sales_quotations/create_quotations`
95+
- :doc:`../sales/sales_quotations/get_paid_to_validate`
Binary file not shown.
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)