Restarts (Matrix)
The Restart feature allows an end-user/CSR to restart a stopped subscription that will be processed in the Matrix Circulation system. The restarting can be done through either Self-Service (SubCon Site) or SubCon Admin (One CSR Portal). A stopped subscription can be restarted only if the subscription meets a set of eligibility criteria.
Pre-requisites
To avail of the Restarts feature depicted below, the client should have
Subscribe 3.17.0 or above
Matrix 38.00.034.ITSP9 or above
Eligibility Criteria of a stopped subscription for Restarting
A stopped subscription (that will be processed in the Matrix circulation system) can be restarted only if the subscription
is already Stopped
is stopped within a certain number of days (the number of days can be configured using the MG2 Control key Restart.MaxStoppedDays)
is not a Trial subscription
is not a Complimentary subscription
does not have any Payment events in the last 24 hours
does not have an already pending Restart event (with a DateEffective of today or future)
This information is returned by the CheckRestartAvailability endpoint of Subscribe.
From 3.16.3
The Mail Order Telephone Order (MOTO) transaction flow is enabled in both SA and SP which is specific to the Stripe payment vendor. This feature allows users to make payments without 3DS confirmation. Consequently, users can complete payments using both 3D and non-3D Stripe cards without encountering the 3DS pop-up window for authentication. As a result, even cards that typically require 3DS confirmation can now function without it.
Prior 3.17.0
Restart Date
When an eligible user opts for restarting a stopped subscription, Subscribe MicroAPI defaults the restarting date to the current date in the client’s time zone. However, the restarting happens only after the sync job and the restarting request is processed at the Matrix end.
From 3.17.0
Restart Date
It is possible for a user to opt for a future date for restarting a stopped subscription from 3.17.0. However, the user will not be permitted to select a restart date earlier than the current date in this flow.
When a Matrix user completes the payment for a stopped subscription that is intended to be restarted on a future date, the status of the subscription changes from ‘Stopped’ to ‘Active’ immediately in Subscribe. Even if the subscription status changes to 'Active' immediately, as per the Matrix settings, the subscription will ideally start for the user only on the selected date.
Please note that, even when the user is opting ‘Restart immediately’ option, the restarting will be in effect only after the sync process at Matrix end.
Note: MatrixAPI will receive a parameter named RestartDate as part of the "Suborderrestartid" request. This endpoint is called during the processing of the RESTARTSUBSCRIPTION (1149) event when restarting a subscription.
Configurable Credit Balance
Starting from version 3.17.0, the Credit balance of a subscription is configurable for both SubCon Site (Self-Service) and SubCon Admin. This is achieved through the introduction of a new MG2 Control API setting key called 'Restart.ApplyCreditBalance', which has a default value of 0.
When this setting key is turned on (value 1) and the subscription has a credit balance (meaning the user owes money to the publisher), that balance will be displayed in the UI and will be deducted from the total restart subscription amount to be paid. However, if the setting is turned off (key value 0) and the subscription has a credit balance, then the balance will NOT be displayed in the UI, and the restart subscription amount remains the same without any deduction.
On the other hand, if the subscription has a negative balance (meaning the customer owes money to the publisher), the balance amount will always be added to the restart subscription amount irrespective of the value of the setting key. In this case, the total amount (negative balance + restart subscription amount) should be paid in the Restart payment transaction.
Restart Workflow in Self-Service and SubCon Admin
Restart Workflow - Implementation Details
The Restart workflow in SS starts when the end-user clicks on the ‘Restart’ hyperlink on the Dashboard page.
The visibility of the ‘Restart’ hyperlink is determined solely by the CMS link restrictions.
When the user clicks the ‘Restart’ hyperlink,
Subscribe calls the CheckRestartAvailability endpoint. The endpoint verifies whether the subscription is eligible for a restart by checking each of the eligibility criteria.
If the value returned by the endpoint is ‘true’, it means that the subscription is eligible for a restart.
If the value returned by the endpoint is ‘false’, it means that one or more eligibility conditions are not met, and the subscription is not eligible for a restart. The user will be displayed an error message stating the reason (ex: “Subscription has been stopped for too long.”) for not opening the restart page. The user will be redirected to the Dashboard page.
When the Restart page is loading, the
getOptions
call is made to populate the Rate grid with all available Rate options. Each Rate option includes a ‘Term’ (the validity period for the subscription in weeks, days, or months) and an ‘Amount’ (the rate amount that needs to be paid for the corresponding term length).If the
getOptions
call fails, the end-user will be redirected to the Subscription Panel where the currently existing offers will be displayed. Note: ThegetOptions
call might just fail due to a bad configuration in the Circ system. In some instances, there may be no available rates to be displayed on the page leading to the failure of thegetOptions
call.If the
getOptions
call succeeds, the Rate Grid will be displayed on the Restart page.When the
getOptions
call succeeds, thegetAvailableDates
API is called to fetch the available dates for the restart.
If all the API calls are successful, the Restart page will be completely loaded for the user.
List of Error messages displayed to the user if the Restart page will not be loaded:
Subscription is not stopped.
the sub_status is not “S” (subscription is not stopped)
The subscription is trial.
the subscription kind is Trial.
The subscription is COMP. Payment is not allowed.
the isComp field of the subscription table is true. (Subscription is complimentary) Note: This is not yet updated to check the subscription kind = ‘comp’
Subscription has been stopped for too long. A new subscription is required.
the number of days passed after stopping the subscription is greater than the value in Restart.MaxStoppedDays MG2 Control App setting
The subscriber already made a payment over the last 24 hours.
any of these events 'PAYMENTCC', 'PAYMENTACH', 'RESRTPAYMENTACH', 'RESRTPAYMENTCC', 'PAYMENTNEWSTART' have been created for the subscription in the last 24 hours
The subscription has pending restart transactions
there is a "RESTART" event for the subscription with a DateEffective in the future
Note: All of these error messages can be customized in CMS.
Restart Workflow - UI
Step 1: Click the Restart hyperlink on the Dashboard page.
Step 2: Select the desired Rate option on the Restart page.
Note: The credit balance feature is configurable from 3.17.0 with the setting key Restart.ApplyCreditBalance. If a subscription account has a credit balance, it will be displayed in the field CREDIT, only if the MG2 control setting Restart.ApplyCreditBalance is turned on with the value '1'. On the other hand, if the account has a Debit balance, irrespective of the value of the setting key, the negative balance will be displayed on the UI and will be added to the restart subscription amount.
Step 3: By default, the option ‘RESTART IMMEDIATELY’ is selected. If the restart is immediate, the first AvailableDate returned by the getAvailableDates
API will be used as the restart date.
Step 4: Select the payment method Credit card. Click the Next button. (Refer to the Rate Grid image above).
Step 5: On the next page, the Payment Information will be displayed. Enter the credit card details in the following Payment Details section.
Step 6: Click the SAVE button. A success message will be displayed.
The Restart workflow is completed.
Last updated