Skip to content
Status

Refunds

Refunds return money to the customer. Shuttle supports refunding payments, captures, and entire contracts.

Types of refund

  • Refund a payment: refund a completed PAYMENT transaction in part or full
  • Refund a capture: refund a previously captured authorisation in part or full
  • Refund a contract: refund across multiple transactions on a recurring contract in a single instruction

You cannot refund an AUTH: void it to release what is still reserved, or refund its captures.

Partial and multiple refunds

You can refund less than the full amount. Multi-refund (for example, refund 20.00 USD and later another 80.00 USD from a 100.00 USD payment) is supported but not available on all gateways.

Offline and manual refunds

Set manual: true to record a refund that was performed outside of Shuttle (e.g., refunded directly through the processor’s dashboard). This creates a record for audit purposes without instructing the gateway.

Contract refunds

When refunding a contract, you can:

  • Specify an amount to refund across the contract’s transactions
  • Use validate_only: true to preview what would be refunded without executing
  • For enterprise multi-entity contracts, specify which legal_entities to refund

Status

Status Description
SUCCESS Refund was processed successfully
PENDING Refund is still being processed
DECLINED Refund was declined by the gateway
INVALID_PAYMENT_METHOD Refund attempted on a disconnected gateway or unsupported payment method
UNRESOLVED No conclusive result from the gateway
UNATTRIBUTED Refund succeeded but had an internal recording issue

Was this page helpful?