Skip to main content
POST
Create a payment intent

Authorizations

Authorization
string
header
required

Provider secret API key (sk_live_… / sk_test_…) supplied as a Bearer token.

Headers

idempotency-key
string
required

Unique idempotency key to prevent duplicate payments (required)

Body

application/json

Payment intent creation data

autoRecharge
object
required
customerRef
string
required
Required string length: 1 - 20
amount
integer
Required range: 100 < x < 10000000
currency
string
description
string
Maximum string length: 500
planRef
string
Required string length: 1 - 20
pricingTier
string
productRef
string
Required string length: 1 - 20
purpose
enum<string>
default:product
Available options:
product,
credit_topup,
usage_billing

Response

Payment intent created successfully

amount
number
required

Amount in the charge currency (minor units)

Example:

4999

clientSecret
string
required

Client secret used to confirm the payment on the client

Example:

"pi_1a2b3c4d5e6f7g8h_secret_AbCdEf123456"

currency
string
required

ISO 4217 currency code

Example:

"usd"

processorPaymentId
string
required

Payment processor payment intent ID

Example:

"pi_1a2b3c4d5e6f7g8h"

publishableKey
string
required

Stripe publishable key for the environment

Example:

"pk_test_..."

status
string
required

Payment intent status

Example:

"requires_payment_method"

accountId
string

Connected Stripe account ID (only present on create)

Example:

"acct_1A2B3C4D"

createdAt
string

Creation timestamp

Example:

"2025-10-18T10:30:00.000Z"

customerRef
string

Customer reference

Example:

"cus_3c4d5e6f7g8h"

exchangeRate
number

Exchange rate applied to the amount

Example:

1

expiresAt
string

Expiry timestamp of the payment intent

Example:

"2025-10-19T10:30:00.000Z"

originalAmount
number

Original amount in the payment currency (minor units)

Example:

4999

planRef
string

Plan reference

Example:

"pln_2b3c4d5e6f7g"

transactionId
string

Ledger transaction ID

Example:

"507f1f77bcf86cd799439011"