Intenciones de Pago
Crear intención de pago
POST /v1/cloud-terminals/payment-intentions
Permite crear una nueva intención de pago sobre una terminal física del ecosistema Menta. Al invocarlo se envía el importe y la información del comercio a la terminal para que la persona usuaria confirme la compra. No realiza el cobro inmediato; simplemente prepara la transacción en la terminal.
La terminal indicada debe estar CONECTADA. Esta validación aplica a las acciones que se envían a la terminal (creación y cancelación de intención). Si no hay terminal conectada, la API responde 422 con el mensaje “No connected terminal found for the provided parameters” y no persiste ni envía el comando.
ℹ️
- El identificador de la intención (
request_id) lo genera el servidor y se devuelve en el body de la respuesta201. Conserva ese valor para consultar o cancelar la intención. - El rol
CUSTOMERoMERCHANTpuede invocar el endpoint. El comercio o cliente debe tener habilitada la funcionalidadCLOUD_TERMINAL; de lo contrario la respuesta es403.
Encabezados
Authorization: Bearer {access_token}Body (JSON)
| Parámetros | Descripción |
|---|---|
| customer_id |
|
| merchant_id |
|
| terminal_id |
|
| amount |
|
payment_method
|
|
card_brand
|
|
installments
|
|
additional_info
|
|
is_tip_allowed
|
|
is_print_allowed
|
|
curl --location --request POST 'https://api.menta.global/api/v1/cloud-terminals/payment-intentions' \
--header 'Authorization: Bearer {access_token}' \
--data-raw '{
"customer_id": "{customer_id}",
"merchant_id": "{merchant_id}",
"terminal_id": "{terminal_id}",
"amount": "10000",
"payment_method": "CREDIT",
"card_brand": "VISA",
"installments": 3,
"additional_info": "Compra en restaurante - Mesa 5",
"is_tip_allowed": true,
"is_print_allowed": true
}'201: Created
{
"request_id": "84d8c5dc-c71a-42de-80e7-9a457e174be3",
"terminal_id": "{terminal_id}",
"merchant_id": "{merchant_id}",
"customer_id": "{customer_id}",
"data": {
"amount": "10000",
"payment_method": "CREDIT",
"card_brand": "VISA",
"installments": 3,
"additional_info": "Compra en restaurante - Mesa 5",
"is_print": true,
"is_tip": true
}
}Los campos sin valor se omiten. En data, is_print e is_tip reflejan is_print_allowed e is_tip_allowed.