create refund

This block is part of the stripe group and was last modified in core v15.0.0.

create refund v15.0.0

Sends money back to whatever the customer paid with. Leave amount empty to refund the whole payment. This is one of the two ways to credit someone : it moves real money out of the account. The other is create credit note, which settles against a future invoice instead.

In pins 9 + flow
  • flow
  • connection stripeconnection required
  • payment intent id value

    pi_… : the payment to refund. Either this or a charge id.

  • charge id value

    ch_… : used when no payment intent id is to hand.

  • amount number

    Partial refund, in the smallest currency unit. Empty refunds everything still refundable.

  • reason value

    duplicate, fraudulent or requested_by_customer. Marking one fraudulent also affects Stripe's dispute handling : for a free-text note use meta data. • Suggestions: duplicate fraudulent requested_by_customer

  • reverse transfer boolean

    Stripe Connect: also take the money back from the connected account it was transferred to.

  • refund application fee boolean

    Stripe Connect: also refund the platform fee.

  • meta data object
  • idempotency key value

    Optional. Reusing a key makes Stripe replay the first response instead of creating a second object : wire something stable per order, like the order GUID.

Out pins 14 + flow
  • flow
  • connection stripeconnection
  • refunded condition

    True only once the refund has actually settled. iDEAL and SEPA refunds sit in pending for days : telling a customer their money is back before this is true is telling them something untrue.

  • status value

    pending, succeeded, failed or canceled.

  • refund id value
  • amount number
  • currency value
  • charge id value
  • failure reason value

    Why a refund failed, e.g. the customer's account is closed.

  • meta data object
  • refund object
  • success condition
  • error value

    Stripe's own message, or a sentinel like MISSING_SESSION_ID for a problem in the wiring.

  • error code value

    Stripe's machine-readable code, e.g. card_declined, resource_missing.

  • decline code value

    Why the bank refused, e.g. insufficient_funds. Only set on a declined card.

refund
money back
reverse payment
credit payment

create refund takes the payment intent id and, optionally, an amount: leave the amount unwired for a full refund, or set it in the smallest currency unit for a partial one. Branch on the refunded pin rather than success, and pass an idempotency key when the refund can be triggered twice by an impatient user, because two clicks on a refund button should not mean two refunds.

Studio canvas example for the create refund block: refunding a payment, whole or in part.

Version history

Introduced in v15.0.0.

Service documentation

External API reference This block wraps a third-party service. Click here for the service's own documentation of the underlying endpoint.
Back to stripe Return to the main group to view all sub-groups Back to credits Return to the group to view all blocks within this group