Skip to main content
Vindicia Knowledge Center

Customer redeems a coupon via Merchant's online storefront to purchase a CB4E Subscription (CB4E-2-007)

User Story

As a Customer, I want to redeem a coupon code in order to purchase a subscription.

Prerequisites

Pre-Condition

  • Customer has been given a valid coupon code.

  • The customer is purchasing a Subscription that allows coupon redemption.

  • The customer is eligible to purchase the Subscription

Post-Condition

 
  • Proper Subscription with Account and Payment Method objects are created in CashBox

  • Initial Transaction is generated, if applicable, including taxation, if applicable. 

  • Future billings are correctly predicted; Account has been granted appropriate Entitlements

  • Promotional rate reflected in current and future transactions, if applicable.

  • Coupon Code has been marked as redeemed, if applicable.

Basic Scenario

A new customer purchases a subscription using a coupon code to access a promotional rate.

Design Approach

Similar to other use cases for creating subscriptions this use case has a slight modification in that you will need to pass a Campaign Code that references a Coupon style Campaign. 

Normally you would not pass in a Coupon Campaign Code when calling the subscriptions endpoint. 

See Offer Management and Subscription Purchase in Reference below.

Sequence Diagram

PurchaseFlow-Campaign-DryRun.png

Use Case Implementation

  1. Create a coupon style campaign (See Offer Management in Reference below)
  2. Call the subscriptions endpoint passing the coupon style campaign code created in step 1 

Sample Code

Endpoint : https://api.prodtest.vindicia.com/su...ions?dry_run=0

JSON Request:

{
  "billing_plan": {
    "id": "MONTHLY"
  },
  "account": {
    "email_type": "html",
    "language": "EN",
    "id": "zC18eIhfp6Dx0Me6",
    "shipping_address": {
      "city": "Portland",
      "name": "Laura Drake",
      "district": "OR",
      "country": "US",
      "line1": "9454 Strawberry Fields",
      "postal_code": "97209"
    },
    "default_currency": "USD",
    "email": "foo@foo.com",
    "name": "Laura Drake"
  },
  "description": "Subscription_zC18eIhfp6Dx0Me6",
  "policy": {
    "ignore_avs_policy": 1,
    "validate_for_future_payment": 0,
    "ignore_cvn_policy": 1,
    "immediate_auth_failure_policy": "doNotSaveAutoBill",
    "min_chargeback_probability": 99
  },
  "currency": "USD",
  "payment_method": {
    "billing_address": {
      "city": "Portland",
      "name": "Laura Drake",
      "district": "OR",
      "country": "US",
      "line1": "9454 Strawberry Fields",
      "postal_code": "97209"
    },
    "account_holder": "Laura Drake",
    "credit_card": {
      "expiration_date": "202003",
      "account": "4113900000000007"
    },
    "customer_description": "Credit Card",
    "active": 1,
    "type": "CreditCard",
    "id": "CC_zC18eIhfp6Dx0Me6"
  },
  "items": [
    {
      "product": {
        "id": "Generic"
      },
      "id": "Item_zC18eIhfp6Dx0Me6_1",
      "campaign_code": "Sample-Coupon-AP6BFR6UKPN8HHA4"
    }
  ],
  "id": "Subscription_zC18eIhfp6Dx0Me6",
  "minimum_commitment": 0
}