refund Create
Requires orders
access scope, access scope or
access scope.
Creates a refund for an order, allowing you to process returns and issue payments back to customers.
Use the mutation to programmatically process refunds in scenarios where you need to
return money to customers, such as when handling returns, processing chargebacks, or correcting
order errors.
The mutation supports various refund scenarios:
- Refunding line items with optional restocking
- Refunding shipping costs
- Refunding duties and import taxes
- Refunding additional fees
- Processing refunds through different payment methods
- Issuing store credit refunds (when enabled)
You can create both full and partial refunds, and optionally allow over-refunding in specific cases. The mutation also supports idempotent requests to safely retry failed refund attempts.
After creating a refund, you can track its status and details through the order's
refunds
field. The refund is associated with the order and can be used for reporting and reconciliation purposes.
Learn more about managing returns and refunding duties.
Arguments
- Anchor to inputinput•Refund
Input!required The input fields that are used in the mutation for creating a refund.
- Anchor to orderorder•Order
The order associated with the created refund.
- Anchor to refundrefund•Refund
The created refund.
- Anchor to userErrorsuser•[User
Errors Error!]!non-null The list of errors that occurred from executing the mutation.