Actores
Hay dos actores en cada integración con Chytapay. Distinguirlos es clave para evitar errores.
| Rol | Quién es | Qué hace |
|---|---|---|
| Administrador de integración | Vos — la empresa o producto que integra con Chytapay. | Tu backend habla con la Integration API usando clientId/clientSecret. Tu equipo configura el portal admin (webhook, redirect URIs). |
| Cuenta de comercio | El usuario Chytapay (cliente final) que recibe los pagos. | Autoriza tu integración vía OAuth una vez. Su identidad es email + password de Chytapay. Después, vos podés crear payment requests en su nombre usando el refreshToken que guardaste. |
Vinculación inicial vs uso recurrente
Hay dos flujos distintos. Confundirlos es el error más frecuente en integraciones nuevas.
Después de vincular una vez, cada cobro sigue este flujo más simple — todo server-side, sin intervención del usuario.
Sedes (tenants)
Una integración puede subdividirse en sedes: unidades distintas —sucursales, locales, franquicias— cada una con su propio webhook, para que cada pago llegue solo a la sede que lo generó. No es un actor aparte: las sedes las administra el mismo admin de integración.
Ver la guía Multi-sede →Modelos de integración
Antes de escribir código, elegí cómo se mapea tu producto contra Chytapay. Hay dos formas de armarlo, y la elección define cuántas integraciones y webhooks vas a mantener.
1 integración + N cuentas de comercio autorizadas por OAuth + 1 webhook. Distinguís cada cobro por su referenceId. Vos orquestás todo desde un solo lugar y cada usuario final autoriza una vez con su cuenta de comercio.
Cuándo: un SaaS que cobra en nombre de muchos usuarios finales desde una misma aplicación.
1 integración por sistema o cliente. Cada instalación tiene sus propias credenciales, su propio webhook y su propio ciclo de vida, sin nada compartido entre ellas.
Cuándo: instalaciones separadas que no comparten backend ni base de datos.
Rate limits
La Integration API limita cuántos payment requests podés crear por día, por integración y por cuenta de comercio.
- Tope: 200 creaciones de payment request por día (POST /payment-request y POST /payment-request/bulk).
- Una llamada a POST /payment-request/bulk cuenta como UNA sola request, sin importar cuántos items tenga el batch (1 a 100). No se cobra 1 request por item.
- El contador es por integración + cuenta de comercio, y se reinicia a las 00:00 hora Argentina.
- Al superar el tope, la respuesta es 429 con { message, availableAt, maxRequestsPerDay } — availableAt es la fecha/hora (Argentina) desde la que podés volver a crear cobros.
Glosario
| Término | Qué es |
|---|---|
| Integración | Tu empresa o producto conectado a Chytapay; habla con la Integration API con clientId/clientSecret. |
| Cuenta de comercio (CVU) | El usuario Chytapay que recibe los pagos; su CVU es la caja de banco a la que entra la plata. |
| Admin del portal | La persona de tu equipo que administra la integración desde el Portal (webhook, redirect URIs, sedes). |
| Pagador (customer) | Quien paga el cobro. Sus datos van en el campo customer del payment request. |
| Sede / tenant | Cada unidad de negocio de una integración, con su propio webhook, para aislar los avisos por sucursal. |
| referenceId | Tu llave de reconciliación para cada cobro; única y elegida por vos. |
| Webhook | La URL tuya a la que Chytapay hace POST cuando cambia el estado de un cobro. |