Unicode C Stripe: Update a Dispute

Back to Index

Submit evidence for a dispute with the given ID.

Documentation: https://stripe.com/docs/api/curl#update_dispute

CURL Command

curl -X POST https://api.stripe.com/v1/disputes/dp_1BnETJGswQrCoh0Xefx4zP2a \
   -u STRIPE_SECRET_KEY: \
   -d evidence[customer_name]="Isabella Williams" \
   -d evidence[product_description]="Comfortable cotton t-shirt" \
   -d evidence[shipping_documentation]=file_1BnEEuGswQrCoh0XqB3XkqAg

Unicode C Example

#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 *id;
    const wchar_t *object;
    int amount;
    const wchar_t *balance_transaction;
    const wchar_t *charge;
    int created;
    const wchar_t *currency;
    const wchar_t *evidenceProduct_description;
    const wchar_t *evidenceCustomer_name;
    BOOL evidenceCustomer_email_address;
    BOOL evidenceBilling_address;
    BOOL evidenceCustomer_purchase_ip;
    BOOL evidenceShipping_address;
    BOOL evidenceShipping_date;
    BOOL evidenceShipping_carrier;
    BOOL evidenceShipping_tracking_number;
    BOOL evidenceService_date;
    BOOL evidenceAccess_activity_log;
    BOOL evidenceDuplicate_charge_id;
    BOOL evidenceDuplicate_charge_explanation;
    BOOL evidenceRefund_policy_disclosure;
    BOOL evidenceRefund_refusal_explanation;
    BOOL evidenceCancellation_policy_disclosure;
    BOOL evidenceCancellation_rebuttal;
    BOOL evidenceUncategorized_text;
    BOOL evidenceCustomer_signature;
    BOOL evidenceReceipt;
    const wchar_t *evidenceShipping_documentation;
    BOOL evidenceService_documentation;
    BOOL evidenceDuplicate_charge_documentation;
    BOOL evidenceRefund_policy;
    BOOL evidenceCancellation_policy;
    BOOL evidenceCustomer_communication;
    BOOL evidenceUncategorized_file;
    int evidence_detailsDue_by;
    BOOL evidence_detailsHas_evidence;
    BOOL evidence_detailsPast_due;
    int evidence_detailsSubmission_count;
    BOOL is_charge_refundable;
    BOOL livemode;
    const wchar_t *reason;
    const wchar_t *status;
    int i;
    int count_i;

    rest = CkRestW_Create();

    //  URL: https://api.stripe.com/v1/disputes/dp_1BnETJGswQrCoh0Xefx4zP2a
    bTls = TRUE;
    port = 443;
    bAutoReconnect = TRUE;
    success = CkRestW_Connect(rest,L"api.stripe.com",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_SetAuthBasic(rest,L"STRIPE_SECRET_KEY",L"");

    CkRestW_AddQueryParam(rest,L"evidence[customer_name]",L"Isabella Williams");
    CkRestW_AddQueryParam(rest,L"evidence[product_description]",L"Comfortable cotton t-shirt");
    CkRestW_AddQueryParam(rest,L"evidence[shipping_documentation]",L"file_1BnEEuGswQrCoh0XqB3XkqAg");

    strResponseBody = CkRestW_fullRequestFormUrlEncoded(rest,L"POST",L"/v1/disputes/dp_1BnETJGswQrCoh0Xefx4zP2a");
    if (CkRestW_getLastMethodSuccess(rest) != TRUE) {
        wprintf(L"%s\n",CkRestW_lastErrorText(rest));
        CkRestW_Dispose(rest);
        return;
    }

    jsonResponse = CkJsonObjectW_Create();
    CkJsonObjectW_Load(jsonResponse,strResponseBody);

    id = CkJsonObjectW_stringOf(jsonResponse,L"id");
    object = CkJsonObjectW_stringOf(jsonResponse,L"object");
    amount = CkJsonObjectW_IntOf(jsonResponse,L"amount");
    balance_transaction = CkJsonObjectW_stringOf(jsonResponse,L"balance_transaction");
    charge = CkJsonObjectW_stringOf(jsonResponse,L"charge");
    created = CkJsonObjectW_IntOf(jsonResponse,L"created");
    currency = CkJsonObjectW_stringOf(jsonResponse,L"currency");
    evidenceProduct_description = CkJsonObjectW_stringOf(jsonResponse,L"evidence.product_description");
    evidenceCustomer_name = CkJsonObjectW_stringOf(jsonResponse,L"evidence.customer_name");
    evidenceCustomer_email_address = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.customer_email_address");
    evidenceBilling_address = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.billing_address");
    evidenceCustomer_purchase_ip = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.customer_purchase_ip");
    evidenceShipping_address = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.shipping_address");
    evidenceShipping_date = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.shipping_date");
    evidenceShipping_carrier = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.shipping_carrier");
    evidenceShipping_tracking_number = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.shipping_tracking_number");
    evidenceService_date = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.service_date");
    evidenceAccess_activity_log = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.access_activity_log");
    evidenceDuplicate_charge_id = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.duplicate_charge_id");
    evidenceDuplicate_charge_explanation = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.duplicate_charge_explanation");
    evidenceRefund_policy_disclosure = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.refund_policy_disclosure");
    evidenceRefund_refusal_explanation = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.refund_refusal_explanation");
    evidenceCancellation_policy_disclosure = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.cancellation_policy_disclosure");
    evidenceCancellation_rebuttal = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.cancellation_rebuttal");
    evidenceUncategorized_text = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.uncategorized_text");
    evidenceCustomer_signature = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.customer_signature");
    evidenceReceipt = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.receipt");
    evidenceShipping_documentation = CkJsonObjectW_stringOf(jsonResponse,L"evidence.shipping_documentation");
    evidenceService_documentation = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.service_documentation");
    evidenceDuplicate_charge_documentation = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.duplicate_charge_documentation");
    evidenceRefund_policy = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.refund_policy");
    evidenceCancellation_policy = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.cancellation_policy");
    evidenceCustomer_communication = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.customer_communication");
    evidenceUncategorized_file = CkJsonObjectW_IsNullOf(jsonResponse,L"evidence.uncategorized_file");
    evidence_detailsDue_by = CkJsonObjectW_IntOf(jsonResponse,L"evidence_details.due_by");
    evidence_detailsHas_evidence = CkJsonObjectW_BoolOf(jsonResponse,L"evidence_details.has_evidence");
    evidence_detailsPast_due = CkJsonObjectW_BoolOf(jsonResponse,L"evidence_details.past_due");
    evidence_detailsSubmission_count = CkJsonObjectW_IntOf(jsonResponse,L"evidence_details.submission_count");
    is_charge_refundable = CkJsonObjectW_BoolOf(jsonResponse,L"is_charge_refundable");
    livemode = CkJsonObjectW_BoolOf(jsonResponse,L"livemode");
    reason = CkJsonObjectW_stringOf(jsonResponse,L"reason");
    status = CkJsonObjectW_stringOf(jsonResponse,L"status");
    i = 0;
    count_i = CkJsonObjectW_SizeOfArray(jsonResponse,L"balance_transactions");
    while (i < count_i) {
        CkJsonObjectW_putI(jsonResponse,i);
        i = i + 1;
    }



    CkRestW_Dispose(rest);
    CkJsonObjectW_Dispose(jsonResponse);

    }

