Payment Processing
Payment Processing Stages

Refund

5min

The "Refund" process allows for the return of funds to customers after a payment has been made. It's a financial transaction that reverses a previous payment, crediting the money back to the customer's original payment source.

There are two main scenarios to consider:

  • Cancellation of an open order: When an order is still in the Authorized state (before capture), canceling the order results in a reversal of the authorization. This is not a refund, but rather a cancellation of the hold on the customer's funds.
  • Refund after capture: If a refund is required after a successful capture (e.g., product return), UpStart Commerce facilitates the process by initiating a refund request to the Payment Service Provider (PSP). The PSP then handles the actual refund, crediting the specified amount back to the customer's original payment method while the payment state is updated to "refunded".

Efficient refund management helps maintain customer satisfaction by promptly addressing returns and cancellations. Consumers receive their refunds on time, fostering trust and potentially encouraging repeat business.

Understanding Refunds

  • Reversal vs. Refund: A reversal cancels a pre-authorized payment before capturing funds. A refund returns previously captured funds back to the customer's original payment method.
  • Split Payment Refunds: UpStart Commerce considers the original payment split when processing refunds. The refunded amount is returned proportionally to the respective payment methods used in the initial purchase.

Full Refunds

  • Scenario: A customer requests a full refund for their entire order after a successful capture.
  • Action: The entire captured amount is refunded to the customer's original payment methods, following the original split.

Partial Refunds

  • Through the Payment Service Providers, you can issue partial refunds for various scenarios:
    • Returning part of a multi-item order.
    • Canceling a specific service (e.g., shipping) within an order.
    • Refunding a portion of the total order amount due to a discount or promotion.
  • Examples:
    • Partial Refund of Product Cost:
      • A customer returns one item costing $25 from a $75 two-item order (paid through Synchrony).
      • A partial refund of $25 is issued back to the customer's Synchrony account.
      • No changes are made to the credit card payment used for shipping and taxes (assumed to be constant).
    • Partial Refund Due to Cancellation of Shipping:
      • A customer cancels shipping and opts for in-store pickup for a $100 order (product cost: $75, shipping & taxes: $25, paid through separate methods).
      • The $25 shipping cost is refunded back to the customer's credit card.
      • The Synchrony payment for the product cost remains unchanged.
    • Multiple Partial Refunds:
      • A customer requests a partial refund for two items ($30 each) and a portion of shipping and taxes from a $90 order (paid through Synchrony and credit card).
      • The refund would be:
        • $60 refunded through Synchrony (for the two items).
        • $20 refunded through credit card (portion of shipping and taxes).

Failed Refunds and Handling

Through the PSPs, you can address potential refund failures:

  • Retry Option: In case of a suspected system failure, you can retry the refund process.
  • Unsuccessful Refund Notification: The system acknowledges and notifies you if the entire refund operation fails.
  • Payment Gateway Downtime:
    • If the payment gateway is unavailable during a refund attempt, the failed refund is transitioned to a "Refund Queued" state.
    • The system automatically retries the refund when the payment gateway comes back online.
  • Partial Refund Failure with One Successful Refund:
    • The user is notified that one payment method received a refund, while the other requires further action.
    • They are prompted to contact customer support to resolve the issue.
  • Exhausted Refund Attempts:
    • If even after manual intervention, the refund fails, the customer is updated about the situation.
    • As an alternative, you can offer an alternate refund method (e.g., bank transfer).

Note: These attempts are made through the configurations of Queuing Schedular.