Skip to main content
Cedros

Processing refunds

Refund card payments, review crypto refund requests, and confirm the outcome without sending duplicate payouts.

Start a card refund from Monetization → Transactions → Transactions. Use the Refunds tab to review refund history and process existing crypto refund requests. Check the original purchase and any earlier refunds before submitting another action.

If a refund's outcome is pending or unknown, continue checking that same request. A timeout or error does not prove that no money moved.

Check the purchase before refunding

Find the payment and confirm its reference, customer, amount, currency, and payment method. Check whether it has already been fully or partially refunded. See Reviewing payments and orders.

Confirm that the refund matches your agreed resolution with the customer. For a returned item, also follow your returns process; refunding a payment does not by itself confirm receipt of the item, restock it, or arrange a replacement.

The card refund control refunds the remaining payment amount. For example, if a $50 payment has already had $10 refunded, the remaining refund is $40. There is no amount field for choosing a smaller partial refund in this control. Ask your administrator to arrange and verify a supported partial-refund process if that is what the customer needs.

You need permission to manage payments. If the Refunds tab is missing, ask your administrator to check the Refunds commerce workflow in Pay hub → Overview → Commerce workflows. The refund sections shown also depend on the site's enabled payment methods. A hidden section does not mean its past refunds have disappeared.

Refund a card payment

  1. Open Monetization → Transactions → Transactions and find the original Card · Stripe payment.
  2. Confirm that it is Complete, check the amount, and review any Partially refunded note or existing refund warning.
  3. Choose Refund. Read the confirmation's transaction reference and refund amount carefully.
  4. Choose Confirm refund only when those details match the intended refund. Choose Cancel to leave without submitting it.
  5. Wait for the result, then check the payment row and the Stripe refunds section on the Refunds tab.

After a confirmed full refund, the payment should show Refunded. In Stripe refunds, match the Request ID, Stripe refund ID, amount, currency, and status. A succeeded status confirms the provider has completed the refund; the customer's bank may take additional time to display it.

A missing Refund button can mean the payment is pending, failed, already refunded, or uses another method. Do not create a replacement payment or edit the original record to make it refundable. Ask your administrator to check eligibility if the displayed payment looks correct but cannot be refunded.

Resolve a pending or uncertain card refund

If you see Refund confirmation pending or Refund outcome unknown, refresh and inspect the original transaction. Stripe may already have accepted the request.

Use Resume same refund when offered on that transaction. Review its confirmation before continuing. This resumes the existing refund; it is not a way to choose a new amount or send a second refund.

In Stripe refunds:

  • succeeded means the refund is complete at Stripe.
  • pending means provider confirmation is still outstanding.
  • requires_action needs attention in Stripe; ask your administrator to inspect the existing refund.
  • failed or canceled does not confirm a successful return of funds. Check the same refund in Stripe before deciding what to do next.

If Transactions shows Refund reversed — review in Stripe, have your administrator reconcile the reversal. Do not tell the customer the refund remains complete or send a separate payout to compensate for an uncertain status.

A request may not appear in the refund list immediately. Keep its original payment reference and check the transaction and provider record rather than submitting a new request because a row is missing.

Process a crypto refund request

Open Monetization → Transactions → Refunds and find x402 refund requests. This section processes requests already submitted through your site's supported refund flow; it has no button for creating a new request. If the request is missing, ask your administrator to locate it or help the customer submit it.

Crypto refunds return the original purchased token amount to the original payer's wallet. The site needs an available managed refund wallet and sufficient funds. A working crypto checkout alone does not confirm that refund processing is ready. See Accepting supported crypto payments.

  1. Find the pending request and match Original purchase to the payment being refunded.
  2. Check Recipient, Amount, token, and Reason. Wallet and purchase references are shortened in the table; inspect the full values before proceeding, or ask your administrator to verify them.
  3. Choose Process and read the confirmation, including the token amount.
  4. Choose Process refund to submit the payout, or Cancel to leave without submitting it.
  5. Check the refreshed request. Wait for completed before treating the refund as finished.

The main amount may be shown in USDC or as an SPL token with its token identifier. A separate checkout value is the purchase's recorded currency value; it is not an additional payout. Do not substitute a different token or destination wallet.

Retry or deny a crypto request

processing with Confirmation pending — do not resend means confirmation is outstanding. Refresh later and keep the same request reference. Do not send a second transfer manually.

If Retry same refund is offered, use it to resume that request and review the confirmation. The recipient and payout terms remain tied to the original purchase. An error after submitting still requires checking the same request's outcome.

Deny is available only for a pending request whose payout has not started. It acts immediately, without a separate confirmation dialog. Use it only when you intend to reject the request; it does not send a refund and is not a way to cancel an in-progress payout.

Once payout preparation has started, Deny is no longer available. A denied request may appear as failed in this list, so that label alone does not tell you whether a payout failed or the request was rejected. Ask your administrator to confirm the recorded outcome when needed.

If processing is blocked by wallet availability, insufficient funds, token policy, or an expired payout, give your administrator the request ID and visible error. Have them resolve the existing request before considering another payout.

Review refund history

The Refunds tab groups records by payment method. Sortable headings reorder the loaded rows. The current lists have no search or next-page controls, and summary counts cover the loaded records for enabled methods. Completed is a count of refunds, not a total amount of money returned.

If a warning says the refund list may be partial, or you cannot find an older refund, ask your administrator to retrieve the full history. Missing records in this view are not proof that a refund never happened.

If your site uses private account balances, Credits refunds is read-only history of amounts returned to the customer's site balance. These are separate from card refunds. Ask your administrator to process a balance refund through the site's supported tools, then verify the original transaction and resulting balance.

Confirm the customer's resolution

After completion, compare the refund record with the original payment and confirm the amount, currency or token, destination, and final status. Give the customer the relevant refund reference and distinguish a completed refund from one still awaiting confirmation.

Check any related order, return, inventory, subscription, or digital access separately. Refunding one payment does not establish that future subscription billing has stopped or that every fulfillment task is complete. Arrange and verify those changes as part of the agreed resolution.

Handle loading or setup errors

If Failed to load refund payment settings appears, reload or wait for a successful refresh before deciding which methods are available. If the page shows Refund processing unavailable, use Open Pay hub with your administrator to review the required payment setup.

For a list-loading error, use Retry where shown or reload the page. Existing rows and counts can remain visible after a failed refresh; do not act on them until the data loads successfully.

For help, provide the original payment reference, refund request ID, method, amount and currency or token, visible status, and exact error. Include the Stripe refund ID when available. See Getting help and reporting a problem.