Click or drag to resize
Infosoft Logo

Verifying Customer Offer or Campaign

Some offers have a preconfigured amount of time which must pass before they can be used twice by the same subscription. The period in which the offer cannot be used again is called the customer limitation period. So when registering a new order with an offer code, it might be important to verify that the subscription is allowed to use that offer. The customer limitation service is a tool to help verify if the subscription is eligible for a given offer before the order is submitted.

The customer limitation tells if the customer currently has a limitation, if the limitation is on an offer or a trial subscription, and until which date the limitation is or as active. The response is quite self-explanatory, if "true", the customer has a limitation.

Understanding the request and responses

This section contains the following subsections:

The XML request

The request requires a valid customer number, title code and an offer code. The offer code is the offer you want to check the limitation for.

Example

An example of how a XML request to GetCustomerLimitation might look like:

XML
  <GetCustomerLimitationRequest>
   <Subscriptionidentifier>
      <CustomerNumber>1003</ns:CustomerNumber>
      <TitleCode>TEST</ns:TitleCode>
   </Subscriptionidentifier>
   <OfferCode>12MND</ns:OfferCode>
</GetCustomerLimitationRequest>

The XML response

The response object will have a CustomerHasLimitation field which is either true or false. If true, the customer currently has a limitation. It also shows the limitation expiry date for both campaign and trial. It also shows the total number of trials for the given customer.

The XML response when no limitation exists

In the following example response, the customer has no limitation. CustomerHasLimitation is false, and CampaignLimitationExpiryDate is in the past.

Example

An example of how a XML request to GetCustomerLimitation might look like:

XML
<GetCustomerLimitationResponse>
   <CustomerHasLimitation>false</CustomerHasLimitation>
   <CustomerLimitation>
      <CampaignLimitationExpiryDate>2015-02-14T00:00:00</CampaignLimitationExpiryDate>
      <ConcurrencyToken i:nil="true"/>
      <Customer i:nil="true"/>
      <CustomerLimitation_Id>0</CustomerLimitation_Id>
      <Customer_Id>0</Customer_Id>
      <NumberOfTrials>1</NumberOfTrials>
      <Title i:nil="true"/>
      <Title_Id>0</Title_Id>
      <TrialLimitationExpiryDate>0001-01-01T00:00:00</TrialLimitationExpiryDate>
   </CustomerLimitation>
</GetCustomerLimitationResponse>

The XML response when trial limitation

The response object will have a CustomerHasLimitation field which is either true or false. If true, the customer currently has a limitation. It also shows the limitation expiry date for both campaign and trial. It also shows the total number of trials for the given customer.In the following example response, the customer has a trial limitation. CustomerHasLimitation is true, and is in the future (As of the moment of writing this).

Example

An example of how a XML request to GetCustomerLimitation might look like:

XML
<GetCustomerLimitationResponse>
   <CustomerHasLimitation>true</CustomerHasLimitation>
   <CustomerLimitation>
      <CampaignLimitationExpiryDate>0001-01-01T00:00:00</CampaignLimitationExpiryDate>
      <ConcurrencyToken i:nil="true"/>
      <Customer i:nil="true"/>
      <CustomerLimitation_Id>0</CustomerLimitation_Id>
      <Customer_Id>0</Customer_Id>
      <NumberOfTrials>1</NumberOfTrials>
      <Title i:nil="true"/>
      <Title_Id>0</Title_Id>
      <TrialLimitationExpiryDate>2015-12-01T00:00:00</TrialLimitationExpiryDate>
   </CustomerLimitation>
</GetCustomerLimitationResponse>