Refund API

Initiate refunds for eligible successful payments and track provider confirmation lifecycle.

Endpoint

POST /api/payments/refund

POST /api/payments/refund
Authorization: Bearer <merchant_jwt>
Content-Type: application/json

Body

{
  "paymentId": "pay_123",
  "reason": "Customer requested cancellation"
}

Refund Statuses

Possible States

REFUND_PENDING
REFUND_PROVIDER_CONFIRMED
REFUNDED
REFUND_FAILED