Payment Intents API
Create, retrieve, confirm, and cancel payment intents through the public payment API.
Payment intents expose a provider-neutral way to create and track a payment. The public API currently accepts an amount and a reference when creating an intent. Payment-method tokenization and manual capture are not part of this contract.
For a Node.js backend, use api.payments.intents.create(...) or api.payments.intents.createQrPh(...) from the APICenter SDK. The REST examples below are for other runtimes.
Create a payment intent
- Endpoint:
POST /api/v1/payments/intents - Required scope:
payments:intents:writeor a broader payment write scope - Required header:
Idempotency-Key
curl -X POST https://api.apicenter.itsandbox.site/api/v1/payments/intents \
-H "Authorization: Bearer $PAYMENT_API_KEY" \
-H "Idempotency-Key: intent-create-1002" \
-H "Content-Type: application/json" \
-d '{
"referenceId": "INTENT-2026-001",
"amount": {
"amountMinor": 125000,
"currency": "PHP"
}
}'A successful response includes a paymentIntentId, normalized status, amount, and aggregateVersion.
Retrieve, confirm, or cancel
- Retrieve:
GET /api/v1/payments/intents/{paymentIntentId}withpayments:intents:read. - Confirm:
POST /api/v1/payments/intents/{paymentIntentId}/confirmwithpayments:intents:write. - Cancel:
POST /api/v1/payments/intents/{paymentIntentId}/cancelwithpayments:intents:write.
Confirm and cancel require their own Idempotency-Key values. The current public contract does not accept a payment-method token or return a client secret for these operations.