Documentation
Test environmentLive environmentStatusContact us
  • Overview
    • Get started
    • Resource guides
      • For business users
      • For finance teams
      • For integration teams
    • Stripe onboarding
    • Live use cases
      • Usage overview
  • Start using the dashboard
    • Access
    • Payment services
    • Collaborators and access control
    • One-time payment links
      • Single link creation
      • Bulk link creation
      • Send payment links
      • Payment link page
      • Payment receipt email
    • Subscriptions
      • Set-up
      • View subscriptions
      • Manage subscriptions
    • Payments and refunds
      • Payment methods
      • Dashboard
      • Refunds
    • Payouts
    • Reports
    • Payment workflows with Plumber
      • Set-up
      • Testing
    • Payment forms
      • Set-up
      • Testing
      • Resources
  • Start an API integration
    • Get started
    • Endpoints
    • Integrating with your e-services
    • Errors
    • Idempotency
    • Pagination
    • Go-live checklist
  • API RESOURCES
    • Events
      • The event object
      • Types of events
    • Payments
      • Create a payment
      • Retrieve payments
      • Send email for payment
      • Cancel a payment
      • Refund a payment
      • Get all payments from payment service
  • WEBHOOKS
    • Introduction
    • Set-up
      • Events
      • Best practices
  • FAQ
    • Access
    • Costs
    • Timeline
    • API keys
    • API integration
    • Payments
    • Payment methods
    • Payouts and transaction fees
    • Refunds
    • Security and compliance
    • Downtime and maintenance
  • Policies
    • Privacy Policy
    • Terms of Use
Powered by GitBook
On this page

Was this helpful?

  1. API RESOURCES
  2. Payments

Refund a payment

Refunds a payment with a 'paid' status.

Refunds can be:

  1. Issued in full.

  2. Issued in multiple partial refunds, as long as the refunded amount is within the received payment amount. Only a single refund will be processed at a time.

Funds will be refunded through the payment method that the payment was made by.

Parameters


refund_amount_in_cents required

A positive integer representing the amount to refund. The amount must not exceed the remaining refundable amount.

Returns


Returns a payment object if the refund succeeds. Returns an error if the payment object has already been fully refunded or has prior pending/failed refunds.

POST /v1/payment-services/:payment_service_id/payments/:paymentId/refund


RESPONSE

{
    "id": "ZbzTvadjmP0wd7RRxhWtj",
    "due_date": "31-DEC-2023",
    "metadata": {},
    "payout_id": null,
    "created_at": "2023-08-03T17:36:52.634+08:00",
    "creator_id": "user_xxx",
    "payer_name": "Andy Lau",
    "updated_at": "2023-08-16T11:44:19.197+08:00"
    "description": "Payment for XXX",
    "payer_email": "abc@gmail.com",
    "payment_url": "http://pay.gov.sg/payments/ZbzTvadjmP0wd7RRxhWtj",
    "reference_id": "PAYMENT_001",
    "latest_status": "cancelled",
    "payer_address": "Blk 123, Yishun Avenue 2, #08-88, Singapore 123456",
    "refund_status": "fully_refunded",
    "payment_status": "paid",
    "amount_in_cents": 1100,
    "payer_identifier": "S1234567A",
    "paid_out_timestamp": null,
    "payment_service_id": "payment_service_xxx",
    "email_delivery_status": "sent",
    "payment_sent_timestamp": "2023-08-13T11:44:19.197+08:00",
    "stripe_payment_intent_id": "pi_xxx",
    "payment_cancelled_timestamp": "2023-08-14T11:44:19.197+08:00",
    "payment_succeeded_timestamp": "2023-08-15T11:44:19.197+08:00",
    "payment_fully_refunded_timestamp": "2023-08-16T11:44:19.197+08:00"
}
PreviousCancel a paymentNextGet all payments from payment service

Last updated 10 months ago

Was this helpful?