View Source ExOAPI.Stripe.SDK.Disputes (exoapi_stripe v0.1.4)

Link to this section Summary

Functions

description: <p>Returns a list of your disputes.</p>

description: <p>Retrieves the dispute with the given ID.</p>

description: <p>When you get a dispute, contacting your customer is always the best first step. If that doesn’t work, you can submit evidence to help us resolve the dispute in your favor. You can do this in your <a href="https://dashboard.stripe.com/disputes">dashboard</a>, but if you prefer, you can use the API to submit evidence programmatically.</p>

description: <p>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.</p>

Link to this section Types

Link to this type

get_disputes_dispute_opts()

View Source
@type get_disputes_dispute_opts() :: {:expand, String.t()}
@type get_disputes_opts() ::
  {:starting_after, String.t()}
  | {:payment_intent, String.t()}
  | {:limit, String.t()}
  | {:expand, String.t()}
  | {:ending_before, String.t()}
  | {:created, String.t()}
  | {:charge, String.t()}

Link to this section Functions

Link to this function

get_disputes(client, opts \\ [])

View Source
@spec get_disputes(client :: ExOAPI.Client.t(), [get_disputes_opts()]) ::
  {:ok,
   ExOAPI.Stripe.Schemas.Error.t()
   | %{
       url: String.t(),
       object: String.t() | :list,
       has_more: boolean(),
       data: [ExOAPI.Stripe.Schemas.Dispute.t()]
     }
   | map()}
  | {:error, any()}

description: <p>Returns a list of your disputes.</p>

Link to this function

get_disputes_dispute(client, dispute, opts \\ [])

View Source
@spec get_disputes_dispute(
  client :: ExOAPI.Client.t(),
  dispute :: String.t(),
  [get_disputes_dispute_opts()]
) ::
  {:ok,
   ExOAPI.Stripe.Schemas.Error.t() | ExOAPI.Stripe.Schemas.Dispute.t() | map()}
  | {:error, any()}

description: <p>Retrieves the dispute with the given ID.</p>

Link to this function

post_disputes_dispute(client, body, dispute)

View Source
@spec post_disputes_dispute(
  client :: ExOAPI.Client.t(),
  body ::
    %{
      submit: boolean(),
      metadata: String.t() | map(),
      expand: [String.t()],
      evidence: %{
        uncategorized_text: String.t(),
        uncategorized_file: String.t(),
        shipping_tracking_number: String.t(),
        shipping_documentation: String.t(),
        shipping_date: String.t(),
        shipping_carrier: String.t(),
        shipping_address: String.t(),
        service_documentation: String.t(),
        service_date: String.t(),
        refund_refusal_explanation: String.t(),
        refund_policy_disclosure: String.t(),
        refund_policy: String.t(),
        receipt: String.t(),
        product_description: String.t(),
        duplicate_charge_id: String.t(),
        duplicate_charge_explanation: String.t(),
        duplicate_charge_documentation: String.t(),
        customer_signature: String.t(),
        customer_purchase_ip: String.t(),
        customer_name: String.t(),
        customer_email_address: String.t(),
        customer_communication: String.t(),
        cancellation_rebuttal: String.t(),
        cancellation_policy_disclosure: String.t(),
        cancellation_policy: String.t(),
        billing_address: String.t(),
        access_activity_log: String.t()
      }
    }
    | map(),
  dispute :: String.t()
) ::
  {:ok,
   ExOAPI.Stripe.Schemas.Error.t() | ExOAPI.Stripe.Schemas.Dispute.t() | map()}
  | {:error, any()}

description: <p>When you get a dispute, contacting your customer is always the best first step. If that doesn’t work, you can submit evidence to help us resolve the dispute in your favor. You can do this in your <a href="https://dashboard.stripe.com/disputes">dashboard</a>, but if you prefer, you can use the API to submit evidence programmatically.</p>

Depending on your dispute type, different evidence fields will give you a better chance of winning your dispute. To figure out which evidence fields to provide, see our guide to dispute types.

Link to this function

post_disputes_dispute_close(client, body, dispute)

View Source
@spec post_disputes_dispute_close(
  client :: ExOAPI.Client.t(),
  body :: %{expand: [String.t()]} | map(),
  dispute :: String.t()
) ::
  {:ok,
   ExOAPI.Stripe.Schemas.Error.t() | ExOAPI.Stripe.Schemas.Dispute.t() | map()}
  | {:error, any()}

description: <p>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.</p>

The status of the dispute will change from needs_response to lost. Closing a dispute is irreversible.