Skip to main content

Subscription churn prevention campaigns

Overview

The object below is returned directly or within a successful response from the following API requests:

Parameters Type/Description
AvailableCancellationReasons Object with dynamic properties (as reasons number can change in time)
  REASON_CODE_1 Required (string)
  REASON_CODE_3 Required (string)
  REASON_CODE_5 Required (string)
  REASON_CODE_6 Required (string)
  REASON_CODE_7 Required (string)
  REASON_CODE_9 Required (string)
Campaigns Array of objects
  Code String
    Unique, system-generated campaign identifier.
  Name String
    Name of the campaign.
  DefaultMessage String
    Default message of the campaign displayed to shoppers.
  CancellationReasonRequired Boolean
    Used to decide if you want to collect feedback from customers.
  OfferPause Boolean
    Used to decide if you want to allow shoppers to pause subscription.
  OfferDiscount Object
    Message String
      Discount message.
    Discount String
      Discount value in decimal number.
    BillingCycles String
      Billing cycles number.

Subscription churn prevention campaigns

Overview

The object below is returned directly or within a successful response from the following API requests:

Parameters Type/Description
AvailableCancellationReasons Object with dynamic properties (as reasons number can change in time)
  REASON_CODE_1 Required (string)
  REASON_CODE_3 Required (string)
  REASON_CODE_5 Required (string)
  REASON_CODE_6 Required (string)
  REASON_CODE_7 Required (string)
  REASON_CODE_9 Required (string)
Campaigns Array of objects
  Code String
    Unique, system-generated campaign identifier.
  Name String
    Name of the campaign.
  DefaultMessage String
    Default message of the campaign displayed to shoppers.
  CancellationReasonRequired Boolean
    Used to decide if you want to allow shoppers to pause subscription.
  OfferDiscount Object
    Message String
      Discount message.
    Discount String
      Discount value in decimal number.
    BillingCycles String
      Billing cycles number.

Enter campaign

Overview

Use the enterChurnCampaign method to confirm the campaign you want for the churn campaign process.

Parameters

Parameters Type/Description
sessionID Required (string)
  Session identifier, the output of the Login method. Include sessionID into all your requests. 2Checkout throws an exception if the values are incorrect. The sessionID expires in 10 minutes.
SubscriptionReference Required (string)
  Unique, system-generated subscription identifier.
CampaignCode Required (string)
  The code of the campaign you want to confirm.

Response

Parameters Type/Description
Boolean true or false depending on whether the changes were successful or not.

Request

<?php

require('PATH_TO_AUTH');

$subscriptionReference = '351D8F557E';
$campaignCode          = 'UGPPKKJY5L1LHBFPHKQ3';

$jsonRpcRequest = [
    'method' => 'enterChurnCampaign',
    'params' => [$sessionID, $subscriptionReference, $campaignCode],
    'id' => $i++,
    'jsonrpc' => '2.0'
];

var_dump(callRPC((object)$jsonRpcRequest, $host, true));

Accept campaign discount

Overview

Use the acceptChurnCampaignDiscount method to confirm the campaign you want for the churn campaign process.

Parameters

Parameters Type/Description
sessionID Required (string)
  Session identifier, the output of the Login method. Include sessionID into all your requests. 2Checkout throws an exception if the values are incorrect. The sessionID expires in 10 minutes.
SubscriptionReference Required (string)
  Unique, system-generated subscription identifier.
CampaignCode Required (string)
  The code of the campaign you want to confirm.

Response

Parameters Type/Description
Boolean true or false depending on whether the changes were successful or not.

Request

<?php

require('PATH_TO_AUTH');

$subscriptionReference = '351D8F557E';
$campaignCode          = 'UGPPKKJY5L1LHBFPHKQ3';

$jsonRpcRequest = [
    'method' => 'acceptChurnCampaignDiscount',
    'params' => [$sessionID, $subscriptionReference, $campaignCode],
    'id' => $i++,
    'jsonrpc' => '2.0'
];

var_dump(callRPC((object)$jsonRpcRequest, $host, true));

Retrieve eligible campaigns

Overview

Use the getEligibleChurnCampaigns method to retrieve all the eligible campaigns for a specific subscription with data in a specific language.

Parameters

