Crea una intención de pago en un dispositivo PinPad registrado en tu cuenta Clip.
El encabezado contendrá la Clave con el prefijo Basic, Para crear un intento de pago implementa la siguiente función desde tu backend:
curl --location 'https://api.payclip.io/f2f/pinpad/v1/payment' \
--header 'Authorization: Basic {TOKEN}' \
--header 'Content-Type: application/json' \
--data '{
    "amount": "200.50",
    "tip_amount": "10",
    "reference": "test-demo-6a405173-c661-414a-9a8f-ecc77a9afe3f",
    "serial_number_pos":"P8220724000042",
    "webhook_url": "https://webhook.site/34bb8f7a-9646-4cc9-8694-4307ec53fbb4",
    "preferences": {
        "is_auto_return_enabled": false,
        "is_tip_enabled": false,
  "is_msi_enabled": true,
        "is_mci_enabled": true,
        "is_dcc_enabled": true,
        "is_retry_enabled": true,
        "is_share_enabled": true,
        "is_auto_print_receipt_enabled": false,
        "is_split_payment_enabled": true,
        "redirect_package_name": "com.payclip.blaze.client.app",
        "tip_options": [10,18]
        
    }
}'Respuestas
- Respuesta exitosa (cuando el pago llega al terminal):
Si el pago llega correctamente al terminal, la respuesta será la misma que en el flujo anterior, donde Pinpad-Wait-Response no se utiliza o está configurado en false.
{
    "pinpad_request_id": "pinpad-6a405173-c661-414a-9a8f-ecc77a9afe3f",
    "reference": "test-demo-6a405173-c661-414a-9a8f-ecc77a9afe3f",
    "amount": "200.50",
    "serial_number_pos": "P8220724000042"
}- Respuesta de error (Fallo en la conexión con el terminal):
Si la solicitud de pago no logra llegar al terminal (por ejemplo, debido a la falta de conexión a internet o un valor incorrecto de serial _number_pos), el servicio devolverá el siguiente error (504 Gateway timeout):
{
    "code": "PINPAD_TERMINAL_TIMEOUT_EXCEPTION",
    "message": "Unable to connect to pinpad terminal. Please check your internet connection in the desired pinpad terminal or verify the correct serial_number_pos."
}
Objeto Completo
La siguiente tabla describe los elementos del objeto de respuesta completo que recibirá tu sistema
| Elemento | Descripción | Tipo | Notas | |||||||
| amount | Monto de la transacción. | String | Este parámetro es requerido | |||||||
| tip_amount | Monto de la propina. | String | 
 | |||||||
| reference | ID de referencia externa. | String | Este parámetro es requerido | |||||||
| serial_number_pos | Número de serie del terminal Clip | String | Este parámetro es requerido | |||||||
| webhook_url | URL donde se enviarán las notificaciones. | String | De no venir este valor se utilizará por default el definido en el panel de desarrolladores. | |||||||
| preferences | Valores personalizables. | Object | Opciones que pueden activarse o desactivarse | |||||||
| 
 | is_auto_return_enabled | Parámetro para configurar el proceso del terminal al finalizar. | Boolean | 
 | ||||||
| 
 | is_tip_enabled | Parámetro para la configuración de la pantalla de propinas del terminal. | Boolean | 
 | ||||||
| 
 | is_msi_enabled | Parámetro para habilitar cuotas sin intereses. | Boolean | Para conocer los términos y condiciones sobre cuotas, visita el sitio de Clip. | ||||||
| 
 | is_mci_enabled | Parámetro para habilitar cuotas con intereses. | Boolean | Para conocer los términos y condiciones sobre cuotas, visita el sitio de Clip. | ||||||
| 
 | is_dcc_enabled | Parámetro para habilitar la conversión dinámica de moneda actual. | Boolean | 
 | ||||||
| 
 | is_retry_enabled | Parámetro para permitir que los usuarios reintenten sus pagos cuando estos fallan. | Boolean | 
 | ||||||
| 
 | is_share_enabled | Parámetro para habilitar botones de compartir en pantalla de detalle del pago. | Boolean | 
 | ||||||
| 
 | is_auto_print_receipt_enabled | Parámetro para mandar a imprimir en automático al finalizar. | Boolean | 
 | ||||||
| 
 | is_split_payment_enabled | Parámetro para para habilitar la división del pago total en múltiples transacciones. | Boolean | 
 | ||||||
| 
 | redirect_package_name | Después de la transacción pinpad redirecciona hacia una app instalada dentro de las terminales. | String | En caso de que el packageName sea incorrecto pin pad app volverá a la vista principal. | ||||||
| 
 | tip_options | Parámetro para definir las propinas que aparecen en la vista de Tips. | Boolean | Los valores permitidos son números enteros entre 1 y 100. Permite entre 1 y tres opciones. | ||||||
Consideraciones Clave
- Encabezado Pinpad-Wait-Response:Úsalo para controlar si el cliente espera o no la respuesta del terminal.
- Comportamiento de tiempo de espera:Configurado a 60 segundos. Si se supera este tiempo, se genera un error de tiempo de espera.
- Errores comunes:Problemas de conectividad o identificadores de terminal incorrectos desencadenará una respuesta de excepción.
Llamada de prueba
Puedes realizar una llamada de prueba, únicamente asegúrate de poner tu token de autenticación en el campo "Header: Autorization" del widget localizado a tu derecha y dale click en el botón "Try It!":

