Crear Check-in con cliente y tarjeta existente
Permite crear un nuevo check-in utilizando una tarjeta previamente registrada y tokenizada para un cliente existente en VirtualPOS.
A diferencia del flujo tradicional de creación de check-in, este endpoint no requiere ingresar nuevamente los datos del cliente ni desplegar un formulario para captura de tarjeta. La tarjeta ya registrada se utiliza directamente para ejecutar la garantía asociada al nuevo check-in.
El endpoint recibe en la URL el uuid_cli del cliente y el card_reference_id de la tarjeta. Ambos identificadores se utilizan para validar que la tarjeta informada corresponda efectivamente al cliente antes de crear el check-in y ejecutar la garantía.
La garantía se procesa de forma inmediata al crear el check-in.
POST /v3/checkins/cof/{uuid_cli}/{card_reference_id}| Ambiente | URL base API | Portal de comercio |
|---|---|---|
| Sandbox | https://api.virtualpos-sandbox.com |
comercios.virtualpos-sandbox.com |
| Producción | https://api.virtualpos.cl |
comercios.virtualpos.cl |
Headers
Sección titulada «Headers»| Nombre | Requerido | Descripción |
|---|---|---|
Content-Type |
Sí | application/json |
Authorization |
Sí | API KEY del comercio |
Signature |
Sí | JWT HS256 firmado con la SECRET KEY, payload {"ciat": <timestamp>}. Ver firma de Checkins. |
Parámetros de ruta
Sección titulada «Parámetros de ruta»| Nombre | Requerido | Descripción |
|---|---|---|
uuid_cli |
Sí | ID del cliente existente |
card_reference_id |
Sí | ID de referencia de la tarjeta registrada del cliente |
| Campo | Obligatorio | Regla | Observación |
|---|---|---|---|
uuid_cli |
Sí | ID del cliente existente | Se informa como parámetro en la URL |
card_reference_id |
Sí | ID de referencia de la tarjeta registrada | Se informa como parámetro en la URL y debe corresponder al uuid_cli informado |
currency |
Sí | Moneda de la transacción | Actualmente CLP |
description |
No (Opcional) | Descripción del check-in | Ej.: arriendo, habitación |
merchant_internal_code |
Sí | Identificador único del comercio | Permite identificar el check-in desde el sistema del comercio |
date_checkin_commerce |
Sí | Fecha de inicio informada por el comercio | Formato YYYY-MM-DD |
date_checkout_commerce |
Sí | Fecha de término informada por el comercio | Formato YYYY-MM-DD |
payment_plan |
Sí | Plan de pago del check-in | Debe contener la definición de garantía |
payment_plan.guarantee |
Sí | Definición de garantía | Objeto obligatorio |
payment_plan.guarantee.timing |
Sí | Momento de ejecución de la garantía | Para este flujo corresponde a immediate |
payment_plan.guarantee.amount |
Sí | Monto de garantía | Debe ser mayor a 0, entero y sin decimales |
callback_url |
No (Opcional) | URL de callback | Debe enviarse en Base64 |
metadata |
No (Opcional) | Información adicional | JSON clave-valor |
No se requiere enviar los datos del cliente en el body, ya que estos se recuperan a partir de uuid_cli. Tampoco se genera hosted_url ni se requiere return_url, debido a que no existe interacción del cliente con un formulario de captura de tarjeta.
Ejemplo de request
Sección titulada «Ejemplo de request»curl -X POST 'https://api.virtualpos-sandbox.com/v3/checkins/cof/{uuid_cli}/{card_reference_id}' \ -H 'Content-Type: application/json' \ -H "Authorization: $API_KEY" \ -H "Signature: $SIGNATURE" \ -d '{ "currency": "CLP", "description": "checkin2", "merchant_internal_code": "RCAR-Chk2Agosto", "date_checkin_commerce": "2026-09-21", "date_checkout_commerce": "2026-09-30", "payment_plan": { "guarantee": { "timing": "immediate", "amount": 456000 } }, "callback_url": "aHR0cHM6Ly9zZXJ2aWNlcy52aXJ0dWFscG9zLWRldi5jb20vbGlzdGVuZXItYXN5bmMtY29uZmlybWF0aW9u", "metadata": { "Marca": "Toyota", "Modelo": "RAV4 Grey" }}'Respuestas
Sección titulada «Respuestas»{ "status": "OK", "code": 200, "checkin": { "commerce": { "commerce_id": "76478111-2", "name": "Virtualpos" }, "client": { "uuid_cli": "cli_0316a73a5f2a9a14", "status": "ACTIVO", "email": "cliente@ejemplo.cl", "first_name": "Cliente", "last_name": "Ejemplo", "social_id_type": "RUT", "social_id": "11111111-1", "phone": "56987656772", "type": "PERSONA" }, "uuid": "chk_be9c0229-809a-4aee-9438-9087c62267f3", "status": "authorized", "currency": "CLP", "description": "Checkin 2", "merchant_internal_code": "MIT-checkinDos2222", "guarantee_amount": 20002, "timing_guarantee": "immediate", "date_checkin_commerce": "2026-09-21", "date_checkout_commerce": "2026-09-30", "created_at": "2026-08-06 13:20:57", "card": { "card_reference_id": "card_098947b65c6040e3fbcbe286c6669d34", "created_at": "2026-08-05 17:07:16", "status": "Inscrita", "brand": "NN", "last4": "0123", "nacional": "F", "card_type": "TC", "cardholder_name": "Prueba KLAP", "issuer": "Extranjero", "issuer_code": "40055299" }, "guarantee": { "transaction_type": "checkin", "status": "authorized", "amount": 20002, "currency": "CLP", "authorized_at": "2026-08-06 13:21:00", "authorization_code": "245140" }, "callback_url": "aHR0cHM6Ly9zZXJ2aWNlcy52aXJ0dWFscG9zLWRldi5jb20vbGlzdGVuZXItYXN5bmMtY29uZmlybWF0aW9u", "metadata": { "Marca": "Toyota", "Modelo": "RAV4 Grey" } }}