Sample code for 30+ languages & platforms
C#

ClickBank Parse Instant Notification JSON

See more ClickBank Examples

Demonstrates how to parse the JSON of a ClickBank instant notification.

Chilkat C# Downloads

C#
Chilkat.JsonObject json = new Chilkat.JsonObject();

json.Load("{  ...  }");

// Use this online tool to generate parsing code from sample JSON: 
// Generate Parsing Code from JSON

// See the parsing code below..

// Sample notification JSON: 

// {
//     "transactionTime": "2016-06-05T13:47:51-06:00",
//     "receipt": "CWOGBZLN",
//     "transactionType": "SALE",
//     "vendor": "testacct",
//     "affiliate": "affiliate1",
//     "role": "VENDOR",
//     "totalAccountAmount": 0.00,
//     "paymentMethod": "VISA",
//     "totalOrderAmount": 0.00,
//     "totalTaxAmount": 0.00,
//     "totalShippingAmount": 0.00,
//     "currency": "USD",
//     "orderLanguage": "EN",
//     "trackingCodes": [
//         "tracking_code"
//     ],
//     "lineItems": [
//         {
//             "itemNo": "1",
//             "productTitle": "Product Title",
//             "shippable": false,
//             "recurring": false,
//             "accountAmount": 5.00,
//             "quantity": 1,
//             "downloadUrl": "<download_url>"
//             "lineItemType": "CART"
//        }
//         {
//             "itemNo": "2",
//             "productTitle": "Second Product",
//             "shippable": false,
//             "recurring": true,
//             "accountAmount": 2.99,
//             "quantity": 1,
//             "downloadUrl": "<download_url>"
//             "lineItemType": "CART"
//        }
// 
//     ],
//      "customer": {
//         "shipping": {
//             "firstName": "TEST",
//             "lastName": "GUY",
//             "fullName": "Test Guy",
//             "phoneNumber": "",
//             "email": "test@example.net",
//             "address": {
//                 "address1": "12 Test Lane",
//                 "address2": "Suite 100",
//                 "city": "LAS VEGAS",
//                 "county": "LAS VEGAS",
//                 "state": "NV",
//                 "postalCode": "89101",
//                 "country": "US"
//             }
//         },
//         "billing": {
//             "firstName": "TEST",
//             "lastName": "GUY",
//             "fullName": "Test Guy",
//             "phoneNumber": "",
//             "email": "test@example.net",
//             "address": {
//                 "state": "NV",
//                 "postalCode": "89101",
//                 "country": "US"
//             }
//         }
//     },
//      "upsell": {
//         "upsellOriginalReceipt": "XXXXXXXX",
//         "upsellFlowId": 55,
//         "upsellSession": "VVVVVVVVVV",
//         "upsellPath": "upsell_path"
//     },
//      "hopfeed": {
//         "hopfeedClickId": "hopfeed_click",
//         "hopfeedApplicationId": 0000,
//         "hopfeedCreativeId": 0000,
//         "hopfeedApplicationPayout": 0.00,
//         "hopfeedVendorPayout": 0.00
//     },
//      "version": 6.0,
//     "attemptCount": 1,
//      "vendorVariables": {
//        "v1": "variable1", 
//        "v2": "variable2" 
//     }
//  }
// 
// 

string transactionTime;
string receipt;
string transactionType;
string vendor;
string affiliate;
string role;
string totalAccountAmount;
string paymentMethod;
string totalOrderAmount;
string totalTaxAmount;
string totalShippingAmount;
string currency;
string orderLanguage;
string customerShippingFirstName;
string customerShippingLastName;
string customerShippingFullName;
string customerShippingPhoneNumber;
string customerShippingEmail;
string customerShippingAddressAddress1;
string customerShippingAddressAddress2;
string customerShippingAddressCity;
string customerShippingAddressCounty;
string customerShippingAddressState;
string customerShippingAddressPostalCode;
string customerShippingAddressCountry;
string customerBillingFirstName;
string customerBillingLastName;
string customerBillingFullName;
string customerBillingPhoneNumber;
string customerBillingEmail;
string customerBillingAddressState;
string customerBillingAddressPostalCode;
string customerBillingAddressCountry;
string upsellUpsellOriginalReceipt;
int upsellUpsellFlowId;
string upsellUpsellSession;
string upsellUpsellPath;
string hopfeedHopfeedClickId;
int hopfeedHopfeedApplicationId;
int hopfeedHopfeedCreativeId;
string hopfeedHopfeedApplicationPayout;
string hopfeedHopfeedVendorPayout;
string version;
int attemptCount;
string vendorVariablesV1;
string vendorVariablesV2;
int i;
int count_i;
string strVal;
string itemNo;
string productTitle;
bool shippable;
bool recurring;
string accountAmount;
int quantity;
string downloadUrl;
string lineItemType;

