Get Payment Intent
Payment Intents — Get Payment Intent
4 min readUpdated Mar 27, 2026
GET /api/v1/payments/intent
Retrieve a payment intent by its session token. Returns the full intent including amount, currency, available APMs, theme config, and feature flags. Used internally by the HPP to initialize the payment page.
Guide: Payment Intents Guide — conceptual walkthrough, flow diagrams, and integration patterns.
#Headers
| Header | Value |
|---|---|
Authorization | Bearer {token} — see Authentication |
#Request
No request body. The transaction ID is passed as a path parameter.
#Response
| Field | Type | Description |
|---|---|---|
type | String (PAYMENT, PAYOUT) | Intent type: PAYMENT for collecting funds or PAYOUT for disbursing funds. |
currency | String | Three-letter ISO 4217 currency code (e.g. USD, EUR, GBP). |
flags | Map<String, Boolean> | |
lang | String | Two-letter language code (e.g. en, fr, de) for localizing payment pages and customer-facing messages. |
amount | String | Transaction amount as a decimal string in major currency units (e.g. "10.00" = ten dollars). Values with more than two decimal places are automatically rounded. |
themeConfig | Object — See MerchantThemeConfigProtoDto | |
email | String | Customer's email address. |
requestId | String | Unique identifier for the request. Used for idempotency — if you retry with the same requestId, the system will return the original response instead of processing a duplicate. |
mid | String | Merchant account ID. Identifies which merchant account the transaction is associated with. |
availableApms | Array<HppApmPayloadMetadataDto> |
| Field | Type | Description |
|---|---|---|
showLogo | Boolean | |
customNonBrandedUrl | String |
| Field | Type | Description |
|---|---|---|
name | String | Customer name associated with the order. |
paymentMethod | String (PAYPAL, IDEAL, GOOGLE_PAY, APPLE_PAY, EXTERNAL_HPP_GOOGLE_PAY, ...) | APM method identifier (e.g. SMART_BANK_TRANSFER, PIX_QR). See apmPayload References. |
paymentType | String (BANK_TRANSFER, CARD_PAYMENT, E_WALLET, MOBILE_WALLET, CASH, ...) | Payment type identifier: CARD for card transactions, APM for alternative payment methods. |
fieldsMetadata | Object — See ApmPayloadFieldsMetadataDto |
{
"type": "PAYMENT",
"currency": "USD",
"flags": {
"key1": "value1"
},
"lang": "en",
"amount": "100.00",
"themeConfig": {
"showLogo": true,
"customNonBrandedUrl": "https://yourserver.com/callback"
},
"email": "test@example.com",
"requestId": "req_abc123",
"mid": "merchant_123",
"availableApms": [
{
"name": "John Doe",
"paymentMethod": "PAYPAL",
"paymentType": "BANK_TRANSFER",
"fieldsMetadata": {
"intentFields": [
{}
],
"customFields": [
{}
]
}
}
]
}#Error Responses
| HTTP Status | Description |
|---|---|
400 | Bad Request — missing or invalid parameters. Check the response body for field-level details. |
401 | Unauthorized — missing, expired, or invalid bearer token. Re-authenticate via POST /api/v1/auth. |
404 | Not Found — the requested resource does not exist. |
500 | Internal Server Error — an unexpected error occurred. Retry with exponential backoff. |
curl -X GET https://sandbox.api.exirom.com/api/v1/payments/intent \
-H "Authorization: Bearer YOUR_TOKEN"#Try It
SandboxTry it
https://sandbox.api.exirom.com/api
Was this helpful?