Refunds: full or partial refunds of a PaymentIntent or charge. See https://docs.stripe.com/api/refunds.

Functions

cancel-refund

fn (refund: Str): Map
fn (refund: Str, options: ::stripe::api/RequestOptions | Map): Map

POST /v1/refunds/{refund}/cancel - Cancel a refund. Only refunds with status "requires_action" can be canceled.

create-refund

fn (request: CreateRefundRequest): Map
fn (request: CreateRefundRequest, options: ::stripe::api/RequestOptions | Map): Map

POST /v1/refunds - Refund a PaymentIntent (preferred) or charge, in full (omit amount) or partially. reason can be "duplicate", "fraudulent", or "requested_by_customer". Pass an idempotency key so a retried refund is never issued twice.

Example

::refunds ::stripe::refunds

refund ::refunds/create-refund(::refunds/CreateRefundRequest({
  payment_intent: "pi_...",
  amount: 500
}), ::stripe::api/RequestOptions({idempotency_key: "order-42-refund-1"}))
refund.status  // => "succeeded" (or "pending" for some methods)

get-refund

fn (refund: Str): Map
fn (refund: Str, params: Map): Map
fn (refund: Str, params: Map, opts: Map): Map

GET /v1/refunds/{refund} - Retrieve a refund by ID.

list-refunds

fn (): Map
fn (request: ListRefundsRequest): Map
fn (request: ListRefundsRequest, opts: Map): Map

GET /v1/refunds - List refunds, most recent first. Filter by payment_intent or charge.

update-refund

fn (refund: Str, metadata: Map): Map
fn (refund: Str, metadata: Map, options: ::stripe::api/RequestOptions | Map): Map

POST /v1/refunds/{refund} - Update a refund's metadata (the only updatable field).

Types

CreateRefundRequest

CreateRefundRequest type {
    payment_intent: Str?,
    charge: Str?,
    amount: Int?,
    reason: Str?,
    metadata: Map?,
    instructions_email: Str?,
    refund_application_fee: Bool?,
    reverse_transfer: Bool?,
    expand: Vec<Str>?
}

ListRefundsRequest

ListRefundsRequest type {
    payment_intent: Str?,
    charge: Str?,
    created: Any?,
    limit: Int?,
    starting_after: Str?,
    ending_before: Str?,
    expand: Vec<Str>?
}