DataFlex Stripe: Close a Dispute

Back to Index

Closing the dispute for a charge indicates that you do not have any evidence to submit and are essentially ‘dismissing’ the dispute, acknowledging it as lost

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

CURL Command

curl https://api.stripe.com/v1/disputes/dp_1BnETJGswQrCoh0Xefx4zP2a/close \
   -u STRIPE_SECRET_KEY: \
   -X POST

DataFlex Example

Use ChilkatAx-9.5.0-win32.pkg

Procedure Test
    Handle hoRest
    Boolean iSuccess
    Boolean iBTls
    Integer iPort
    Boolean iBAutoReconnect
    Variant vSbResponseBody
    Handle hoSbResponseBody
    Handle hoJsonResponse
    String sId
    String sObject
    Integer iAmount
    String sBalance_transaction
    String sCharge
    Integer iCreated
    String sCurrency
    Boolean iEvidenceAccess_activity_log
    Boolean iEvidenceBilling_address
    Boolean iEvidenceCancellation_policy
    Boolean iEvidenceCancellation_policy_disclosure
    Boolean iEvidenceCancellation_rebuttal
    Boolean iEvidenceCustomer_communication
    Boolean iEvidenceCustomer_email_address
    Boolean iEvidenceCustomer_name
    Boolean iEvidenceCustomer_purchase_ip
    Boolean iEvidenceCustomer_signature
    Boolean iEvidenceDuplicate_charge_documentation
    Boolean iEvidenceDuplicate_charge_explanation
    Boolean iEvidenceDuplicate_charge_id
    Boolean iEvidenceProduct_description
    Boolean iEvidenceReceipt
    Boolean iEvidenceRefund_policy
    Boolean iEvidenceRefund_policy_disclosure
    Boolean iEvidenceRefund_refusal_explanation
    Boolean iEvidenceService_date
    Boolean iEvidenceService_documentation
    Boolean iEvidenceShipping_address
    Boolean iEvidenceShipping_carrier
    Boolean iEvidenceShipping_date
    Boolean iEvidenceShipping_documentation
    Boolean iEvidenceShipping_tracking_number
    Boolean iEvidenceUncategorized_file
    Boolean iEvidenceUncategorized_text
    Integer iEvidence_detailsDue_by
    Boolean iEvidence_detailsHas_evidence
    Boolean iEvidence_detailsPast_due
    Integer iEvidence_detailsSubmission_count
    Boolean iIs_charge_refundable
    Boolean iLivemode
    String sReason
    String sStatus
    Integer i
    Integer iCount_i
    String sTemp1
    Integer iTemp1

    Get Create (RefClass(cComChilkatRest)) To hoRest
    If (Not(IsComObjectCreated(hoRest))) Begin
        Send CreateComObject of hoRest
    End

    //  URL: https://api.stripe.com/v1/disputes/dp_1BnETJGswQrCoh0Xefx4zP2a/close
    Move True To iBTls
    Move 443 To iPort
    Move True To iBAutoReconnect
    Get ComConnect Of hoRest "api.stripe.com" iPort iBTls iBAutoReconnect To iSuccess
    If (iSuccess <> True) Begin
        Get ComConnectFailReason Of hoRest To iTemp1
        Showln "ConnectFailReason: " iTemp1
        Get ComLastErrorText Of hoRest To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Get ComSetAuthBasic Of hoRest "STRIPE_SECRET_KEY" "" To iSuccess

    Get Create (RefClass(cComChilkatStringBuilder)) To hoSbResponseBody
    If (Not(IsComObjectCreated(hoSbResponseBody))) Begin
        Send CreateComObject of hoSbResponseBody
    End
    Get pvComObject of hoSbResponseBody to vSbResponseBody
    Get ComFullRequestNoBodySb Of hoRest "POST" "/v1/disputes/dp_1BnETJGswQrCoh0Xefx4zP2a/close" vSbResponseBody To iSuccess
    If (iSuccess <> True) Begin
        Get ComLastErrorText Of hoRest To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Get Create (RefClass(cComChilkatJsonObject)) To hoJsonResponse
    If (Not(IsComObjectCreated(hoJsonResponse))) Begin
        Send CreateComObject of hoJsonResponse
    End
    Get pvComObject of hoSbResponseBody to vSbResponseBody
    Get ComLoadSb Of hoJsonResponse vSbResponseBody To iSuccess

    Get ComStringOf Of hoJsonResponse "id" To sId
    Get ComStringOf Of hoJsonResponse "object" To sObject
    Get ComIntOf Of hoJsonResponse "amount" To iAmount
    Get ComStringOf Of hoJsonResponse "balance_transaction" To sBalance_transaction
    Get ComStringOf Of hoJsonResponse "charge" To sCharge
    Get ComIntOf Of hoJsonResponse "created" To iCreated
    Get ComStringOf Of hoJsonResponse "currency" To sCurrency
    Get ComIsNullOf Of hoJsonResponse "evidence.access_activity_log" To iEvidenceAccess_activity_log
    Get ComIsNullOf Of hoJsonResponse "evidence.billing_address" To iEvidenceBilling_address
    Get ComIsNullOf Of hoJsonResponse "evidence.cancellation_policy" To iEvidenceCancellation_policy
    Get ComIsNullOf Of hoJsonResponse "evidence.cancellation_policy_disclosure" To iEvidenceCancellation_policy_disclosure
    Get ComIsNullOf Of hoJsonResponse "evidence.cancellation_rebuttal" To iEvidenceCancellation_rebuttal
    Get ComIsNullOf Of hoJsonResponse "evidence.customer_communication" To iEvidenceCustomer_communication
    Get ComIsNullOf Of hoJsonResponse "evidence.customer_email_address" To iEvidenceCustomer_email_address
    Get ComIsNullOf Of hoJsonResponse "evidence.customer_name" To iEvidenceCustomer_name
    Get ComIsNullOf Of hoJsonResponse "evidence.customer_purchase_ip" To iEvidenceCustomer_purchase_ip
    Get ComIsNullOf Of hoJsonResponse "evidence.customer_signature" To iEvidenceCustomer_signature
    Get ComIsNullOf Of hoJsonResponse "evidence.duplicate_charge_documentation" To iEvidenceDuplicate_charge_documentation
    Get ComIsNullOf Of hoJsonResponse "evidence.duplicate_charge_explanation" To iEvidenceDuplicate_charge_explanation
    Get ComIsNullOf Of hoJsonResponse "evidence.duplicate_charge_id" To iEvidenceDuplicate_charge_id
    Get ComIsNullOf Of hoJsonResponse "evidence.product_description" To iEvidenceProduct_description
    Get ComIsNullOf Of hoJsonResponse "evidence.receipt" To iEvidenceReceipt
    Get ComIsNullOf Of hoJsonResponse "evidence.refund_policy" To iEvidenceRefund_policy
    Get ComIsNullOf Of hoJsonResponse "evidence.refund_policy_disclosure" To iEvidenceRefund_policy_disclosure
    Get ComIsNullOf Of hoJsonResponse "evidence.refund_refusal_explanation" To iEvidenceRefund_refusal_explanation
    Get ComIsNullOf Of hoJsonResponse "evidence.service_date" To iEvidenceService_date
    Get ComIsNullOf Of hoJsonResponse "evidence.service_documentation" To iEvidenceService_documentation
    Get ComIsNullOf Of hoJsonResponse "evidence.shipping_address" To iEvidenceShipping_address
    Get ComIsNullOf Of hoJsonResponse "evidence.shipping_carrier" To iEvidenceShipping_carrier
    Get ComIsNullOf Of hoJsonResponse "evidence.shipping_date" To iEvidenceShipping_date
    Get ComIsNullOf Of hoJsonResponse "evidence.shipping_documentation" To iEvidenceShipping_documentation
    Get ComIsNullOf Of hoJsonResponse "evidence.shipping_tracking_number" To iEvidenceShipping_tracking_number
    Get ComIsNullOf Of hoJsonResponse "evidence.uncategorized_file" To iEvidenceUncategorized_file
    Get ComIsNullOf Of hoJsonResponse "evidence.uncategorized_text" To iEvidenceUncategorized_text
    Get ComIntOf Of hoJsonResponse "evidence_details.due_by" To iEvidence_detailsDue_by
    Get ComBoolOf Of hoJsonResponse "evidence_details.has_evidence" To iEvidence_detailsHas_evidence
    Get ComBoolOf Of hoJsonResponse "evidence_details.past_due" To iEvidence_detailsPast_due
    Get ComIntOf Of hoJsonResponse "evidence_details.submission_count" To iEvidence_detailsSubmission_count
    Get ComBoolOf Of hoJsonResponse "is_charge_refundable" To iIs_charge_refundable
    Get ComBoolOf Of hoJsonResponse "livemode" To iLivemode
    Get ComStringOf Of hoJsonResponse "reason" To sReason
    Get ComStringOf Of hoJsonResponse "status" To sStatus
    Move 0 To i
    Get ComSizeOfArray Of hoJsonResponse "balance_transactions" To iCount_i
    While (i < iCount_i)
        Set ComI Of hoJsonResponse To i
        Move i + 1 To i
    Loop



End_Procedure

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": {
    "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": "lost"
}