Xojo Plugin Stripe: List all Disputes

Back to Index

Returns a list of your disputes.

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

CURL Command

curl https://api.stripe.com/v1/disputes?limit=3 \
   -u STRIPE_SECRET_KEY: \
   -G

Xojo Plugin Example

Dim rest As New Chilkat.Rest
Dim success As Boolean

//  URL: https://api.stripe.com/v1/disputes?limit=3
Dim bTls As Boolean
bTls = True
Dim port As Int32
port = 443
Dim bAutoReconnect As Boolean
bAutoReconnect = True
success = rest.Connect("api.stripe.com",port,bTls,bAutoReconnect)
If (success <> True) Then
    System.DebugLog("ConnectFailReason: " + Str(rest.ConnectFailReason))
    System.DebugLog(rest.LastErrorText)
    Return
End If

rest.SetAuthBasic("STRIPE_SECRET_KEY","")

Dim sbResponseBody As New Chilkat.StringBuilder
success = rest.FullRequestNoBodySb("GET","/v1/disputes?limit=3",sbResponseBody)
If (success <> True) Then
    System.DebugLog(rest.LastErrorText)
    Return
End If

Dim jsonResponse As New Chilkat.JsonObject
jsonResponse.LoadSb(sbResponseBody)

Dim object As String
Dim url As String
Dim has_more As Boolean
Dim i As Int32
Dim count_i As Int32
Dim id As String
Dim amount As Int32
Dim balance_transaction As String
Dim charge As String
Dim created As Int32
Dim currency As String
Dim evidenceAccess_activity_log As Boolean
Dim evidenceBilling_address As Boolean
Dim evidenceCancellation_policy As Boolean
Dim evidenceCancellation_policy_disclosure As Boolean
Dim evidenceCancellation_rebuttal As Boolean
Dim evidenceCustomer_communication As Boolean
Dim evidenceCustomer_email_address As Boolean
Dim evidenceCustomer_name As Boolean
Dim evidenceCustomer_purchase_ip As Boolean
Dim evidenceCustomer_signature As Boolean
Dim evidenceDuplicate_charge_documentation As Boolean
Dim evidenceDuplicate_charge_explanation As Boolean
Dim evidenceDuplicate_charge_id As Boolean
Dim evidenceProduct_description As Boolean
Dim evidenceReceipt As Boolean
Dim evidenceRefund_policy As Boolean
Dim evidenceRefund_policy_disclosure As Boolean
Dim evidenceRefund_refusal_explanation As Boolean
Dim evidenceService_date As Boolean
Dim evidenceService_documentation As Boolean
Dim evidenceShipping_address As Boolean
Dim evidenceShipping_carrier As Boolean
Dim evidenceShipping_date As Boolean
Dim evidenceShipping_documentation As Boolean
Dim evidenceShipping_tracking_number As Boolean
Dim evidenceUncategorized_file As Boolean
Dim evidenceUncategorized_text As Boolean
Dim evidence_detailsDue_by As Int32
Dim evidence_detailsHas_evidence As Boolean
Dim evidence_detailsPast_due As Boolean
Dim evidence_detailsSubmission_count As Int32
Dim is_charge_refundable As Boolean
Dim livemode As Boolean
Dim reason As String
Dim status As String
Dim j As Int32
Dim count_j As Int32

