22Renew 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.
17-
18- 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
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.
10+
11+ With the Odoo :guilabel: `Subscriptions ` application, a company can manage all of its subscriptions
12+ in one place. Renewals can be processed automatically or manually, include additional products or
13+ upsells per renewal order, and be filtered in batch views to locate customers who need to renew
2114their subscriptions.
2215
2316Subscription renewals
2417=====================
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 renew a subscription, a quotation with a subscription product *must * be confirmed and
20+ a configured :guilabel: ` Recurring Plan ` must be selected.
2821
2922To 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
23+ --> Quotations ` and select the desired quotation from the list. Or, create a new one by clicking
3124:guilabel: `New ` to open a new quotation form.
3225
3326.. 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 *.
27+ Only a singular product is required for a subscription quotation. A subscription service counts as
28+ a product, as it is considered a recurring product.
4029
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 `
30+ Subscription quotations *must * be confirmed, and payment from the customer for the initial
31+ subscription *must * be invoiced and registered in order to successfully open a Renewal Quotation.
4632
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.
33+ Once the payment from the subscription invoice is confirmed, a sale order is created. Click the
34+ :icon: `fa-pencil-square-o ` :guilabel: `Sale Order ` smart button to view it. An
35+ :guilabel: `In Progress ` tag is applied to the sale order form and a series of buttons appears
36+ directly above the sale order form, including a :guilabel: `Renew ` button.
5037
5138.. image :: renewals/renew-button.png
5239 :align: center
@@ -59,70 +46,75 @@ complete with a :guilabel:`Renewal Quotation` tag.
5946 :align: center
6047 :alt: Renewal quotation in the Odoo Subscriptions application.
6148
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.
49+ From here, follow a standard sales flow to confirm the quotation. This typically begins by clicking
50+ :guilabel: `Send by Email `, which sends a copy of the quotation to the customer to confirm.
6551
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 .
52+ .. tip ::
53+ Important reference information like the start date and next invoice date are automatically added
54+ to the Renewal Quotation's Chatter .
6955
70- Once the :guilabel: ` Renewal Quotation ` is confirmed, it becomes a sales order, and a
56+ Once the Renewal Quotation is confirmed, it becomes a sale order and a :icon: ` fa-usd `
7157:guilabel: `Sales History ` smart button appears at the top of the page.
7258
7359.. image :: renewals/sales-history-smart-button.png
7460 :align: center
7561 :alt: Sales History smart button in the Odoo Subscriptions application.
7662
77- When that : guilabel: `Sales History ` smart button is clicked, Odoo reveals a separate page,
63+ When the :icon: ` fa-usd ` : guilabel: `Sales History ` smart button is clicked, Odoo loads a new page,
7864showcasing the different sales orders attached to this subscription, along with their individual
7965:guilabel: `Subscription Status `.
8066
8167.. image :: renewals/sales-history-page.png
8268 :align: center
8369 :alt: Renewal quotation in the Odoo Subscriptions application.
8470
85- Additionally, once the :guilabel: `Renewal Quotation ` is confirmed, an :guilabel: `MRR ` smart button
86- also appears at the top of the sales order.
71+ Additionally, once the Renewal Quotation is confirmed, an :icon: `fa-line-chart ` :guilabel: `MRR `
72+ smart button also appears at the top of the sale order. This button leads to the MRR Analysis page
73+ where monthly recurring revenue related to this specific subscription may be found.
8774
8875.. image :: renewals/mrr-smart-button.png
8976 :align: center
9077 :alt: MRR smart button in the Odoo Subscriptions application.
9178
92- When clicked, Odoo reveals an :guilabel: `MRR Analysis ` page, detailing the monthly recurring revenue
93- related to this specific subscription.
94-
9579.. 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.
80+ On rare occasions, automatic payments can fail to register properly, which results in a
81+ :guilabel: `Payment Failure ` tag on the sale order and the :guilabel: `Contract in exception `
82+ checkbox being automatically ticked in the :guilabel: `Subscription ` section of the sale order's
83+ :guilabel: `Other Info ` tab.
9884
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.
85+ Being marked Contract in exception prevents scheduled actions from running, which keeps the
86+ system from accidentally double-charging the customer if the automatic payment actually went
87+ through. Because the status of the payment failed to register with the system, users must
88+ manually check if the payment has been made before automatic payments and other scheduled actions
89+ can resume.
10290
10391 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.
92+ Click into the desired subscription, then check the Chatter to see if the payment was made.
10593
106- If the payment was ** not ** made, first enter :doc: `debug mode <../../general/developer_mode >`.
94+ If the payment * was not * made, first enter :doc: `Developer Mode <../../general/developer_mode >`.
10795 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.
96+ in exception `. Reload the sale order and confirm that the :guilabel: `Payment Failure ` tag is
97+ gone.
10998
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.
99+ If the payment *was * made, a new invoice must be made and posted manually. This automatically
100+ updates the next invoice date of the subscription. Once the invoice is created, enter
101+ :doc: `Developer Mode <../../general/developer_mode >` and navigate to the new sale order. Click
102+ the :guilabel: `Other Info ` tab, and untick the checkbox next to
103+ :guilabel: `Contract in exception `. Reload the sale order and confirm that the
104+ :guilabel: `Payment Failure ` tag is gone.
115105
116106 .. figure :: renewals/contract-in-exception.png
117107 :align: center
118108 :alt: The "contract in exception" option selected with the "payment failure" tag shown.
119109
120- The :guilabel: `contract in exception`` option selected with the :guilabel:`payment failure `
110+ The :guilabel: `Contract in exception` option selected with the :guilabel:`Payment Failure `
121111 tag shown.
122112
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.
113+ In both cases, once the :guilabel: `Contract in exception ` checkbox is no longer ticked , Odoo
114+ handles renewals automatically again. If the subscription remains in Payment Failure , it is
115+ ignored by Odoo until the sale order is closed.
126116
127117.. seealso ::
128118 - :doc: `../subscriptions `
119+ - :doc: `../sales/sales_quotations/create_quotations `
120+ - :doc: `../sales/sales_quotations/get_paid_to_validate `
0 commit comments