Sample JSON Response Body

{
  "id": "dp_1BnETJGswQrCoh0Xefx4zP2a",
  "object": "dispute",
  "amount": 1000,
  "balance_transaction": "txn_1BnETJGswQrCoh0XPNBs9uW2",
  "balance_transactions": [
  ],
  "charge": "ch_1BnETJGswQrCoh0XlANDK278",
  "created": 1516662781,
  "currency": "usd",
  "evidence": {
    "product_description": "Comfortable cotton t-shirt",
    "customer_name": "Isabella Williams",
    "customer_email_address": null,
    "billing_address": null,
    "customer_purchase_ip": null,
    "shipping_address": null,
    "shipping_date": null,
    "shipping_carrier": null,
    "shipping_tracking_number": null,
    "service_date": null,
    "access_activity_log": null,
    "duplicate_charge_id": null,
    "duplicate_charge_explanation": null,
    "refund_policy_disclosure": null,
    "refund_refusal_explanation": null,
    "cancellation_policy_disclosure": null,
    "cancellation_rebuttal": null,
    "uncategorized_text": null,
    "customer_signature": null,
    "receipt": null,
    "shipping_documentation": "file_1BnEEuGswQrCoh0XqB3XkqAg",
    "service_documentation": null,
    "duplicate_charge_documentation": null,
    "refund_policy": null,
    "cancellation_policy": null,
    "customer_communication": null,
    "uncategorized_file": null
  },
  "evidence_details": {
    "due_by": 1518307199,
    "has_evidence": false,
    "past_due": false,
    "submission_count": 0
  },
  "is_charge_refundable": false,
  "livemode": false,
  "metadata": {},
  "reason": "general",
  "status": "needs_response"
}