Skip to main content
POST
Create refund payment

Authorizations

Authorization
string
header
required

Partner-level JWT token (unscoped). Token payload includes partner_id. Business access is validated via partner ownership. Format: Bearer <your-jwt-token>

Use this for: Multi-business operations where the business_id is specified in the URL and partner has access to multiple businesses.

Path Parameters

business_id
string
required
Pattern: ^[0-9a-f-]+$
refund_id
string
required
Pattern: ^[0-9a-f-]+$

Body

Serializer for creating a refund payment (reusable for other endpoints). All amounts in cents.

amount_cents
integer
required

Amount to disburse for this refund in cents (e.g., 20000 for €200.00)

Required range: x >= 1
method
enum<string>
required

Payment method for the refund payment

  • CASH - Cash
  • CHECK - Check
  • CREDIT_CARD - Credit Card
  • DEBIT_CARD - Debit Card
  • ACH - ACH
  • BANK_TRANSFER - Bank Transfer
  • PAYPAL - PayPal
  • STRIPE - Stripe
  • OTHER - Other
Available options:
CASH,
CHECK,
CREDIT_CARD,
DEBIT_CARD,
ACH,
BANK_TRANSFER,
PAYPAL,
STRIPE,
OTHER
external_id
string
required

Required idempotency key per refund (unique within a refund)

Required string length: 1 - 255
completed_at
string<date-time>

When the refund payment was completed

processor
string

Payment processor

Maximum string length: 100
memo
string

Optional notes for the payment

transaction_tags
string[]

Optional list of string tags for reconciliation

Required string length: 1 - 100
refund_processing_fee_cents
integer
default:0

Processing fee for this refund payment in cents (e.g., 30 for €0.30)

Required range: x >= 0

Response

Serializer for refund payments. All amounts in cents.

id
string<uuid>
required
read-only

Unique refund payment identifier

refund_id
string<uuid>
required
read-only

ID of the refund this payment belongs to

refunded_amount
integer
required
read-only

Refunded amount in cents

refund_processing_fee
integer
required
read-only

Processing fee in cents

reconciled_bank_transactions
object[]
required
read-only

Bank transactions this refund payment is reconciled to

created_at
string<date-time>
required
read-only

Timestamp when refund payment record was created

updated_at
string<date-time>
required
read-only

Timestamp when refund payment record was last updated

external_id
string

Your unique identifier for idempotency (unique within refund)

Maximum string length: 255
completed_at
string<date-time> | null

Date and time when refund payment was completed

method
enum<string>

Payment method used for refund (CASH, CHECK, CREDIT_CARD, BANK_TRANSFER, etc.)

  • BANK_TRANSFER - Bank Transfer
  • CREDIT_CARD - Credit Card
  • DEBIT_CARD - Debit Card
  • ACH - ACH/Direct Debit
  • CHECK - Check/Cheque
  • CASH - Cash
  • PAYPAL - PayPal
  • STRIPE - Stripe
  • OTHER - Other
Available options:
BANK_TRANSFER,
CREDIT_CARD,
DEBIT_CARD,
ACH,
CHECK,
CASH,
PAYPAL,
STRIPE,
OTHER
processor
string

Payment processor used (e.g., Stripe, PayPal, manual)

Maximum string length: 100
transaction_tags
any

List of tags for categorization and reconciliation tracking

memo
string

Optional description or notes for this refund payment

metadata
any

Custom key-value pairs for payment context