DataFlex
DataFlex
CardConnect Capture Level 3 Data
See more CardConnect Examples
Demonstrates 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
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoHttp
Handle hoJson
String sUrl
Variant vResp
Handle hoResp
Handle hoJsonResp
String sAmount
String sResptext
String sSetlstat
String sCommcard
String sRespcode
String sBatchid
String sMerchid
String sToken
String sAuthcode
String sRespproc
String sRetref
String sRespstat
String sAccount
String sTemp1
Integer iTemp1
Move False To iSuccess
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatHttp)) To hoHttp
If (Not(IsComObjectCreated(hoHttp))) Begin
Send CreateComObject of hoHttp
End
Set ComBasicAuth Of hoHttp To True
Set ComLogin Of hoHttp To "API_USERNAME"
Set ComPassword Of hoHttp To "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
Get Create (RefClass(cComChilkatJsonObject)) To hoJson
If (Not(IsComObjectCreated(hoJson))) Begin
Send CreateComObject of hoJson
End
Get ComUpdateString Of hoJson "retref" "112989260941" To iSuccess
Get ComUpdateString Of hoJson "shiptozip" "11111-1111" To iSuccess
Get ComUpdateString Of hoJson "shipfromzip" "99999-9999" To iSuccess
Get ComUpdateString Of hoJson "amount" "596.00" To iSuccess
Get ComUpdateString Of hoJson "items[0].discamnt" "0" To iSuccess
Get ComUpdateString Of hoJson "items[0].unitcost" "900" To iSuccess
Get ComUpdateString Of hoJson "items[0].uom" "CS" To iSuccess
Get ComUpdateString Of hoJson "items[0].lineno" "1" To iSuccess
Get ComUpdateString Of hoJson "items[0].description" "DESCRIPTION-1" To iSuccess
Get ComUpdateString Of hoJson "items[0].taxamnt" "117" To iSuccess
Get ComUpdateString Of hoJson "items[0].quantity" "1000" To iSuccess
Get ComUpdateString Of hoJson "items[0].upc" "UPC-1" To iSuccess
Get ComUpdateString Of hoJson "items[0].netamnt" "150" To iSuccess
Get ComUpdateString Of hoJson "items[0].material" "MATERIAL-1" To iSuccess
Get ComUpdateString Of hoJson "items[1].discamnt" "0" To iSuccess
Get ComUpdateString Of hoJson "items[1].unitcost" "450" To iSuccess
Get ComUpdateString Of hoJson "items[1].uom" "CS" To iSuccess
Get ComUpdateString Of hoJson "items[1].lineno" "2" To iSuccess
Get ComUpdateString Of hoJson "items[1].description" "DESCRIPTION-2" To iSuccess
Get ComUpdateString Of hoJson "items[1].taxamnt" "117" To iSuccess
Get ComUpdateString Of hoJson "items[1].quantity" "2000" To iSuccess
Get ComUpdateString Of hoJson "items[1].upc" "UPC-1" To iSuccess
Get ComUpdateString Of hoJson "items[1].netamnt" "300" To iSuccess
Get ComUpdateString Of hoJson "items[1].material" "MATERIAL-2" To iSuccess
Get ComUpdateString Of hoJson "taxamount" "40.00" To iSuccess
Get ComUpdateString Of hoJson "merchid" "MERCHANT_ID" To iSuccess
Get ComUpdateString Of hoJson "account" "4111111111111111" To iSuccess
Get ComUpdateString Of hoJson "ponumber" "PO-0736332" To iSuccess
Move "https://<site>.cardconnect.com:<port>/cardconnect/rest/capture" To sUrl
Get Create (RefClass(cComChilkatHttpResponse)) To hoResp
If (Not(IsComObjectCreated(hoResp))) Begin
Send CreateComObject of hoResp
End
Get ComEmit Of hoJson To sTemp1
Get pvComObject of hoResp to vResp
Get ComHttpStr Of hoHttp "PUT" sUrl sTemp1 "utf-8" "application/json" vResp To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoHttp To sTemp1
Showln sTemp1
Procedure_Return
End
// 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.
Get ComStatusCode Of hoResp To iTemp1
Showln "response status code = " iTemp1
Get Create (RefClass(cComChilkatJsonObject)) To hoJsonResp
If (Not(IsComObjectCreated(hoJsonResp))) Begin
Send CreateComObject of hoJsonResp
End
Get ComBodyStr Of hoResp To sTemp1
Get ComLoad Of hoJsonResp sTemp1 To iSuccess
Set ComEmitCompact Of hoJsonResp To False
Showln "response JSON:"
Get ComEmit Of hoJsonResp To sTemp1
Showln sTemp1
// 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
Get ComStringOf Of hoJsonResp "amount" To sAmount
Get ComStringOf Of hoJsonResp "resptext" To sResptext
Get ComStringOf Of hoJsonResp "setlstat" To sSetlstat
Get ComStringOf Of hoJsonResp "commcard" To sCommcard
Get ComStringOf Of hoJsonResp "respcode" To sRespcode
Get ComStringOf Of hoJsonResp "batchid" To sBatchid
Get ComStringOf Of hoJsonResp "merchid" To sMerchid
Get ComStringOf Of hoJsonResp "token" To sToken
Get ComStringOf Of hoJsonResp "authcode" To sAuthcode
Get ComStringOf Of hoJsonResp "respproc" To sRespproc
Get ComStringOf Of hoJsonResp "retref" To sRetref
Get ComStringOf Of hoJsonResp "respstat" To sRespstat
Get ComStringOf Of hoJsonResp "account" To sAccount
End_Procedure