transactionTime = json.StringOf("transactionTime");
receipt = json.StringOf("receipt");
transactionType = json.StringOf("transactionType");
vendor = json.StringOf("vendor");
affiliate = json.StringOf("affiliate");
role = json.StringOf("role");
totalAccountAmount = json.StringOf("totalAccountAmount");
paymentMethod = json.StringOf("paymentMethod");
totalOrderAmount = json.StringOf("totalOrderAmount");
totalTaxAmount = json.StringOf("totalTaxAmount");
totalShippingAmount = json.StringOf("totalShippingAmount");
currency = json.StringOf("currency");
orderLanguage = json.StringOf("orderLanguage");
customerShippingFirstName = json.StringOf("customer.shipping.firstName");
customerShippingLastName = json.StringOf("customer.shipping.lastName");
customerShippingFullName = json.StringOf("customer.shipping.fullName");
customerShippingPhoneNumber = json.StringOf("customer.shipping.phoneNumber");
customerShippingEmail = json.StringOf("customer.shipping.email");
customerShippingAddressAddress1 = json.StringOf("customer.shipping.address.address1");
customerShippingAddressAddress2 = json.StringOf("customer.shipping.address.address2");
customerShippingAddressCity = json.StringOf("customer.shipping.address.city");
customerShippingAddressCounty = json.StringOf("customer.shipping.address.county");
customerShippingAddressState = json.StringOf("customer.shipping.address.state");
customerShippingAddressPostalCode = json.StringOf("customer.shipping.address.postalCode");
customerShippingAddressCountry = json.StringOf("customer.shipping.address.country");
customerBillingFirstName = json.StringOf("customer.billing.firstName");
customerBillingLastName = json.StringOf("customer.billing.lastName");
customerBillingFullName = json.StringOf("customer.billing.fullName");
customerBillingPhoneNumber = json.StringOf("customer.billing.phoneNumber");
customerBillingEmail = json.StringOf("customer.billing.email");
customerBillingAddressState = json.StringOf("customer.billing.address.state");
customerBillingAddressPostalCode = json.StringOf("customer.billing.address.postalCode");
customerBillingAddressCountry = json.StringOf("customer.billing.address.country");
upsellUpsellOriginalReceipt = json.StringOf("upsell.upsellOriginalReceipt");
upsellUpsellFlowId = json.IntOf("upsell.upsellFlowId");
upsellUpsellSession = json.StringOf("upsell.upsellSession");
upsellUpsellPath = json.StringOf("upsell.upsellPath");
hopfeedHopfeedClickId = json.StringOf("hopfeed.hopfeedClickId");
hopfeedHopfeedApplicationId = json.IntOf("hopfeed.hopfeedApplicationId");
hopfeedHopfeedCreativeId = json.IntOf("hopfeed.hopfeedCreativeId");
hopfeedHopfeedApplicationPayout = json.StringOf("hopfeed.hopfeedApplicationPayout");
hopfeedHopfeedVendorPayout = json.StringOf("hopfeed.hopfeedVendorPayout");
version = json.StringOf("version");
attemptCount = json.IntOf("attemptCount");
vendorVariablesV1 = json.StringOf("vendorVariables.v1");
vendorVariablesV2 = json.StringOf("vendorVariables.v2");
i = 0;
count_i = json.SizeOfArray("trackingCodes");
while (i < count_i) {
    json.I = i;
    strVal = json.StringOf("trackingCodes[i]");
    i = i + 1;
}

i = 0;
count_i = json.SizeOfArray("lineItems");
while (i < count_i) {
    json.I = i;
    itemNo = json.StringOf("lineItems[i].itemNo");
    productTitle = json.StringOf("lineItems[i].productTitle");
    shippable = json.BoolOf("lineItems[i].shippable");
    recurring = json.BoolOf("lineItems[i].recurring");
    accountAmount = json.StringOf("lineItems[i].accountAmount");
    quantity = json.IntOf("lineItems[i].quantity");
    downloadUrl = json.StringOf("lineItems[i].downloadUrl");
    lineItemType = json.StringOf("lineItems[i].lineItemType");
    i = i + 1;
}