Sample code for 30+ languages & platforms
Xbase++

CardConnect Funding

See more CardConnect Examples

Demonstrates how to get the merchant funding information.
The funding endpoint provides merchant funding information supported by supplemental transaction and funding adjustment detail. This information is provided by the host payment processing platform (for example, First Data Omaha). ...

See https://developer.cardconnect.com/cardconnect-api?lang=json#funding

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oHttp
LOCAL cUrl
LOCAL cResponseStr
LOCAL oJsonResp
LOCAL nFundingmasterid
LOCAL cFundingdate
LOCAL cDatechanged
LOCAL cMerchid
LOCAL i
LOCAL nCount_i
LOCAL cAmount
LOCAL nFundingadjustmentid
LOCAL cDescription
LOCAL cCurrency
LOCAL cCategory
LOCAL cV_type
LOCAL cDateadded
LOCAL nFundingid
LOCAL cNetsales
LOCAL cTotalfunding
LOCAL cFee
LOCAL cDeposittrancode
LOCAL cDdanumber
LOCAL cThirdparty
LOCAL cReversal
LOCAL cInterchangefee
LOCAL cAdjustment
LOCAL cDepositachtracenumber
LOCAL cServicecharge
LOCAL cOtheradjustment
LOCAL cAbanumber
LOCAL cDate
LOCAL cDowngradereasoncodes
LOCAL cCardproc
LOCAL cSourcetransactionid
LOCAL nBatchid
LOCAL cRespcode
LOCAL cInterchangeunitfee
LOCAL cAuthcode
LOCAL cPlancode
LOCAL nAuthdate
LOCAL nFundingtxnid
LOCAL cCardbrand
LOCAL cTerminalnumber
LOCAL cCardnumber
LOCAL cCardtype
LOCAL cRetref
LOCAL cStatus
LOCAL cInterchangepercentfee
LOCAL cInvoicenumber

nSuccess := 0

//  This example assumes the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

oHttp := CreateObject("Chilkat.Http")

oHttp:BasicAuth := 1
oHttp:Login := "API_USERNAME"
oHttp:Password := "API_PASSWORD"

cUrl := "https://<site>.cardconnect.com:<port>/cardconnect/rest/funding?merchid=<merchid>&date=<MMDD>"
cResponseStr := oHttp:QuickGetStr(cUrl)
IF (oHttp:LastMethodSuccess == 0)
    ? oHttp:LastErrorText
    oHttp:destroy()
    RETURN
ENDIF

//  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.
? "response status code = " + Str(oHttp:LastStatus)

oJsonResp := CreateObject("Chilkat.JsonObject")
oJsonResp:Load(cResponseStr)
oJsonResp:EmitCompact := 0

? "response JSON:"
? oJsonResp:Emit()

//  A successful response looks like this:

//  ------
//  See the parsing code below...
//  ------

