Voucher Abuse

On this page:

Voucher abuse (also known as promotion abuse or promo abuse) is when customers unfairly take advantage of your offers. This creates hidden losses for your business, weakens product value and damages the brand image.

The steps below explain how to integrate to prevent voucher abuse.

Sending vouchers

When you create a voucher, send a request to the Voucher Endpoint with the details of the voucher.

An example request is shown below:

POST https://api.ravelin.com/v2/voucher HTTP/1.1
Authorization: token ...
Content-Type: application/json

{
    "timestamp": 1512828988826,
    "voucher": {
        "voucherCode": "DISCOUNT-1234",
        "referrerId": "USER-1234",
        "expiry": 1512828988826,
        "value": 20,
        "currency": "GBP",
        "voucherType": "GENERAL",
        "referralValue": 10,
        "creationTime": 1512828988826
    }
}

See the Voucher Endpoint API Reference for the format of the request.

Recommendations at voucher redemption

When a customer tries to redeem a voucher, send a request to the Voucher Check Endpoint.

Ravelin will return a recommendation as to whether the customer should be allowed to redeem the voucher.

An example request is shown below:

POST https://api.ravelin.com/v2/voucher/check HTTP/1.1
Authorization: token ...
Content-Type: application/json

{
    "timestamp": 1512828988826,
    "voucherCode": "DISCOUNT-1234",
    "customerId": "abc-123-ZYZ",
    "voucherType": "GENERAL",
    "depth": 10,
    "threshold": 2
}

An example response is shown below:

{
  "timestamp": 1512828988,
  "recommendation": "OK"
}

This recommendation is calculated by checking for the owner and users of the voucher in the customer’s network. If this total is greater than the relevant threshold Ravelin returns ABUSE, if not Ravelin returns OK. You can either follow or ignore this recommendation.

See the Voucher Check Endpoint API Reference for the format of the request and response.

Sending voucher redemption updates

After the voucher redemption attempt is made, send a request to the Payment Method Voucher Endpoint indicating this attempt occurred and the outcome of the attempt. It is important for Ravelin to know both about successful and unsuccessful voucher redemption attempts.

An example request is shown below:

POST /v2/paymentmethod/voucher HTTP/1.1
Authorization: token ...
Content-Type: application/json

{
  "timestamp": 1512828988826,
  "customerId": "abc-123-ZYZ",
  "voucherRedemption": {
    "paymentMethodId": "VOUCH-89-abc-123-ZYZ",
    "voucherCode": "VOUCH-89",
    "redemptionTime": 1512828988826,
    "success": true,
    "value": 10000,
    "currency": "GBP",
    "voucherType": "GENERAL"
  }
}

See the Payment Method Voucher Endpoint API Reference for the format of the request.

Feedback

© Ravelin Technology Ltd. All rights reserved