Parameters Type/Description
sessionID Required (string)
  Session identifier, the output of the Login method. Include sessionID into all your requests. 2Checkout throws an exception if the values are incorrect. The sessionID expires in 10 minutes.
SubscriptionReference Required (string)
  Unique, system-generated subscription identifier.
Language Required (string)
  The language abbreviation in which messages are translated.

Response

Parameters Type/Description
SubscriptionChurnPreventionCampaigns Object

Request

<?php
require('PATH_TO_AUTH');
$subscriptionReference = '351D8F557E';
$languageCode          = 'en';
$jsonRpcRequest = [
    'method' => 'getEligibleChurnCampaigns',
    'params' => [$sessionID, $subscriptionReference, $languageCode],
    'id' => $i++,
    'jsonrpc' => '2.0'
];
var_dump(callRPC((object)$jsonRpcRequest, $host, true));

Enter campaign

Overview

Use the enterCampaign method to mark the auto renewal cancellation intent.

Parameters

Parameters Type/Description
sessionID Required (string)
  Session identifier, the output of the Login method. Include sessionID into all your requests. 2Checkout throws an exception if the values are incorrect. The sessionID expires in 10 minutes.
SubscriptionReference Required (string)
  Unique, system-generated subscription identifier.
CampaignCode Required (string)
  The code of the campaign you want to confirm.

Response

Parameters Type/Description
Boolean true or false depending on whether the changes were successful or not.

Request

<?php
 
require('PATH_TO_AUTH');
 
$subscriptionReference = 'F27CFE06ED';
$campaignCode = 'UGPPKKJY5L1LHBFPHKQ3';
 
try {
    $result = $client->enterCampaign($sessionID, $subscriptionReference, $campaignCode);
}
catch (SoapFault $e) {
    echo "result: " . $e->getMessage();
    exit;
}
var_dump("result", $result);

Accept campaign discount

Overview

Use the acceptChurnCampaignDiscount method to confirm the campaign you want for the churn campaign process.

Parameters

Parameters Type/Description
sessionID Required (string)
  Session identifier, the output of the Login method. Include sessionID into all your requests. 2Checkout throws an exception if the values are incorrect. The sessionID expires in 10 minutes.
SubscriptionReference Required (string)
  Unique, system-generated subscription identifier.
CampaignCode Required (string)
  The code of the campaign you want to confirm.

Response

Parameters Type/Description
Boolean true or false depending on whether the changes were successful or not.

Request

<?php
 
require('PATH_TO_AUTH');
 
$subscriptionReference = 'F27CFE06ED';
$campaignCode = 'UGPPKKJY5L1LHBFPHKQ3';
 
try {
    $result = $client->acceptChurnCampaignDiscount($sessionID, $subscriptionReference, $campaignCode);
}
catch (SoapFault $e) {
    echo "result: " . $e->getMessage();
    exit;
}
var_dump("result", $result);

Retrieve eligible campaigns

Overview

Use the getEligibleChurnCampaigns method to retrieve all the eligible campaigns for a specific subscription with data in a specific language.

Parameters

Parameters Type/Description
sessionID Required (string)
  Session identifier, the output of the Login method. Include sessionID into all your requests. 2Checkout throws an exception if the values are incorrect. The sessionID expires in 10 minutes.
SubscriptionReference Required (string)
  Unique, system-generated subscription identifier.
Language Required (string)
  The language abbreviation in which messages are translated.

Response

Parameters Type/Description
SubscriptionChurnPreventionCampaigns Object

Request

<?php
 
require('PATH_TO_AUTH');
 
$subscriptionReference = 'F27CFE06ED';
$language = 'en';
 
try {
    $campaigns = $client->getEligibleChurnCampaigns($sessionID, $subscriptionReference, $language);
}
catch (SoapFault $e) {
    echo "campaigns: " . $e->getMessage();
    exit;
}
var_dump("campaigns", $campaigns);

Need help?

Do you have a question? If you didn’t find the answer you are looking for in our documentation, you can contact our Support teams for more information. If you have a technical issue or question, please contact us. We are happy to help.

Not yet a Verifone customer?

We’ll help you choose the right payment solution for your business, wherever you want to sell, in-person or online. Our team of experts will happily discuss your needs.

Verifone logo