API Reference
Payments
A payment is a record of money received. Payments are created by webhooks — not by direct API calls — when a customer successfully pays a checkout session, invoice, installment, or payment link.
Payments are read-only from the API. Refunds are the only mutation: issue a refund to claw back funds to the customer and reverse the platform fee. Every payment carries the fee and FX breakdown LuniPay received from Stripe, so you can reconcile dashboards against your Stripe account.
The payment object
idstringUnique identifier, prefixed with `pay_`.
objectstringAlways `"payment"`.
livemodebooleanTrue if processed through a live-mode API key.
statusstringTerminal state. PENDING only appears briefly during processing.
Values: PENDING SUCCEEDED FAILED REFUNDED PARTIALLY_REFUNDED
amount_centsintegerTotal amount charged, in the smallest currency unit.
currencystringLowercase 3-letter ISO 4217 code.
customer_idstringnullableAttached customer, if any.
invoice_idstringnullableInvoice this payment settles, if any.
checkout_session_idstringnullableCheckout session that produced this payment, if any.
payment_link_idstringnullablePayment link that produced this payment, if any.
payment_method_brandstringnullableCard brand (`visa`, `mastercard`, etc.) or method name.
payment_method_last4stringnullableLast 4 digits of the card.
billing_emailstringnullableEmail collected at the time of payment.
billing_namestringnullableName on the card.
platform_fee_centsintegerLuniPay platform fee, in the payment currency.
settlement_amount_centsintegernullableAmount that actually landed on your connected account, after Stripe FX and fees.
settlement_currencystringnullableCurrency of the settlement amount (usually your account default).
exchange_ratestringnullableStripe-reported FX rate used during settlement.
funds_available_onstringnullableISO date when the funds become available for payout.
refunded_amount_centsintegerRunning total of refunded amount. Matches `amount_cents` for a fully refunded payment.
metadataobjectnullableMetadata from the originating resource (checkout session, invoice, or payment link).
createdintegerCreation timestamp (unix).
{
"id": "pay_01JRZK9XA0PMK4JHGF7Z3V8TRC",
"object": "payment",
"livemode": false,
"status": "SUCCEEDED",
"amount_cents": 5000,
"currency": "usd",
"customer_id": "cus_01JRZK2Q4T9ZS0VCNA3HX7W9EY",
"invoice_id": null,
"checkout_session_id": "cs_01JRZK8WV3FYMPEQRXJ9HA5NTB",
"payment_link_id": null,
"payment_method_brand": "visa",
"payment_method_last4": "4242",
"billing_email": "ada@example.com",
"billing_name": "Ada Lovelace",
"platform_fee_cents": 560,
"settlement_amount_cents": 4440,
"settlement_currency": "usd",
"exchange_rate": null,
"funds_available_on": "2026-04-21",
"refunded_amount_cents": 0,
"metadata": null,
"created": 1713100800
}