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
(PHP ActiveX) ClickBank Parse Instant Notification JSONDemonstrates how to parse the JSON of a ClickBank instant notification.
<?php // For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.JsonObject') $json = new COM("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" // } // } // // $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; } ?> |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.