Skip to content
Pay
Esc
↑↓navigate↵open⌘Jpreview
On this page

Refund payments

Return all or part of a payment to the person who paid it.

A refund returns money for an earlier collection. MoMo pays refunds from your disbursement account, not the collection account the payment went into, so the disbursement account must be connected and funded.

Refund a payment

Use the collection’s own reference in the path, and give the refund a new reference of its own:

curl -X POST https://api.razpay.razonetix.com/v1/payments/order-1001/refund \
  -H "Authorization: Bearer $RAZPAY_REFUND_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "external_reference": "order-1001-refund-1",
    "amount": 10.00,
    "description": "Partial refund, item out of stock"
  }'

Leave out amount to refund everything that’s left. The money goes back to the number that paid; you don’t send it.

The refund is a new transaction (type: refund) that comes back pending, with refund_of set to the original’s reference. You get refund.successful or refund.failed.

The rules

  • The key needs the refund permission.
  • Only successful collections can be refunded.
  • Refunds can never add up to more than the original. Pending refunds count against the total, so two refunds sent at once can’t both slip through. A failed refund returns nothing and frees its amount again.
  • Paid invoices can’t be refunded through RazPay; arrange those with MTN directly.

See what’s been refunded

GET /payments/{reference} on the original payment includes its refunds and a summary:

"refund_summary": {
  "refunded": 10,
  "pending": 0,
  "refundable": 20
}

From the dashboard

Admins can refund from Transactions: open a successful payment and choose Refund. The form shows what’s already been returned and what’s left.

Was this page helpful?