//  {
//    "fundingmasterid": 1121753252164835,
//    "fundingdate": "2019-04-22",
//    "adjustments": [
//      {
//        "fundingmasterid": 1121753252164835,
//        "amount": "-44.98",
//        "datechanged": "2019-04-22",
//        "fundingadjustmentid": 1121754400164838,
//        "description": "THE CARDHOLDER DID NOT AUTHORIZE THE CHARGE.",
//        "currency": "USD",
//        "category": "REVERSAL",
//        "type": "CHARGEBACKS/CHARGEBACK REVERSALS",
//        "dateadded": "2019-04-22",
//        "merchid": "MERCHANT_ID"
//      },
//      {
//        "fundingmasterid": 1121753252164835,
//        "amount": "-32.96",
//        "datechanged": "2019-04-22",
//        "fundingadjustmentid": 1121754401164838,
//        "description": "THIRD PARTY ADJUSTMENTS",
//        "currency": "USD",
//        "category": "THIRD PARTY",
//        "type": "THIRD PARTY ADJUSTMENTS",
//        "dateadded": "2019-04-22",
//        "merchid": "MERCHANT_ID"
//      }
//    ],
//    "datechanged": null,
//    "fundings": [
//      {
//        "fundingid": 1121753284164836,
//        "netsales": "129453.03",
//        "totalfunding": "129375.09",
//        "fee": "0",
//        "datechanged": "2019-04-22",
//        "deposittrancode": null,
//        "ddanumber": "3300770540",
//        "thirdparty": "-32.96",
//        "dateadded": "2019-04-22",
//        "fundingmasterid": 1121753252164835,
//        "reversal": "-44.98",
//        "interchangefee": "0",
//        "adjustment": "0",
//        "currency": "USD",
//        "depositachtracenumber": null,
//        "servicecharge": "0",
//        "otheradjustment": "0",
//        "abanumber": "121140399"
//      }
//    ],
//    "merchid": "MERCHANT_ID",
//    "txns": [
//      {
//        "date": "2019-04-19",
//        "amount": "76.75",
//        "downgradereasoncodes": null,
//        "fundingid": 1121753409164836,
//        "cardproc": "FNOR",
//        "sourcetransactionid": null,
//        "type": "SALE",
//        "batchid": 1900942289,
//        "respcode": "00",
//        "interchangeunitfee": "0",
//        "authcode": "PPS209",
//        "plancode": null,
//        "authdate": 20190419194808,
//        "fundingtxnid": 1121753252164835,
//        "cardbrand": "VISA",
//        "currency": "USD",
//        "terminalnumber": null,
//        "cardnumber": "42XXXXXXXXXX4242",
//        "cardtype": "Credit",
//        "retref": "109624271288",
//        "status": "Processed",
//        "interchangepercentfee": "0",
//        "invoicenumber": null
//      },
//      {
//        "date": "2019-04-19",
//        "amount": "9.99",
//        "downgradereasoncodes": null,
//        "fundingid": 1121753410164836,
//        "cardproc": "FNOR",
//        "sourcetransactionid": null,
//        "type": "SALE",
//        "batchid": 1900942289,
//        "respcode": "00",
//        "interchangeunitfee": "0",
//        "authcode": "PPS009",
//        "plancode": null,
//        "authdate": 20190419201502,
//        "fundingtxnid": 1121753252164835,
//        "cardbrand": "VISA",
//        "currency": "USD",
//        "terminalnumber": null,
//        "cardnumber": "47XXXXXXXXXX1443",
//        "cardtype": "Credit",
//        "retref": "109638272902",
//        "status": "Processed",
//        "interchangepercentfee": "0",
//        "invoicenumber": null
//      }
//    ]
//  }
//  

//  Use this online tool to generate parsing code from sample JSON: 
//  Generate Parsing Code from JSON

nFundingmasterid := oJsonResp:IntOf("fundingmasterid")
cFundingdate := oJsonResp:StringOf("fundingdate")
cDatechanged := oJsonResp:StringOf("datechanged")
cMerchid := oJsonResp:StringOf("merchid")
i := 0
nCount_i := oJsonResp:SizeOfArray("adjustments")
DO WHILE i < nCount_i
    oJsonResp:I := i
    nFundingmasterid := oJsonResp:IntOf("adjustments[i].fundingmasterid")
    cAmount := oJsonResp:StringOf("adjustments[i].amount")
    cDatechanged := oJsonResp:StringOf("adjustments[i].datechanged")
    nFundingadjustmentid := oJsonResp:IntOf("adjustments[i].fundingadjustmentid")
    cDescription := oJsonResp:StringOf("adjustments[i].description")
    cCurrency := oJsonResp:StringOf("adjustments[i].currency")
    cCategory := oJsonResp:StringOf("adjustments[i].category")
    cV_type := oJsonResp:StringOf("adjustments[i].type")
    cDateadded := oJsonResp:StringOf("adjustments[i].dateadded")
    cMerchid := oJsonResp:StringOf("adjustments[i].merchid")
    i := i + 1
