Skip to main content

RefundPayment issues a refund for a payment.

POST 

/api/v1/billing/payments/:id/refund

Initiates full or partial refund for a completed payment. For gateway payments, refund is processed through the same gateway. For manual payments, records the refund for tracking.

Authorization

Requires billing:admin permission.

Behavior

  • Partial refunds: Specify amount_cents less than original
  • Full refunds: Specify original amount or leave empty
  • Gateway refunds: Initiated through payment gateway API
  • Manual refunds: Recorded for tracking, actual refund done externally

Response

Returns updated Payment with refund details.

Errors

  • NOT_FOUND: Payment does not exist
  • FAILED_PRECONDITION: Payment not in refundable state
  • INVALID_ARGUMENT: Refund amount exceeds available

Request

Responses

A successful response.