Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Ruby) ClickBank Parse Instant Notification JSONDemonstrates how to parse the JSON of a ClickBank instant notification.
require 'chilkat' json = Chilkat::CkJsonObject.new() 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" # } # } # # 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.put_I(i) strVal = json.stringOf("trackingCodes[i]") i = i + 1 end i = 0 count_i = json.SizeOfArray("lineItems") while i < count_i json.put_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 end |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.