SQL Server
SQL Server
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 SQL Server Downloads
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
DECLARE @hr int
DECLARE @iTmp0 int
-- Important: Do not use nvarchar(max). See the warning about using nvarchar(max).
DECLARE @sTmp0 nvarchar(4000)
DECLARE @success int
SELECT @success = 0
-- This example assumes the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.
DECLARE @http int
EXEC @hr = sp_OACreate 'Chilkat.Http', @http OUT
IF @hr <> 0
BEGIN
PRINT 'Failed to create ActiveX component'
RETURN
END
EXEC sp_OASetProperty @http, 'BasicAuth', 1
EXEC sp_OASetProperty @http, 'Login', 'API_USERNAME'
EXEC sp_OASetProperty @http, 'Password', 'API_PASSWORD'
DECLARE @url nvarchar(4000)
SELECT @url = 'https://<site>.cardconnect.com:<port>/cardconnect/rest/funding?merchid=<merchid>&date=<MMDD>'
DECLARE @responseStr nvarchar(4000)
EXEC sp_OAMethod @http, 'QuickGetStr', @responseStr OUT, @url
EXEC sp_OAGetProperty @http, 'LastMethodSuccess', @iTmp0 OUT
IF @iTmp0 = 0
BEGIN
EXEC sp_OAGetProperty @http, 'LastErrorText', @sTmp0 OUT
PRINT @sTmp0
EXEC @hr = sp_OADestroy @http
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.
EXEC sp_OAGetProperty @http, 'LastStatus', @iTmp0 OUT
PRINT 'response status code = ' + @iTmp0
DECLARE @jsonResp int
EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @jsonResp OUT
EXEC sp_OAMethod @jsonResp, 'Load', @success OUT, @responseStr
EXEC sp_OASetProperty @jsonResp, 'EmitCompact', 0
PRINT 'response JSON:'
EXEC sp_OAMethod @jsonResp, 'Emit', @sTmp0 OUT
PRINT @sTmp0
-- 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
DECLARE @fundingmasterid int
DECLARE @fundingdate nvarchar(4000)
DECLARE @datechanged nvarchar(4000)
DECLARE @merchid nvarchar(4000)
DECLARE @i int
DECLARE @count_i int
DECLARE @amount nvarchar(4000)
DECLARE @fundingadjustmentid int
DECLARE @description nvarchar(4000)
DECLARE @currency nvarchar(4000)
DECLARE @category nvarchar(4000)
DECLARE @v_type nvarchar(4000)
DECLARE @dateadded nvarchar(4000)
DECLARE @fundingid int
DECLARE @netsales nvarchar(4000)
DECLARE @totalfunding nvarchar(4000)
DECLARE @fee nvarchar(4000)
DECLARE @deposittrancode nvarchar(4000)
DECLARE @ddanumber nvarchar(4000)
DECLARE @thirdparty nvarchar(4000)
DECLARE @reversal nvarchar(4000)
DECLARE @interchangefee nvarchar(4000)
DECLARE @adjustment nvarchar(4000)
DECLARE @depositachtracenumber nvarchar(4000)
DECLARE @servicecharge nvarchar(4000)
DECLARE @otheradjustment nvarchar(4000)
DECLARE @abanumber nvarchar(4000)
DECLARE @date nvarchar(4000)
DECLARE @downgradereasoncodes nvarchar(4000)
DECLARE @cardproc nvarchar(4000)
DECLARE @sourcetransactionid nvarchar(4000)
DECLARE @batchid int
DECLARE @respcode nvarchar(4000)
DECLARE @interchangeunitfee nvarchar(4000)
DECLARE @authcode nvarchar(4000)
DECLARE @plancode nvarchar(4000)
DECLARE @authdate int
DECLARE @fundingtxnid int
DECLARE @cardbrand nvarchar(4000)
DECLARE @terminalnumber nvarchar(4000)
DECLARE @cardnumber nvarchar(4000)
DECLARE @cardtype nvarchar(4000)
DECLARE @retref nvarchar(4000)
DECLARE @status nvarchar(4000)
DECLARE @interchangepercentfee nvarchar(4000)
DECLARE @invoicenumber nvarchar(4000)
EXEC sp_OAMethod @jsonResp, 'IntOf', @fundingmasterid OUT, 'fundingmasterid'
EXEC sp_OAMethod @jsonResp, 'StringOf', @fundingdate OUT, 'fundingdate'
EXEC sp_OAMethod @jsonResp, 'StringOf', @datechanged OUT, 'datechanged'
EXEC sp_OAMethod @jsonResp, 'StringOf', @merchid OUT, 'merchid'
SELECT @i = 0
EXEC sp_OAMethod @jsonResp, 'SizeOfArray', @count_i OUT, 'adjustments'
WHILE @i < @count_i
BEGIN
EXEC sp_OASetProperty @jsonResp, 'I', @i
EXEC sp_OAMethod @jsonResp, 'IntOf', @fundingmasterid OUT, 'adjustments[i].fundingmasterid'
EXEC sp_OAMethod @jsonResp, 'StringOf', @amount OUT, 'adjustments[i].amount'
EXEC sp_OAMethod @jsonResp, 'StringOf', @datechanged OUT, 'adjustments[i].datechanged'
EXEC sp_OAMethod @jsonResp, 'IntOf', @fundingadjustmentid OUT, 'adjustments[i].fundingadjustmentid'
EXEC sp_OAMethod @jsonResp, 'StringOf', @description OUT, 'adjustments[i].description'
EXEC sp_OAMethod @jsonResp, 'StringOf', @currency OUT, 'adjustments[i].currency'
EXEC sp_OAMethod @jsonResp, 'StringOf', @category OUT, 'adjustments[i].category'
EXEC sp_OAMethod @jsonResp, 'StringOf', @v_type OUT, 'adjustments[i].type'
EXEC sp_OAMethod @jsonResp, 'StringOf', @dateadded OUT, 'adjustments[i].dateadded'
EXEC sp_OAMethod @jsonResp, 'StringOf', @merchid OUT, 'adjustments[i].merchid'
SELECT @i = @i + 1
END
SELECT @i = 0
EXEC sp_OAMethod @jsonResp, 'SizeOfArray', @count_i OUT, 'fundings'
WHILE @i < @count_i
BEGIN
EXEC sp_OASetProperty @jsonResp, 'I', @i
EXEC sp_OAMethod @jsonResp, 'IntOf', @fundingid OUT, 'fundings[i].fundingid'
EXEC sp_OAMethod @jsonResp, 'StringOf', @netsales OUT, 'fundings[i].netsales'
EXEC sp_OAMethod @jsonResp, 'StringOf', @totalfunding OUT, 'fundings[i].totalfunding'
EXEC sp_OAMethod @jsonResp, 'StringOf', @fee OUT, 'fundings[i].fee'
EXEC sp_OAMethod @jsonResp, 'StringOf', @datechanged OUT, 'fundings[i].datechanged'
EXEC sp_OAMethod @jsonResp, 'StringOf', @deposittrancode OUT, 'fundings[i].deposittrancode'
EXEC sp_OAMethod @jsonResp, 'StringOf', @ddanumber OUT, 'fundings[i].ddanumber'
EXEC sp_OAMethod @jsonResp, 'StringOf', @thirdparty OUT, 'fundings[i].thirdparty'
EXEC sp_OAMethod @jsonResp, 'StringOf', @dateadded OUT, 'fundings[i].dateadded'
EXEC sp_OAMethod @jsonResp, 'IntOf', @fundingmasterid OUT, 'fundings[i].fundingmasterid'
EXEC sp_OAMethod @jsonResp, 'StringOf', @reversal OUT, 'fundings[i].reversal'
EXEC sp_OAMethod @jsonResp, 'StringOf', @interchangefee OUT, 'fundings[i].interchangefee'
EXEC sp_OAMethod @jsonResp, 'StringOf', @adjustment OUT, 'fundings[i].adjustment'
EXEC sp_OAMethod @jsonResp, 'StringOf', @currency OUT, 'fundings[i].currency'
EXEC sp_OAMethod @jsonResp, 'StringOf', @depositachtracenumber OUT, 'fundings[i].depositachtracenumber'
EXEC sp_OAMethod @jsonResp, 'StringOf', @servicecharge OUT, 'fundings[i].servicecharge'
EXEC sp_OAMethod @jsonResp, 'StringOf', @otheradjustment OUT, 'fundings[i].otheradjustment'
EXEC sp_OAMethod @jsonResp, 'StringOf', @abanumber OUT, 'fundings[i].abanumber'
SELECT @i = @i + 1
END
SELECT @i = 0
EXEC sp_OAMethod @jsonResp, 'SizeOfArray', @count_i OUT, 'txns'
WHILE @i < @count_i
BEGIN
EXEC sp_OASetProperty @jsonResp, 'I', @i
EXEC sp_OAMethod @jsonResp, 'StringOf', @date OUT, 'txns[i].date'
EXEC sp_OAMethod @jsonResp, 'StringOf', @amount OUT, 'txns[i].amount'
EXEC sp_OAMethod @jsonResp, 'StringOf', @downgradereasoncodes OUT, 'txns[i].downgradereasoncodes'
EXEC sp_OAMethod @jsonResp, 'IntOf', @fundingid OUT, 'txns[i].fundingid'
EXEC sp_OAMethod @jsonResp, 'StringOf', @cardproc OUT, 'txns[i].cardproc'
EXEC sp_OAMethod @jsonResp, 'StringOf', @sourcetransactionid OUT, 'txns[i].sourcetransactionid'
EXEC sp_OAMethod @jsonResp, 'StringOf', @v_type OUT, 'txns[i].type'
EXEC sp_OAMethod @jsonResp, 'IntOf', @batchid OUT, 'txns[i].batchid'
EXEC sp_OAMethod @jsonResp, 'StringOf', @respcode OUT, 'txns[i].respcode'
EXEC sp_OAMethod @jsonResp, 'StringOf', @interchangeunitfee OUT, 'txns[i].interchangeunitfee'
EXEC sp_OAMethod @jsonResp, 'StringOf', @authcode OUT, 'txns[i].authcode'
EXEC sp_OAMethod @jsonResp, 'StringOf', @plancode OUT, 'txns[i].plancode'
EXEC sp_OAMethod @jsonResp, 'IntOf', @authdate OUT, 'txns[i].authdate'
EXEC sp_OAMethod @jsonResp, 'IntOf', @fundingtxnid OUT, 'txns[i].fundingtxnid'
EXEC sp_OAMethod @jsonResp, 'StringOf', @cardbrand OUT, 'txns[i].cardbrand'
EXEC sp_OAMethod @jsonResp, 'StringOf', @currency OUT, 'txns[i].currency'
EXEC sp_OAMethod @jsonResp, 'StringOf', @terminalnumber OUT, 'txns[i].terminalnumber'
EXEC sp_OAMethod @jsonResp, 'StringOf', @cardnumber OUT, 'txns[i].cardnumber'
EXEC sp_OAMethod @jsonResp, 'StringOf', @cardtype OUT, 'txns[i].cardtype'
EXEC sp_OAMethod @jsonResp, 'StringOf', @retref OUT, 'txns[i].retref'
EXEC sp_OAMethod @jsonResp, 'StringOf', @status OUT, 'txns[i].status'
EXEC sp_OAMethod @jsonResp, 'StringOf', @interchangepercentfee OUT, 'txns[i].interchangepercentfee'
EXEC sp_OAMethod @jsonResp, 'StringOf', @invoicenumber OUT, 'txns[i].invoicenumber'
SELECT @i = @i + 1
END
EXEC @hr = sp_OADestroy @http
EXEC @hr = sp_OADestroy @jsonResp
END
GO