Cancel Plus
Article Topics: One Click Systems, Smarty
Important: Plus scripts are disabled by default, and to use, you must enable the respective page in the Configuration Admin before you can use.
What is Cancel Plus?
Cancel Plus is a feature in NATS that allows you to cancel a member's subscription.
For some billers, you can additionally add cancel offers where the surfer can choose to stay a member at a different cost instead of canceling. Cancel Offers are currently limited to Payze.
Which Billers support Cancel Plus?
Payze
Cancel Plus Steps
There are 4 possible steps in the Cancel Plus process that a surfer may see. First, you will need to provide your users with a cancel plus link:
https://<linkdomain>/signup/cancelplus.php?site=<siteid>&username=<username>Replace <linkdomain> with the site's actual linkdomain, then replace <siteid> with the site's NATS Site I.D. number. Finally, you must replace <username> with the user's NATS username.
Step 1
If a member is found with the parameters in the Cancel Plus link, a page using the gateway Site Template will display asking the Member to verify information about their membership. The possible fields you can ask to verify are:
'Username' => 'username',
'Password' => 'password',
'E-Mail' => 'email',
'Subscription ID' => 'subscriptionid',
'Full Subscription ID (with biller short name)' => 'memberidx',
'Last 4 digits of the credit card' => 'last_four'The default fields that will be used for verification are:
'Username' => 'username',
'Subscription ID' => 'subscriptionid',
'Last 4 digits of the credit card' => 'last_four'You can override these fields using the configuration $config['CANCELPLUS_REQUIRED_FIELDS']. You must choose at least 3 of the possible fields to override the defaults. If less than 3 are specified in the configuration, NATS will use the default fields. Here is an example of overriding the fields:
$config['CANCELPLUS_REQUIRED_FIELDS'] = Array(
"0" => "username",
"1" => "password",
"2" => "memberidx",
);By default, only 2 of the 3 fields are required to be submitted for verification. You can change the number using the configuration $config['CANCELPLUS_REQUIRED_FIELDS_COUNT'], but the minimum value is 2 required fields on submission. If you set this to a value higher than the number of available fields, then all fields will be required on the submit.
To customize the look and feel of the page for this step, navigate to the Sites Admin and select the Site Templates tab. Search for the member_cancel template, select the associating Action button and click "Customize Template".

As of NATS version 5.0.3.1, for Payze subscriptions, you can further filter the results displayed on the next step by the subscription status. There are 2 form fields that can be used for this. If you would like to use this feature, you will need to add them to the form on the member_cancel and the member_cancel_mobile site templates.
member_cancel[biller_search_status]=<X> -> this will cause Payze to return only subscriptions matching the exact status value
member_cancel[biller_search_status_list]=<X,Y> -> this will cause Payze to return only subscriptions matching one of the provided status values
Payze subscription Statuses
1 -> Active
2 -> Canceled (please note that all one-time join options including those for token purchases are Canceled to begin with since they do not recur)
3 -> Expired
Step 2
This step will only be used if more than one eligible subscription is found for the parameters passed in Step 1. This page will show all matching subscriptions sorted by site allowing the user to choose which subscription they would like to cancel.
To customize the look and feel of the page for this step, navigate to the Sites Admin and select the Site Templates tab. Search for the member_cancel_verify template, select the associating Action button, and click "Customize Template".

As of NATS version 5.0.3.1, to display Payze subscription status on this page, you can use the {$member.biller_data.status_description} Smarty variable. You can also customize this output using the {$member.biller_data.status} Smarty variable. Here is an example.
{if is_array($members)}
{foreach from=$members item=member name=members}
.....
{if ($member.biller_data.status == 2)}You already cancelled, no need to do it again{else}{$member.biller_data.status_description}{/if}
.....
{/foreach}
{/if}To learn more about Smarty and Smarty Variables, see our Smarty article.
Step 3
This step will only display if the biller used supports Cancel Offers and there are cancel offers configured on the option for their subscription.
Only specific billers have the cancel offers feature integrated. Here is the list of supported billers:
Payze
Setting Up Cancel Offers
A Cancel Offer defines a discount to give the member on rebills if they choose to continue their subscription rather than cancel.
To set up Cancel offers, you will need to navigate to the Sites Admin and select or create a site, then navigate to the Join Options tab. Next, select or create a new join option and navigate to the Special Offers tab.

When setting up the cancel offer, you will choose how many rebills the member must have before they are eligible for the cancel offer, a flat discount or a percentage discount, and whether or not it is a 1-time discount or an ongoing discount for all future rebills.
You can also configure multiple levels of cancel offers after reaching different points. For example, a member can be eligible for a 5% discount offer after 3 rebills, and eligible for a 10% discount after 10 rebills.

Depending on when they choose to cancel, they will see a different Cancel Offer. When setting up multiple levels, the type of discount (percentage vs flat) must be the same as the first cancel offer discount.
When saving cancel offers, you can choose to apply it to other Join options. If you choose this, NATS will find other options with similar pricing structures and offer to copy the discount structure to those options as well.
Customize the Cancel Offer Page
To customize the look and feel of the page for this step, navigate to the Sites Admin and select the Site Templates tab. Search for the member_cancel_keep_offer template, select the associating Action button, and click "Customize Template".

Step 4
On this step, the surfer's cancel request will be sent to the biller, then show them whether or not the request was a success or failure. If the subscription is already canceled at the biller, the request will fail.
To customize the look and feel of the page for this step, navigate to the Sites Admin and select the Site Templates tab. Search for the member_cancel_result template, select the associating Action button, and click "Customize Template".

Linking to specific steps
You can link a member to specific steps in the Cancel Plus process by adding the parameter "step" to the URL. For example: https://<linkdomain>/signup/cancelplus.php?site=<siteid>&username=<username>&step=2&member_cancel[username]=<username>&member_cancel['last_four']=<last_four>
Notice, since we are linking to step 2, we also pass along the required fields that would be submitted on Step 1. Submitted parameters would go in the "member_cancel" array as can be seen on the HTML of each step's template.
Security and Throttling
We have the same authstring/throttling feature for cancel plus as we do for the other plus systems. See our Throttling article for further details.
Enabling Cancel Plus
In order to use Cancel Plus, you will need to enable it in the One Click Systems section of the Surfer tab under the Configuration Admin.
Cancel Plus Enabled - Setting this option to "No" returns a 404 error code and will display the page_available or page_unavailable Site Templates as determined by the linkdomain.
Last updated
Was this helpful?