ENDDO
i := 0
nCount_i := oJsonResp:SizeOfArray("fundings")
DO WHILE i < nCount_i
    oJsonResp:I := i
    nFundingid := oJsonResp:IntOf("fundings[i].fundingid")
    cNetsales := oJsonResp:StringOf("fundings[i].netsales")
    cTotalfunding := oJsonResp:StringOf("fundings[i].totalfunding")
    cFee := oJsonResp:StringOf("fundings[i].fee")
    cDatechanged := oJsonResp:StringOf("fundings[i].datechanged")
    cDeposittrancode := oJsonResp:StringOf("fundings[i].deposittrancode")
    cDdanumber := oJsonResp:StringOf("fundings[i].ddanumber")
    cThirdparty := oJsonResp:StringOf("fundings[i].thirdparty")
    cDateadded := oJsonResp:StringOf("fundings[i].dateadded")
    nFundingmasterid := oJsonResp:IntOf("fundings[i].fundingmasterid")
    cReversal := oJsonResp:StringOf("fundings[i].reversal")
    cInterchangefee := oJsonResp:StringOf("fundings[i].interchangefee")
    cAdjustment := oJsonResp:StringOf("fundings[i].adjustment")
    cCurrency := oJsonResp:StringOf("fundings[i].currency")
    cDepositachtracenumber := oJsonResp:StringOf("fundings[i].depositachtracenumber")
    cServicecharge := oJsonResp:StringOf("fundings[i].servicecharge")
    cOtheradjustment := oJsonResp:StringOf("fundings[i].otheradjustment")
    cAbanumber := oJsonResp:StringOf("fundings[i].abanumber")
    i := i + 1
ENDDO
i := 0
nCount_i := oJsonResp:SizeOfArray("txns")
DO WHILE i < nCount_i
    oJsonResp:I := i
    cDate := oJsonResp:StringOf("txns[i].date")
    cAmount := oJsonResp:StringOf("txns[i].amount")
    cDowngradereasoncodes := oJsonResp:StringOf("txns[i].downgradereasoncodes")
    nFundingid := oJsonResp:IntOf("txns[i].fundingid")
    cCardproc := oJsonResp:StringOf("txns[i].cardproc")
    cSourcetransactionid := oJsonResp:StringOf("txns[i].sourcetransactionid")
    cV_type := oJsonResp:StringOf("txns[i].type")
    nBatchid := oJsonResp:IntOf("txns[i].batchid")
    cRespcode := oJsonResp:StringOf("txns[i].respcode")
    cInterchangeunitfee := oJsonResp:StringOf("txns[i].interchangeunitfee")
    cAuthcode := oJsonResp:StringOf("txns[i].authcode")
    cPlancode := oJsonResp:StringOf("txns[i].plancode")
    nAuthdate := oJsonResp:IntOf("txns[i].authdate")
    nFundingtxnid := oJsonResp:IntOf("txns[i].fundingtxnid")
    cCardbrand := oJsonResp:StringOf("txns[i].cardbrand")
    cCurrency := oJsonResp:StringOf("txns[i].currency")
    cTerminalnumber := oJsonResp:StringOf("txns[i].terminalnumber")
    cCardnumber := oJsonResp:StringOf("txns[i].cardnumber")
    cCardtype := oJsonResp:StringOf("txns[i].cardtype")
    cRetref := oJsonResp:StringOf("txns[i].retref")
    cStatus := oJsonResp:StringOf("txns[i].status")
    cInterchangepercentfee := oJsonResp:StringOf("txns[i].interchangepercentfee")
    cInvoicenumber := oJsonResp:StringOf("txns[i].invoicenumber")
    i := i + 1
ENDDO

oHttp:destroy()
oJsonResp:destroy()