Sample code for 30+ languages & platforms
Go

ClickBank Parse Instant Notification JSON

See more ClickBank Examples

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

Chilkat Go Downloads

Go
    json := chilkat.NewJsonObject()

    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" 
    //     }
    //  }
    // 
    // 

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

    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")
    for i < count_i {
        json.SetI(i)
        strVal = json.StringOf("trackingCodes[i]")
        i = i + 1
    }

    i = 0
    count_i = json.SizeOfArray("lineItems")
    for i < count_i {
        json.SetI(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
    }


    json.DisposeJsonObject()