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
(Tcl) CardConnect Capture Level 3 DataDemonstrates how to send a CardConnect Capture request with Lavel 3 line item data. If available, Level 3 line item data can be sent with the capture request, particularly for any commercial or corporate payment cards. To qualify for Level 3 Interchange rates, Level 2 data must also be provided. ... See https://developer.cardconnect.com/cardconnect-api#capture-level-3-data
load ./chilkat.dll # This example assumes the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. set http [new_CkHttp] CkHttp_put_BasicAuth $http 1 CkHttp_put_Login $http "API_USERNAME" CkHttp_put_Password $http "API_PASSWORD" # Build and send the following JSON: # The "retref" is the value returned in the JSON response for the Authorization request. # { # "retref": "2880000333", # "shiptozip": "11111-1111", # "shipfromzip": "99999-9999", # "amount": "596.00", # "items": [ # { # "discamnt": "0", # "unitcost": "900", # "uom": "CS", # "lineno": "1", # "description": "DESCRIPTION-1", # "taxamnt": "117", # "quantity": "1000", # "upc": "UPC-1", # "netamnt": "150", # "material": "MATERIAL-1" # }, # { # "discamnt": "0", # "unitcost": "450", # "uom": "CS", # "lineno": "2", # "description": "DESCRIPTION-2", # "taxamnt": "117", # "quantity": "2000", # "upc": "UPC-1", # "netamnt": "300", # "material": "MATERIAL-2" # } # ], # "taxamount": "40.00", # "merchid": "123456789012", # "account": "4111111111111111", # "ponumber": "PO-0736332" # } # # Use this online tool to generate the code from sample JSON: # Generate Code to Create JSON set json [new_CkJsonObject] CkJsonObject_UpdateString $json "retref" "112989260941" CkJsonObject_UpdateString $json "shiptozip" "11111-1111" CkJsonObject_UpdateString $json "shipfromzip" "99999-9999" CkJsonObject_UpdateString $json "amount" "596.00" CkJsonObject_UpdateString $json "items[0].discamnt" "0" CkJsonObject_UpdateString $json "items[0].unitcost" "900" CkJsonObject_UpdateString $json "items[0].uom" "CS" CkJsonObject_UpdateString $json "items[0].lineno" "1" CkJsonObject_UpdateString $json "items[0].description" "DESCRIPTION-1" CkJsonObject_UpdateString $json "items[0].taxamnt" "117" CkJsonObject_UpdateString $json "items[0].quantity" "1000" CkJsonObject_UpdateString $json "items[0].upc" "UPC-1" CkJsonObject_UpdateString $json "items[0].netamnt" "150" CkJsonObject_UpdateString $json "items[0].material" "MATERIAL-1" CkJsonObject_UpdateString $json "items[1].discamnt" "0" CkJsonObject_UpdateString $json "items[1].unitcost" "450" CkJsonObject_UpdateString $json "items[1].uom" "CS" CkJsonObject_UpdateString $json "items[1].lineno" "2" CkJsonObject_UpdateString $json "items[1].description" "DESCRIPTION-2" CkJsonObject_UpdateString $json "items[1].taxamnt" "117" CkJsonObject_UpdateString $json "items[1].quantity" "2000" CkJsonObject_UpdateString $json "items[1].upc" "UPC-1" CkJsonObject_UpdateString $json "items[1].netamnt" "300" CkJsonObject_UpdateString $json "items[1].material" "MATERIAL-2" CkJsonObject_UpdateString $json "taxamount" "40.00" CkJsonObject_UpdateString $json "merchid" "MERCHANT_ID" CkJsonObject_UpdateString $json "account" "4111111111111111" CkJsonObject_UpdateString $json "ponumber" "PO-0736332" set url "https://<site>.cardconnect.com:<port>/cardconnect/rest/capture" set responseStr [CkHttp_putText $http $url [CkJsonObject_emit $json] "utf-8" "application/json" 0 0] if {[CkHttp_get_LastMethodSuccess $http] == 0} then { puts [CkHttp_lastErrorText $http] delete_CkHttp $http delete_CkJsonObject $json exit } # A response status of 200 indicates potential success. The JSON response body # must be examined to determine if it was truly successful or an error. puts "response status code = [CkHttp_get_LastStatus $http]" set jsonResp [new_CkJsonObject] CkJsonObject_Load $jsonResp $responseStr CkJsonObject_put_EmitCompact $jsonResp 0 puts "response JSON:" puts [CkJsonObject_emit $jsonResp] # A successful response looks like this: # { # "amount": "596.00", # "resptext": "Approval", # "setlstat": "Queued for Capture", # "commcard": " C ", # "respcode": "00", # "batchid": "1900942291", # "merchid": "MERCHANT_ID", # "token": "9418594164541111", # "authcode": "PPS158", # "respproc": "FNOR", # "retref": "112989260941", # "respstat": "A", # "account": "9418594164541111" # } # Use this online tool to generate parsing code from sample JSON: # Generate Parsing Code from JSON set amount [CkJsonObject_stringOf $jsonResp "amount"] set resptext [CkJsonObject_stringOf $jsonResp "resptext"] set setlstat [CkJsonObject_stringOf $jsonResp "setlstat"] set commcard [CkJsonObject_stringOf $jsonResp "commcard"] set respcode [CkJsonObject_stringOf $jsonResp "respcode"] set batchid [CkJsonObject_stringOf $jsonResp "batchid"] set merchid [CkJsonObject_stringOf $jsonResp "merchid"] set token [CkJsonObject_stringOf $jsonResp "token"] set authcode [CkJsonObject_stringOf $jsonResp "authcode"] set respproc [CkJsonObject_stringOf $jsonResp "respproc"] set retref [CkJsonObject_stringOf $jsonResp "retref"] set respstat [CkJsonObject_stringOf $jsonResp "respstat"] set account [CkJsonObject_stringOf $jsonResp "account"] delete_CkHttp $http delete_CkJsonObject $json delete_CkJsonObject $jsonResp |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.