Create a payment intent
Creates a new payment intent for a customer to purchase a plan. Requires an idempotency key to prevent duplicate charges. Returns client secret and publishable key needed for frontend integration.
Authorizations
Provider secret API key (sk_live_… / sk_test_…) supplied as a Bearer token.
Headers
Unique idempotency key to prevent duplicate payments (required)
Body
Payment intent creation data
1 - 20100 < x < 100000005001 - 201 - 20product, credit_topup, usage_billing Response
Payment intent created successfully
Amount in the charge currency (minor units)
4999
Client secret used to confirm the payment on the client
"pi_1a2b3c4d5e6f7g8h_secret_AbCdEf123456"
ISO 4217 currency code
"usd"
Payment processor payment intent ID
"pi_1a2b3c4d5e6f7g8h"
Stripe publishable key for the environment
"pk_test_..."
Payment intent status
"requires_payment_method"
Connected Stripe account ID (only present on create)
"acct_1A2B3C4D"
Creation timestamp
"2025-10-18T10:30:00.000Z"
Customer reference
"cus_3c4d5e6f7g8h"
Exchange rate applied to the amount
1
Expiry timestamp of the payment intent
"2025-10-19T10:30:00.000Z"
Original amount in the payment currency (minor units)
4999
Plan reference
"pln_2b3c4d5e6f7g"
Ledger transaction ID
"507f1f77bcf86cd799439011"