Creates a new refund to refund a charge that has previously been created but not yet refunded.
curl https://api.stripe.com/v1/refunds \
-u STRIPE_SECRET_KEY: \
-d charge=ch_1BnETKGswQrCoh0XE7kJI2wj
-X POST
#include <CkRest.h>
#include <CkJsonObject.h>
void ChilkatSample(void)
{
CkRest rest;
bool success;
// URL: https://api.stripe.com/v1/refunds
bool bTls = true;
int port = 443;
bool bAutoReconnect = true;
success = rest.Connect("api.stripe.com",port,bTls,bAutoReconnect);
if (success != true) {
std::cout << "ConnectFailReason: " << rest.get_ConnectFailReason() << "\r\n";
std::cout << rest.lastErrorText() << "\r\n";
return;
}
rest.SetAuthBasic("STRIPE_SECRET_KEY","");
rest.AddQueryParam("charge","ch_1BnETKGswQrCoh0XE7kJI2wj");
const char *strResponseBody = rest.fullRequestFormUrlEncoded("POST","/v1/refunds");
if (rest.get_LastMethodSuccess() != true) {
std::cout << rest.lastErrorText() << "\r\n";
return;
}
CkJsonObject jsonResponse;
jsonResponse.Load(strResponseBody);
const char *id = 0;
const char *object = 0;
int amount;
bool balance_transaction;
const char *charge = 0;
int created;
const char *currency = 0;
bool reason;
bool receipt_number;
const char *status = 0;
id = jsonResponse.stringOf("id");
object = jsonResponse.stringOf("object");
amount = jsonResponse.IntOf("amount");
balance_transaction = jsonResponse.IsNullOf("balance_transaction");
charge = jsonResponse.stringOf("charge");
created = jsonResponse.IntOf("created");
currency = jsonResponse.stringOf("currency");
reason = jsonResponse.IsNullOf("reason");
receipt_number = jsonResponse.IsNullOf("receipt_number");
status = jsonResponse.stringOf("status");
}
{
"id": "re_1BnETKGswQrCoh0XT2qLx7S0",
"object": "refund",
"amount": 100,
"balance_transaction": null,
"charge": "ch_1BnETKGswQrCoh0XE7kJI2wj",
"created": 1516662782,
"currency": "usd",
"metadata": {},
"reason": null,
"receipt_number": null,
"status": "succeeded"
}