SQL Server 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

SQL Server Example

CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    DECLARE @iTmp0 int
    DECLARE @sTmp0 nvarchar(4000)
    DECLARE @rest int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.Rest', @rest OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    DECLARE @success int

    --  URL: https://api.stripe.com/v1/disputes?limit=3
    DECLARE @bTls int
    SELECT @bTls = 1
    DECLARE @port int
    SELECT @port = 443
    DECLARE @bAutoReconnect int
    SELECT @bAutoReconnect = 1
    EXEC sp_OAMethod @rest, 'Connect', @success OUT, 'api.stripe.com', STR(@port), STR(@bTls), STR(@bAutoReconnect)
    IF STR(@success) <> 1
      BEGIN

        EXEC sp_OAGetProperty @rest, 'ConnectFailReason', @iTmp0 OUT
        PRINT 'ConnectFailReason: ' + @iTmp0
        EXEC sp_OAGetProperty @rest, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @rest
        RETURN
      END

    EXEC sp_OAMethod @rest, 'SetAuthBasic', @success OUT, 'STRIPE_SECRET_KEY', ''

    DECLARE @sbResponseBody int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.StringBuilder', @sbResponseBody OUT

    EXEC sp_OAMethod @rest, 'FullRequestNoBodySb', @success OUT, 'GET', '/v1/disputes?limit=3', STR(@sbResponseBody)
    IF STR(@success) <> 1
      BEGIN
        EXEC sp_OAGetProperty @rest, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @rest
        EXEC @hr = sp_OADestroy @sbResponseBody
        RETURN
      END

    DECLARE @jsonResponse int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.JsonObject', @jsonResponse OUT

    EXEC sp_OAMethod @jsonResponse, 'LoadSb', @success OUT, STR(@sbResponseBody)

    DECLARE @object nvarchar(4000)

    DECLARE @url nvarchar(4000)

    DECLARE @has_more int

    DECLARE @i int

    DECLARE @count_i int

    DECLARE @id nvarchar(4000)

    DECLARE @amount int

    DECLARE @balance_transaction nvarchar(4000)

    DECLARE @charge nvarchar(4000)

    DECLARE @created int

    DECLARE @currency nvarchar(4000)

    DECLARE @evidenceAccess_activity_log int

    DECLARE @evidenceBilling_address int

    DECLARE @evidenceCancellation_policy int

    DECLARE @evidenceCancellation_policy_disclosure int

    DECLARE @evidenceCancellation_rebuttal int

    DECLARE @evidenceCustomer_communication int

    DECLARE @evidenceCustomer_email_address int

    DECLARE @evidenceCustomer_name int

    DECLARE @evidenceCustomer_purchase_ip int

    DECLARE @evidenceCustomer_signature int

    DECLARE @evidenceDuplicate_charge_documentation int

    DECLARE @evidenceDuplicate_charge_explanation int

    DECLARE @evidenceDuplicate_charge_id int

    DECLARE @evidenceProduct_description int

    DECLARE @evidenceReceipt int

    DECLARE @evidenceRefund_policy int

    DECLARE @evidenceRefund_policy_disclosure int

    DECLARE @evidenceRefund_refusal_explanation int

    DECLARE @evidenceService_date int

    DECLARE @evidenceService_documentation int

    DECLARE @evidenceShipping_address int

    DECLARE @evidenceShipping_carrier int

    DECLARE @evidenceShipping_date int

    DECLARE @evidenceShipping_documentation int

    DECLARE @evidenceShipping_tracking_number int

    DECLARE @evidenceUncategorized_file int

    DECLARE @evidenceUncategorized_text int

    DECLARE @evidence_detailsDue_by int

    DECLARE @evidence_detailsHas_evidence int

    DECLARE @evidence_detailsPast_due int

    DECLARE @evidence_detailsSubmission_count int

    DECLARE @is_charge_refundable int

    DECLARE @livemode int

    DECLARE @reason nvarchar(4000)

    DECLARE @status nvarchar(4000)

    DECLARE @j int

    DECLARE @count_j int

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

    EXEC @hr = sp_OADestroy @rest
    EXEC @hr = sp_OADestroy @sbResponseBody
    EXEC @hr = sp_OADestroy @jsonResponse


END
GO

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"
    }
  ]
}