Lianja
Lianja
ClickBank Parse Instant Notification JSON
See more ClickBank Examples
Demonstrates how to parse the JSON of a ClickBank instant notification.Chilkat Lianja Downloads
loJson = createobject("CkJsonObject")
loJson.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"
// }
// }
//
//
lcTransactionTime = loJson.StringOf("transactionTime")
lcReceipt = loJson.StringOf("receipt")
lcTransactionType = loJson.StringOf("transactionType")
lcVendor = loJson.StringOf("vendor")
lcAffiliate = loJson.StringOf("affiliate")
lcRole = loJson.StringOf("role")
lcTotalAccountAmount = loJson.StringOf("totalAccountAmount")
lcPaymentMethod = loJson.StringOf("paymentMethod")
lcTotalOrderAmount = loJson.StringOf("totalOrderAmount")
lcTotalTaxAmount = loJson.StringOf("totalTaxAmount")
lcTotalShippingAmount = loJson.StringOf("totalShippingAmount")
lcCurrency = loJson.StringOf("currency")
lcOrderLanguage = loJson.StringOf("orderLanguage")
lcCustomerShippingFirstName = loJson.StringOf("customer.shipping.firstName")
lcCustomerShippingLastName = loJson.StringOf("customer.shipping.lastName")
lcCustomerShippingFullName = loJson.StringOf("customer.shipping.fullName")
lcCustomerShippingPhoneNumber = loJson.StringOf("customer.shipping.phoneNumber")
lcCustomerShippingEmail = loJson.StringOf("customer.shipping.email")
lcCustomerShippingAddressAddress1 = loJson.StringOf("customer.shipping.address.address1")
lcCustomerShippingAddressAddress2 = loJson.StringOf("customer.shipping.address.address2")
lcCustomerShippingAddressCity = loJson.StringOf("customer.shipping.address.city")
lcCustomerShippingAddressCounty = loJson.StringOf("customer.shipping.address.county")
lcCustomerShippingAddressState = loJson.StringOf("customer.shipping.address.state")
lcCustomerShippingAddressPostalCode = loJson.StringOf("customer.shipping.address.postalCode")
lcCustomerShippingAddressCountry = loJson.StringOf("customer.shipping.address.country")
lcCustomerBillingFirstName = loJson.StringOf("customer.billing.firstName")
lcCustomerBillingLastName = loJson.StringOf("customer.billing.lastName")
lcCustomerBillingFullName = loJson.StringOf("customer.billing.fullName")
lcCustomerBillingPhoneNumber = loJson.StringOf("customer.billing.phoneNumber")
lcCustomerBillingEmail = loJson.StringOf("customer.billing.email")
lcCustomerBillingAddressState = loJson.StringOf("customer.billing.address.state")
lcCustomerBillingAddressPostalCode = loJson.StringOf("customer.billing.address.postalCode")
lcCustomerBillingAddressCountry = loJson.StringOf("customer.billing.address.country")
lcUpsellUpsellOriginalReceipt = loJson.StringOf("upsell.upsellOriginalReceipt")
lnUpsellUpsellFlowId = loJson.IntOf("upsell.upsellFlowId")
lcUpsellUpsellSession = loJson.StringOf("upsell.upsellSession")
lcUpsellUpsellPath = loJson.StringOf("upsell.upsellPath")
lcHopfeedHopfeedClickId = loJson.StringOf("hopfeed.hopfeedClickId")
lnHopfeedHopfeedApplicationId = loJson.IntOf("hopfeed.hopfeedApplicationId")
lnHopfeedHopfeedCreativeId = loJson.IntOf("hopfeed.hopfeedCreativeId")
lcHopfeedHopfeedApplicationPayout = loJson.StringOf("hopfeed.hopfeedApplicationPayout")
lcHopfeedHopfeedVendorPayout = loJson.StringOf("hopfeed.hopfeedVendorPayout")
lcVersion = loJson.StringOf("version")
lnAttemptCount = loJson.IntOf("attemptCount")
lcVendorVariablesV1 = loJson.StringOf("vendorVariables.v1")
lcVendorVariablesV2 = loJson.StringOf("vendorVariables.v2")
i = 0
lnCount_i = loJson.SizeOfArray("trackingCodes")
do while i < lnCount_i
loJson.I = i
lcStrVal = loJson.StringOf("trackingCodes[i]")
i = i + 1
enddo
i = 0
lnCount_i = loJson.SizeOfArray("lineItems")
do while i < lnCount_i
loJson.I = i
lcItemNo = loJson.StringOf("lineItems[i].itemNo")
lcProductTitle = loJson.StringOf("lineItems[i].productTitle")
llShippable = loJson.BoolOf("lineItems[i].shippable")
llRecurring = loJson.BoolOf("lineItems[i].recurring")
lcAccountAmount = loJson.StringOf("lineItems[i].accountAmount")
lnQuantity = loJson.IntOf("lineItems[i].quantity")
lcDownloadUrl = loJson.StringOf("lineItems[i].downloadUrl")
lcLineItemType = loJson.StringOf("lineItems[i].lineItemType")
i = i + 1
enddo
release loJson