Create MIT Payment Session
Creates a new checkout session and initializes the initial standing instruction for subsequenct merchant-initiated transacations (MIT). Create MIT includes performing an intial payment. It can be the amount for the first payment or it can be a zero amount for approving subsequent MIT payments.
This endpoint is the entry point for starting an online transaction. It:
- Registers the selected payment instrument with Aera (currently only cards)
- Configures redirect and webhook behavior
- Returns a
pspReferenceandcheckoutUrlfor completing the initial payment
After completing the All subsequent operations — such as capture, cancel, refund, update, and status retrieval — reference the pspReference generated by this request. This applies to the initial payment. After performing the initial payment a recurringReference is available for the merchant in the in the response to a Status request. Subsequent MIT payments are initiated using Authorize MIT refering to this recurringReference.
Request Structure
{
"header": {
"merchantId": "Aera Merchant ID",
"idempotency-key": "UUID v7 provided by merchant to uniquely identify the request"
},
"body": {
"merchantInfo": {
"ui": {
"mode": "enum EMBED, optional only if you want to embed Aera´s hosted checkout form in your checkout",
"origin": "merchant URL"
},
"successRedirectUrl": "Redirect URL on successful payment",
"cancelRedirectUrl": "Redirect URL on payment cancel",
"errorRedirectUrl": "Redirect URL on payment error",
"webhookUrl": "Absolute or relative URL (validated against configured domain)"
},
"transactionData": {
"merchantReference": "Merchant provided reference to the payment (e.g. order number)",
"immediateCapture": "Optional, true if immediate capture requested, default false", "splitShipment": "Optional, true if shipment potentially can be split into multiple shipments",
"amountDetails": {
"amount": "Gross amount in minor units",
"currency": "ISO 4217 alphabetic code (e.g.NOK), must be the same as the merchant currency"
}
},
"paymentInstrumentsProfileData": {
"merchantShopperId": "Conditional: Merchant provided end-user ID (e.g. loyalty number, phone number)",
"pspShopperId": "Conditional: UUID assigned by PSP, either merchantShopperId or pspShopperId required",
"paymentInstrumentReference": "Optional: Reference to a pre selected payment instrument",
"allowStoredInstrumentsOnly": "Optional: Only present stored payment instruments as payment option - Default false"
},
"recurringInfo": {
"recurringModel": "recurringInfo: Properties of the subsequent recurring payments. recurringModel: enums UNSCHEDULED, SCHEDULED",
"recurringDescription": "Short decription of the recurring agreement",
"recurringFrequency": "Minimum days between two subsequent recurring payments, required if recurringModel is SCHEDULED",
"recurringExpiry": "Optional: Latest date for a recurring payment"
},
"paymentMethodInfo": {
"paymentMethodDetails": [
{
"CARD": {
"cardSchemeWhitelist": [
"Optional: List of allowed card schemes in case you want to limit the list"
]
}
}
]
}
}
}Response Structure
The response contains session metadata and checkout information.
{
"responseInfo": {
"responseCode": "000",
"responseText": "Approved"
},
"sessionInfo": {
"pspReference": "018f7a2e-8f5c-7a9b-b123-123456789abc",
"createdAt": "2026-03-01T10:15:30Z",
"expiredAt": "2026-03-01T10:30:30Z",
"checkoutUrl": "https://checkout.aera.com/session/abc123"
}
}Field reference: Create MIT Checkout Session
HTTP Headers
Keep your
x-api-keyandAuthorizationtoken secret. Store them in environment variables or a secrets manager — never hard-code credentials in source files, client-side code, public repositories, or browser requests. Rotate compromised keys immediately through the Aera dashboard.
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
x-api-key | string | Yes | – | API key assigned by Aera. |
merchant-id | string | Yes | – | Merchant ID assigned by Aera. |
idempotency-key | string (UUID v7) | Yes | – | Unique key identifying this request. Safe retries must reuse the same key. |
Authorization | string | Yes | – | Bearer <access token> |
Accept | string | Yes | application/vnd.payments.v1+json | API versioned accept header. |
Content-Type | string | Yes | application/vnd.payments.v1+json | API versioned content type. |
Request body
merchantInfo object
merchantInfo object| Field | Type | Required | Default | Description |
|---|---|---|---|---|
successRedirectUrl | string (url) | Yes | – | Where the shopper is redirected after a successful payment. |
cancelRedirectUrl | string (url) | Yes | – | Where the shopper is redirected if they cancel checkout. |
errorRedirectUrl | string (url) | Yes | – | Where the shopper is redirected if checkout fails. |
webhookUrl | string (url) | No | – | Webhook URL override for this session. Use to receive notifications at a different URL than your default. Must match the configured domain rules |
ui | Object | No | – | Optional object used to configure how the checkout experience is rendered. Include this object only when using the embedded checkout form. If omitted, the default behavior is redirect to the Aera Hosted Checkout Page. |
ui
ui| Field | Type | Required | Description |
|---|---|---|---|
mode | string | Yes (when ui is provided) | Checkout rendering mode. Set to EMBED to render Aera’s hosted checkout form inside the merchant page. |
origin | string (URL) | Yes (when mode = EMBED) | The merchant’s origin (scheme + host, e.g. https://merchant.example). Used for security validation and postMessage communication. |
transactionData object
transactionData object| Field | Type | Required | Default | Description |
|---|---|---|---|---|
merchantReference | string | Yes | – | Merchant reference (for example, order number). |
immediateCapture | boolean | No | false | If true, authorizes and captures immediately. If false, authorizes first and requires capture later (if applicable). |
splitShipment | boolean | No | false | Set totrueif shipment potentially can be split into multiple shipments. Ignored if immediateCapture = true |
recurringPaymentInfo | object | Yes | Defines the properties of the subsequent recurring pyaments . | |
amountDetails | object | Yes | – | Amount object (minor units). |
transactionData.amountDetails
transactionData.amountDetails| Field | Type | Required | Default | Description |
|---|---|---|---|---|
amount | integer | Yes | – | Gross amount in minor units (for example, 19900 = NOK 199.00). If the initial amount is zero, use 0. |
currency | string (ISO 4217) | Yes | – | Currency code (for example, NOK), must be the same as the merchant currency. |
paymentInstrumentsProfileData object (optional)
paymentInstrumentsProfileData object (optional)Optional object used to retrieve and manage stored payment instruments ("payment instruments on file"). Use this object if you want to present stored payment instruments or preselect an instrument.
| Field | Type | Required | Description |
|---|---|---|---|
merchantShopperId | string | Conditional | Merchant-provided end-user identifier (e.g. loyalty number or phone). Required when retrieving stored instruments by merchant shopper ID. |
pspShopperId | string (uuid) | Conditional | PSP-assigned shopper ID. Required when retrieving stored instruments by PSP shopper ID. |
allowStoredInstrumentsOnly | boolean | No | If true, only stored instruments are allowed (no new instrument entry allowed). Default: false. |
recurringPaymentInfo object (mandatory)
recurringPaymentInfo object (mandatory)Defines the properties of the subsequent recurring payments. Enumerations:UNSCHEDULEDFor later unscheduled payments (MIT)SCHEDULEDFor later scheduled payments like standing orders or subscriptions (MIT).
Note that at if a payment instrument is enrolled for recurring payments and also stored for convenience, the payment instrument will have two occurences of paymentInstrumentReference. Deleting one of them will not delete the other.
To initiated subsequent recurring payments use Authorize MIT Payment.
Generally, it is the responsibility of the merchant to ensure subsequent recurring payments are within the agreed amount limits and frequency.
| Field | Type | Required | Description |
|---|---|---|---|
recurringModel | string | Yes | Enumerations: UNSCHEDULEDFor subsequent unscehduled merchant-initiated payments (variable amount and frequency)SCHEDULEDFor subsequent scheduled merchant-initiated payments payments like subscriptions and standing orders (variable amount, fixed frequency) |
recurringDescription | string | Yes | Short descrption of the recurring payment agreement, max 25 characters |
recurringFrequency | number | Conditional | Minimum number of days between two subsequent recurring payments. Required for SCHEDULED. Use 28 for monthly payments. |
recurringExpiry | string | No | Date after which no further recurring payments shall be performed. Default is no expiry. |
paymentMethodInfoobject
paymentMethodInfoobjectControls which payment methods are available for this checkout session and allows method-specific configuration. For Create MIT only CARD is an an available option. Unless the merchant wants to restrict card schemes available, this object is not required.
| Field | Type | Required | Description |
|---|---|---|---|
paymentMethodDetails | array(object) | No | Per-method configuration. Include only when overriding defaults or passing method-specific data (for example, card scheme restrictions or invoice line items). |
Method-specific configuration (paymentMethodInfo.paymentMethodDetails)
paymentMethodInfo.paymentMethodDetails)CARD object
CARD object| Field | Type | Required | Default | Description |
|---|---|---|---|---|
cardSchemeWhitelist | array(string) | No | – | Limits allowed card schemes for this payment (acts as an allowlist, for example ["VISA","MASTERCARD","AMEX"]). |
Field reference: response
High-level processing result information.
| Field | Type | Required | Description |
|---|---|---|---|
responseCode | string (3 digits) | Yes | Response code from a predefined list. |
responseText | string | Yes | Human-readable description of the response code. |
sessionInfo
Checkout session metadata.
| Field | Type | Required | Description |
|---|---|---|---|
pspReference | string (UUID v7) | Yes | Unique session identifier generated by Aera. Use this reference for all subsequent operations (capture, cancel, refund, status). |
createdAt | string (ISO 8601) | Yes | Timestamp when the session was created (UTC). |
expiredAt | string (ISO 8601) | Yes | Timestamp when the session expires (UTC). |
checkoutUrl | string (URL) | Yes | URL used to redirect the customer to initiate the hosted checkout session. |
Updated 13 days ago