Skip to content

Initiate refund

Create a pending refund record for an original payment and return a refund link URL. Omit amount for a full refund.

POST
/api/payment-links/refunds/initiate

Authorizations

agentJwt

Agent registration JWT. Send as Authorization: Bearer <agent-jwt>.

Type
HTTP (bearer)

Request Body

application/json

Request body for initiating a refund.

Original payment record ID (payment_link_payments.id).

Refund amount in atomic units. Omit for a full refund.

Refund reason.

Responses

Refund record created.

application/json

Response returned when a refund is initiated.

Refund ID (plr_* format).

Refund link URL to be paid via mandate.

Format"uri"

Original payment record ID.

Refund amount in atomic units.

Currency.

Network.

Refund initiator address (link owner).

Refund recipient address (original payer).

Whether the refund is full or partial.

Valid values"full""partial"

Refund reason.

Refund status.

Valid values"pending""settled""failed""expired"

Refund link expiry (ISO 8601).

Format"date-time"

Created timestamp (ISO 8601).

Format"date-time"
{
  "refundId": "<string>",
  "refundUrl": "<string>",
  "paymentId": "<integer>",
  "amount": "<string>",
  "currency": "<string>",
  "network": "<string>",
  "refundFrom": "<string>",
  "refundTo": "<string>",
  "refundType": "<string>",
  "reason": "<string,null>",
  "status": "<string>",
  "expiresAt": "<string>",
  "createdAt": "<string>"
}

Released under the MIT License.