Credit Sale Convert to JSON
curl --request POST \
--url https://pipay.io/piconnect/process \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data 'response=%20%1CT01%1C1.37%1C000000%1COK%1C00%1FAPPROVAL%20TAS213%1FTAS213%1F801719500067%1F%1F23%1C01%1C2203%1F0%1F0%1F0%1F0%1F0%1F%1F%1C2142%1F4%1F0121%1F%1F%1F%1F01%1FPAYMENT%20INNOVATORS%2FTEST%20T%1F%1F%1F0%1C13%1F50%1F20180117111513%1C%1F%1C%1C%1CTOKEN%3DXj02K6IZfo5M2142%1FCARDBIN%3D441840%1FSN%3D53211269%1FTC%3DC5BB26C00F78D78B%1FTVR%3D8080008000%1FAID%3DA0000000031010%1FTSI%3D6C00%1FATC%3D0019%1FAPPLAB%3DVisa%20Credit%1FIAD%3D06010A03600000%1FARC%3D00%1FCID%3D40%1FCVM%3D6&account=1512407959&sn=31415926&mode=2'
#include <C_CkRestW.h>
#include <C_CkJsonObjectW.h>
void ChilkatSample(void)
{
HCkRestW rest;
BOOL success;
BOOL bTls;
int port;
BOOL bAutoReconnect;
const wchar_t *strResponseBody;
HCkJsonObjectW jsonResponse;
const wchar_t *TransactionResult;
const wchar_t *PTK;
const wchar_t *ResponseCode;
int ApprovedAmount;
const wchar_t *TransactionID;
const wchar_t *AuthCode;
const wchar_t *Token;
const wchar_t *CardType;
const wchar_t *AccountNum;
const wchar_t *ExpDate;
const wchar_t *TicketID;
const wchar_t *ResponseMsg;
const wchar_t *HostCode;
const wchar_t *Timestamp;
BOOL AvsResponse;
const wchar_t *CardHolder;
const wchar_t *BusinessId;
const wchar_t *UniqueId;
const wchar_t *TransType;
const wchar_t *EntryMode;
const wchar_t *RefNum;
const wchar_t *SerialNo;
const wchar_t *AmountDue;
int TipAmount;
BOOL CvResponse;
const wchar_t *HostResponse;
BOOL ExtraBalance;
const wchar_t *CardBin;
const wchar_t *Tc;
const wchar_t *Tvr;
const wchar_t *Aid;
const wchar_t *Tsi;
const wchar_t *Atc;
const wchar_t *AppLab;
BOOL AppPN;
const wchar_t *Iad;
const wchar_t *Arc;
const wchar_t *Cid;
BOOL Cvm;
int i;
int count_i;
const wchar_t *strVal;
rest = CkRestW_Create();
// URL: https://pipay.io/piconnect/process
bTls = TRUE;
port = 443;
bAutoReconnect = TRUE;
success = CkRestW_Connect(rest,L"pipay.io",port,bTls,bAutoReconnect);
if (success != TRUE) {
wprintf(L"ConnectFailReason: %d\n",CkRestW_getConnectFailReason(rest));
wprintf(L"%s\n",CkRestW_lastErrorText(rest));
CkRestW_Dispose(rest);
return;
}
CkRestW_AddQueryParam(rest,L"response",L" T011.37000000OK00APPROVAL TAS213TAS213801719500067230122030000021424012101PAYMENT INNOVATORS/TEST T0135020180117111513TOKEN=Xj02K6IZfo5M2142CARDBIN=441840SN=53211269TC=C5BB26C00F78D78BTVR=8080008000AID=A0000000031010TSI=6C00ATC=0019APPLAB=Visa CreditIAD=06010A03600000ARC=00CID=40CVM=6");
CkRestW_AddQueryParam(rest,L"account",L"1512407959");
CkRestW_AddQueryParam(rest,L"sn",L"31415926");
CkRestW_AddQueryParam(rest,L"mode",L"2");
strResponseBody = CkRestW_fullRequestFormUrlEncoded(rest,L"POST",L"/piconnect/process");
if (CkRestW_getLastMethodSuccess(rest) != TRUE) {
wprintf(L"%s\n",CkRestW_lastErrorText(rest));
CkRestW_Dispose(rest);
return;
}
jsonResponse = CkJsonObjectW_Create();
CkJsonObjectW_Load(jsonResponse,strResponseBody);
TransactionResult = CkJsonObjectW_stringOf(jsonResponse,L"TransactionResult");
PTK = CkJsonObjectW_stringOf(jsonResponse,L"PTK");
ResponseCode = CkJsonObjectW_stringOf(jsonResponse,L"ResponseCode");
ApprovedAmount = CkJsonObjectW_IntOf(jsonResponse,L"ApprovedAmount");
TransactionID = CkJsonObjectW_stringOf(jsonResponse,L"TransactionID");
AuthCode = CkJsonObjectW_stringOf(jsonResponse,L"AuthCode");
Token = CkJsonObjectW_stringOf(jsonResponse,L"Token");
CardType = CkJsonObjectW_stringOf(jsonResponse,L"CardType");
AccountNum = CkJsonObjectW_stringOf(jsonResponse,L"AccountNum");
ExpDate = CkJsonObjectW_stringOf(jsonResponse,L"ExpDate");
TicketID = CkJsonObjectW_stringOf(jsonResponse,L"TicketID");
ResponseMsg = CkJsonObjectW_stringOf(jsonResponse,L"ResponseMsg");
HostCode = CkJsonObjectW_stringOf(jsonResponse,L"HostCode");
Timestamp = CkJsonObjectW_stringOf(jsonResponse,L"Timestamp");
AvsResponse = CkJsonObjectW_IsNullOf(jsonResponse,L"AvsResponse");
CardHolder = CkJsonObjectW_stringOf(jsonResponse,L"CardHolder");
BusinessId = CkJsonObjectW_stringOf(jsonResponse,L"BusinessId");
UniqueId = CkJsonObjectW_stringOf(jsonResponse,L"UniqueId");
TransType = CkJsonObjectW_stringOf(jsonResponse,L"TransType");
EntryMode = CkJsonObjectW_stringOf(jsonResponse,L"EntryMode");
RefNum = CkJsonObjectW_stringOf(jsonResponse,L"RefNum");
SerialNo = CkJsonObjectW_stringOf(jsonResponse,L"SerialNo");
AmountDue = CkJsonObjectW_stringOf(jsonResponse,L"AmountDue");
TipAmount = CkJsonObjectW_IntOf(jsonResponse,L"TipAmount");
CvResponse = CkJsonObjectW_IsNullOf(jsonResponse,L"CvResponse");
HostResponse = CkJsonObjectW_stringOf(jsonResponse,L"HostResponse");
ExtraBalance = CkJsonObjectW_IsNullOf(jsonResponse,L"ExtraBalance");
CardBin = CkJsonObjectW_stringOf(jsonResponse,L"CardBin");
Tc = CkJsonObjectW_stringOf(jsonResponse,L"Tc");
Tvr = CkJsonObjectW_stringOf(jsonResponse,L"Tvr");
Aid = CkJsonObjectW_stringOf(jsonResponse,L"Aid");
Tsi = CkJsonObjectW_stringOf(jsonResponse,L"Tsi");
Atc = CkJsonObjectW_stringOf(jsonResponse,L"Atc");
AppLab = CkJsonObjectW_stringOf(jsonResponse,L"AppLab");
AppPN = CkJsonObjectW_IsNullOf(jsonResponse,L"AppPN");
Iad = CkJsonObjectW_stringOf(jsonResponse,L"Iad");
Arc = CkJsonObjectW_stringOf(jsonResponse,L"Arc");
Cid = CkJsonObjectW_stringOf(jsonResponse,L"Cid");
Cvm = CkJsonObjectW_IsNullOf(jsonResponse,L"Cvm");
i = 0;
count_i = CkJsonObjectW_SizeOfArray(jsonResponse,L"Method");
while (i < count_i) {
CkJsonObjectW_putI(jsonResponse,i);
strVal = CkJsonObjectW_stringOf(jsonResponse,L"Method[i]");
i = i + 1;
}
CkRestW_Dispose(rest);
CkJsonObjectW_Dispose(jsonResponse);
}
{
"TransactionResult": "true",
"PTK": "F9JURF2HLo",
"ResponseCode": "000000",
"ApprovedAmount": 22.03,
"TransactionID": "13",
"AuthCode": "TAS213",
"Token": "Xj02K6IZfo5M2142",
"CardType": "VISA",
"AccountNum": "2142",
"ExpDate": "0121",
"TicketID": "50",
"ResponseMsg": "OK",
"HostCode": "00",
"Timestamp": "20180117111513",
"AvsResponse": null,
"CardHolder": "PAYMENT INNOVATORS/TEST T",
"BusinessId": "1512407959",
"UniqueId": "5a8af729c5b1b",
"TransType": "SALE",
"EntryMode": "CHIP",
"RefNum": "801719500067",
"SerialNo": "53211269",
"AmountDue": "0",
"TipAmount": 0,
"CvResponse": null,
"HostResponse": "APPROVAL TAS213",
"ExtraBalance": null,
"CardBin": "441840",
"Tc": "A0019",
"Tvr": "8080008000",
"Aid": "A0000000031010",
"Tsi": "6C00",
"Atc": "0019",
"AppLab": "Visa Credit",
"AppPN": null,
"Iad": "06010A03600000",
"Arc": "00",
"Cid": "40",
"Cvm": null,
"Method": [
"T01"
]
}