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
(PowerBuilder) 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
integer li_rc oleobject loo_Http integer li_Success oleobject loo_Json string ls_Url string ls_ResponseStr oleobject loo_JsonResp string ls_Amount string ls_Resptext string ls_Setlstat string ls_Commcard string ls_Respcode string ls_Batchid string ls_Merchid string ls_Token string ls_Authcode string ls_Respproc string ls_Retref string ls_Respstat string ls_Account // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. loo_Http = create oleobject // Use "Chilkat_9_5_0.Http" for versions of Chilkat < 10.0.0 li_rc = loo_Http.ConnectToNewObject("Chilkat.Http") if li_rc < 0 then destroy loo_Http MessageBox("Error","Connecting to COM object failed") return end if loo_Http.BasicAuth = 1 loo_Http.Login = "API_USERNAME" loo_Http.Password = "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 loo_Json = create oleobject // Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0 li_rc = loo_Json.ConnectToNewObject("Chilkat.JsonObject") loo_Json.UpdateString("retref","112989260941") loo_Json.UpdateString("shiptozip","11111-1111") loo_Json.UpdateString("shipfromzip","99999-9999") loo_Json.UpdateString("amount","596.00") loo_Json.UpdateString("items[0].discamnt","0") loo_Json.UpdateString("items[0].unitcost","900") loo_Json.UpdateString("items[0].uom","CS") loo_Json.UpdateString("items[0].lineno","1") loo_Json.UpdateString("items[0].description","DESCRIPTION-1") loo_Json.UpdateString("items[0].taxamnt","117") loo_Json.UpdateString("items[0].quantity","1000") loo_Json.UpdateString("items[0].upc","UPC-1") loo_Json.UpdateString("items[0].netamnt","150") loo_Json.UpdateString("items[0].material","MATERIAL-1") loo_Json.UpdateString("items[1].discamnt","0") loo_Json.UpdateString("items[1].unitcost","450") loo_Json.UpdateString("items[1].uom","CS") loo_Json.UpdateString("items[1].lineno","2") loo_Json.UpdateString("items[1].description","DESCRIPTION-2") loo_Json.UpdateString("items[1].taxamnt","117") loo_Json.UpdateString("items[1].quantity","2000") loo_Json.UpdateString("items[1].upc","UPC-1") loo_Json.UpdateString("items[1].netamnt","300") loo_Json.UpdateString("items[1].material","MATERIAL-2") loo_Json.UpdateString("taxamount","40.00") loo_Json.UpdateString("merchid","MERCHANT_ID") loo_Json.UpdateString("account","4111111111111111") loo_Json.UpdateString("ponumber","PO-0736332") ls_Url = "https://<site>.cardconnect.com:<port>/cardconnect/rest/capture" ls_ResponseStr = loo_Http.PutText(ls_Url,loo_Json.Emit(),"utf-8","application/json",0,0) if loo_Http.LastMethodSuccess = 0 then Write-Debug loo_Http.LastErrorText destroy loo_Http destroy loo_Json return end if // 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. Write-Debug "response status code = " + string(loo_Http.LastStatus) loo_JsonResp = create oleobject // Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0 li_rc = loo_JsonResp.ConnectToNewObject("Chilkat.JsonObject") loo_JsonResp.Load(ls_ResponseStr) loo_JsonResp.EmitCompact = 0 Write-Debug "response JSON:" Write-Debug loo_JsonResp.Emit() // 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 ls_Amount = loo_JsonResp.StringOf("amount") ls_Resptext = loo_JsonResp.StringOf("resptext") ls_Setlstat = loo_JsonResp.StringOf("setlstat") ls_Commcard = loo_JsonResp.StringOf("commcard") ls_Respcode = loo_JsonResp.StringOf("respcode") ls_Batchid = loo_JsonResp.StringOf("batchid") ls_Merchid = loo_JsonResp.StringOf("merchid") ls_Token = loo_JsonResp.StringOf("token") ls_Authcode = loo_JsonResp.StringOf("authcode") ls_Respproc = loo_JsonResp.StringOf("respproc") ls_Retref = loo_JsonResp.StringOf("retref") ls_Respstat = loo_JsonResp.StringOf("respstat") ls_Account = loo_JsonResp.StringOf("account") destroy loo_Http destroy loo_Json destroy loo_JsonResp |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.