Refund Resource

A Refund resource allows you to return full or partial amount of a payment to your customer's original payment method.

A Refund Resource

{
  "data": {
    "id": "ref_vPSqdAPD2pmtKj6Ac5SRfXjs",
    "type": "refund",
    "attributes": {
      "amount": 10000,
      "currency": "PHP",
      "livemode": true,
      "notes": "Double payment created",
      "payment_id": "pay_qOShdAuD3p8tKa6Ac4SRfbjs",
      "payout_id": null,
      "reason": "requested_by_customer",
      "status": "succeeded",
      "created_at": 1612746914,
      "updated_at": 1612746914
    }
  }
}
ParameterTypeDescription
amountint32Amount of the refund. A positive integer with minimum amount of 100. 100 is the smallest unit in cents. If you want to refund an amount of 1.00, the value that you should pass is 100. If you want to refund an amount of 1500.50, the value that you should pass is 150050. The refund amount can be less than or equal to the amount of the corresponding Payment resource.
currencystringThree-letter ISO currency code, in uppercase. PHP is the only supported currency as of the moment.
livemodebooleanThe value is true if the resource exists in live mode or the value is false if the resource exists in test mode.
notesstringNotes of the refund. You can use this value to save remarks about the refund. The maximum characters is 255.
payment_idstringThe ID of a Payment resource to be refunded.
payout_idstringThe Payout ID of the Refund resource. The value is null if the Refund is not yet a part of a Payout. If the Payout exists for the Refund, this means the amount will be deducted from your total Payout amount.
reasonstringReason for the refund. Possible values are duplicate, fraudulent, requested_by_customer and others.
statusstringStatus of the refund. Possible values are pending, processing, succeeded and failed.

See statuses for more details.
metadatadictionaryA set of key-value pairs that you can attach to the resource. This can be useful for storing additional information about the object in a structured format. Only string values are accepted.
created_attimestampThe date when the refund has been created.
updated_attimestampThe date when the refund has been updated.

Statuses

StatusDescriptionRecommended Action
pendingThe refund has just been created and will be processed soon.Check the status of the refund after a few minutes. If the refund is still pending, contact PayMongo support.

It is rare for a refund to stay in this state.
processingPayMongo is still processing the refund requestCheck the status of the refund after a few minutes. If the refund is still processing, contact PayMongo support.

It is rare for a refund to stay in this state.
succeededThe refund request has been successfully sent to our payment partner.Nothing. The refund should reflect in your PayMongo dashboard immediately. The customer should have the refund reflected in their account within the day for eWallets, and within 30 days.
failedThe refund was not able to be processed successfullyTry to refund the transaction again. If the error persists, contact PayMongo support.