Lumen Labs
/
API Reference
v3.2GuidesChangelog
Get started  /  Introduction

Lumen Payments API

Take payments, refund in one call and stream payouts — a predictable REST API that speaks JSON everywhere.

BASE URL
GETapi.lumenlabs.dev/v3

Authentication

Bearer keys, scoped per project and mode.

Read guide →

Idempotency

Retry any write safely with one header.

Read guide →

Webhooks

Signed events, delivered in under 200 ms.

Read guide →
POST/v3/charges

Create a charge

Charges a payment method. Returns the charge object, or an error if the card is declined.

amount integerREQUIRED

Smallest currency unit — 2400 is €24.00.

currency stringREQUIRED

Three-letter ISO code, lowercase.

customer string

Attach the charge to a saved customer.

cURL
Node
Python
CopyCopied
1import Lumen from '@lumen/payments';23const lumen = new Lumen('lk_test_8Rv2…');4const charge = await lumen.charges.create({5 amount: 2400,6 currency: 'eur',7 customer: 'cust_K1d0F2',8});9// → charge.status === 'succeeded'
▸Response200 OK84 ms
Test mode · no real money moves
Copied to clipboard

The charge object

Every endpoint returns the same shape. Expand any field to see its children.

GET/v3/chargesList
POST/v3/chargesCreate
GET/v3/charges/:idRetrieve
POST/v3/charges/:id/refundRefund
Response200 OK84 ms · application/json
{ "id": "chg_3Px9Lm2", "kind": "charge", "amount": 2400, "currency": "eur", "status": "succeeded",▾"payment_method": { "type": "card", "funding": "debit", "last4": "1881" }, "test_mode": true}
Lumen Labs

Your first charge
in five minutes.

$npm install @lumen/payments
Get an API key
docs.lumenlabs.dev