object = jsonResponse.StringOf("object")
url = jsonResponse.StringOf("url")
has_more = jsonResponse.BoolOf("has_more")
i = 0
count_i = jsonResponse.SizeOfArray("data")
While i < count_i
    jsonResponse.I = i
    id = jsonResponse.StringOf("data[i].id")
    object = jsonResponse.StringOf("data[i].object")
    amount = jsonResponse.IntOf("data[i].amount")
    balance_transaction = jsonResponse.StringOf("data[i].balance_transaction")
    charge = jsonResponse.StringOf("data[i].charge")
    created = jsonResponse.IntOf("data[i].created")
    currency = jsonResponse.StringOf("data[i].currency")
    evidenceAccess_activity_log = jsonResponse.IsNullOf("data[i].evidence.access_activity_log")
    evidenceBilling_address = jsonResponse.IsNullOf("data[i].evidence.billing_address")
    evidenceCancellation_policy = jsonResponse.IsNullOf("data[i].evidence.cancellation_policy")
    evidenceCancellation_policy_disclosure = jsonResponse.IsNullOf("data[i].evidence.cancellation_policy_disclosure")
    evidenceCancellation_rebuttal = jsonResponse.IsNullOf("data[i].evidence.cancellation_rebuttal")
    evidenceCustomer_communication = jsonResponse.IsNullOf("data[i].evidence.customer_communication")
    evidenceCustomer_email_address = jsonResponse.IsNullOf("data[i].evidence.customer_email_address")
    evidenceCustomer_name = jsonResponse.IsNullOf("data[i].evidence.customer_name")
    evidenceCustomer_purchase_ip = jsonResponse.IsNullOf("data[i].evidence.customer_purchase_ip")
    evidenceCustomer_signature = jsonResponse.IsNullOf("data[i].evidence.customer_signature")
    evidenceDuplicate_charge_documentation = jsonResponse.IsNullOf("data[i].evidence.duplicate_charge_documentation")
    evidenceDuplicate_charge_explanation = jsonResponse.IsNullOf("data[i].evidence.duplicate_charge_explanation")
    evidenceDuplicate_charge_id = jsonResponse.IsNullOf("data[i].evidence.duplicate_charge_id")
    evidenceProduct_description = jsonResponse.IsNullOf("data[i].evidence.product_description")
    evidenceReceipt = jsonResponse.IsNullOf("data[i].evidence.receipt")
    evidenceRefund_policy = jsonResponse.IsNullOf("data[i].evidence.refund_policy")
    evidenceRefund_policy_disclosure = jsonResponse.IsNullOf("data[i].evidence.refund_policy_disclosure")
    evidenceRefund_refusal_explanation = jsonResponse.IsNullOf("data[i].evidence.refund_refusal_explanation")
    evidenceService_date = jsonResponse.IsNullOf("data[i].evidence.service_date")
    evidenceService_documentation = jsonResponse.IsNullOf("data[i].evidence.service_documentation")
    evidenceShipping_address = jsonResponse.IsNullOf("data[i].evidence.shipping_address")
    evidenceShipping_carrier = jsonResponse.IsNullOf("data[i].evidence.shipping_carrier")
    evidenceShipping_date = jsonResponse.IsNullOf("data[i].evidence.shipping_date")
    evidenceShipping_documentation = jsonResponse.IsNullOf("data[i].evidence.shipping_documentation")
    evidenceShipping_tracking_number = jsonResponse.IsNullOf("data[i].evidence.shipping_tracking_number")
    evidenceUncategorized_file = jsonResponse.IsNullOf("data[i].evidence.uncategorized_file")
    evidenceUncategorized_text = jsonResponse.IsNullOf("data[i].evidence.uncategorized_text")
    evidence_detailsDue_by = jsonResponse.IntOf("data[i].evidence_details.due_by")
    evidence_detailsHas_evidence = jsonResponse.BoolOf("data[i].evidence_details.has_evidence")
    evidence_detailsPast_due = jsonResponse.BoolOf("data[i].evidence_details.past_due")
    evidence_detailsSubmission_count = jsonResponse.IntOf("data[i].evidence_details.submission_count")
    is_charge_refundable = jsonResponse.BoolOf("data[i].is_charge_refundable")
    livemode = jsonResponse.BoolOf("data[i].livemode")
    reason = jsonResponse.StringOf("data[i].reason")
    status = jsonResponse.StringOf("data[i].status")
    j = 0
    count_j = jsonResponse.SizeOfArray("data[i].balance_transactions")
    While j < count_j
        jsonResponse.J = j
        j = j + 1
    Wend
    i = i + 1
Wend

Sample JSON Response Body

{
  "object": "list",
  "url": "/v1/disputes",
  "has_more": false,
  "data": [
    {
      "id": "dp_1BnETJGswQrCoh0Xefx4zP2a",
      "object": "dispute",
      "amount": 1000,
      "balance_transaction": "txn_1BnETJGswQrCoh0XPNBs9uW2",
      "balance_transactions": [
      ],
      "charge": "ch_1BnETJGswQrCoh0XlANDK278",
      "created": 1516662781,
      "currency": "usd",
      "evidence": {
        "access_activity_log": null,
        "billing_address": null,
        "cancellation_policy": null,
        "cancellation_policy_disclosure": null,
        "cancellation_rebuttal": null,
        "customer_communication": null,
        "customer_email_address": null,
        "customer_name": null,
        "customer_purchase_ip": null,
        "customer_signature": null,
        "duplicate_charge_documentation": null,
        "duplicate_charge_explanation": null,
        "duplicate_charge_id": null,
        "product_description": null,
        "receipt": null,
        "refund_policy": null,
        "refund_policy_disclosure": null,
        "refund_refusal_explanation": null,
        "service_date": null,
        "service_documentation": null,
        "shipping_address": null,
        "shipping_carrier": null,
        "shipping_date": null,
        "shipping_documentation": null,
        "shipping_tracking_number": null,
        "uncategorized_file": null,
        "uncategorized_text": 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"
    }
  ]
}