Cómo funciona
Quién es quién en una integración, cómo se vinculan las cuentas de comercio y qué modelo de integración conviene.
Actores y cuentas
Cada actor se autentica con una credencial distinta, contra una API distinta.
Qué credencial usa cada actor y contra qué API.
- Tu backend usa el
clientIdy elclientSecretsolo en la Auth API, para canjear y renovar tokens. - A la Integration API le manda el
idTokende la cuenta de comercio. - La cuenta de comercio usa su email y contraseña una sola vez, en la pantalla de autorización OAuth.
- El admin de la integración entra al Portal con su email y contraseña.
- El pagador no usa ninguna credencial: transfiere al CVU del cobro o paga en el widget de checkout.
| Actor | Quién es | Credencial | Dónde la usa |
|---|---|---|---|
| Integrador | Tu empresa: el backend que crea cobros | clientId y client de la integración |
Solo en la Auth API: /, / y / |
| Admin de la integración | Quien configura la integración | Email y contraseña del Portal | En el Portal |
| Cuenta de comercio | La cuenta Chytapay que recibe los pagos | Email y contraseña de su cuenta Chytapay | Una vez, en la pantalla de autorización OAuth |
| Pagador | Quien paga el cobro | Ninguna | Transfiere al CVU del cobro o paga en el widget de checkout |
A la Integration API tu backend manda el idToken de la cuenta de comercio como Authorization: Bearer, nunca el clientSecret. El token lleva la integración (aud, el clientId) y la cuenta de comercio (sub). Sin vínculo, la respuesta es 403. El widget de checkout usa en el navegador la clave publicable de la integración (pk_test o pk_live): consultá las claves del widget.
Atención: La autorización OAuth la hace la cuenta de comercio, no el admin de la integración. El token del admin no sirve en la Integration API: responde 401.
Sandbox y Producción
Tu integración es una sola y tiene dos ambientes. Sandbox es para probar, con credenciales y un comercio de prueba. Producción tiene comercios y plata reales. Entrás siempre por el mismo portal y cambiás con el selector de ambiente.
Arrancás en Sandbox. Para pasar a Producción lo pedís en Credenciales: si el chequeo automático lo aprueba, generás las credenciales de producción con el selector de ambiente en Producción, y si no, el pedido pasa a revisión. Los pasos están en Primeros pasos.
El camino de Sandbox a Producción.
- Probás en Sandbox.
- Pedís Producción en Credenciales.
- Un chequeo automático decide: si lo aprueba, generás las credenciales de producción.
- Si no pasa el chequeo, el pedido queda en revisión. Si lo aprueban, generás las credenciales.
El tope diario de mensajes de WhatsApp es por integración: 20 en Sandbox y 200 iniciales en Producción. Consultá los límites.
Vinculación y uso recurrente
La vinculación pasa una vez y necesita un navegador. El uso recurrente pasa en cada cobro, de servidor a servidor.
Vinculación: una vez, con OAuth
La cuenta de comercio autoriza a tu integración en GET /integration/oauth2/authorize, y tu backend canjea el code en POST /integration/oauth2/token por un idToken y un refreshToken, que guardás. Consultá el flujo en Conectar comercios.
Uso recurrente: cada cobro, de servidor a servidor
El idToken dura 1 hora. Renovalo con el refreshToken guardado, como se explica en Conectar comercios, y llamá a la Integration API con Authorization: Bearer <idToken> para crear cobros. Si el admin desvincula la cuenta de comercio, dejás de poder cobrar a su nombre, pero sus cobros pendientes no se cancelan.
Una integración y sus sedes
Todo lo que configurás vive en la integración: clientId y clientSecret, redirect_uri, URLs de webhook, secreto de firma y claves del widget. Tené una sola integración, sin importar cuántos clientes o cuentas de comercio tengas: no crees una por cliente.
Si cada cliente, sucursal o franquicia tiene su propio backend y necesita recibir sus propios eventos, usá sedes. Una sede es una unidad de tu integración con su propia URL de webhook. Las credenciales y el secreto de firma siguen siendo los de la integración: la sede solo cambia a dónde van los eventos.
Nota: Cada integración tiene una URL de webhook, y las sedes suman una por sede. Un evento sin destino no se entrega. Consultá Sedes.
Mapa del Portal
En el Portal, el admin de la integración configura y opera solo su integración. El selector de ambiente cambia entre Sandbox y Producción.
| Sección | Qué hacés ahí |
|---|---|
| Inicio | El resumen de tu integración, el estado de tu pedido de producción y tus topes del día, con Pedir más límite. |
| Cobros | Transacciones y Reportes: los cobros y pagos de tu integración. |
| Comercios | Cuentas: las vinculadas, el botón para desvincular y, en Sandbox, los tokens de prueba. Sedes: aparece solo si tenés sedes habilitadas (pedile a soporte que te las habiliten). Comisión: tu comisión sobre cada pago. |
| Credenciales | Copiás el clientId y la pk del widget, y configurás sus dominios autorizados. Cargás las Direcciones de retorno (redirect_) de OAuth. El client se muestra una sola vez, al crearlo o rotarlo. También pedís Producción. |
| Webhooks | Destino: la URL de webhook, su validation-token, el secreto de firma y el webhook de prueba. Eventos: qué eventos recibís (ahí se activa payment., que viene apagado). Historial: las entregas. |
| Simulador | Un pago entrante simulado. Solo en Sandbox. |
| Configuración | Apariencia del widget, Devoluciones, Avisos por WhatsApp, el equipo y el logo. Ver Funciones por integración. |
Webhooks configura eventos, no las notificaciones al pagador (WhatsApp y email), que van en cada cobro. Consultá la suscripción a eventos.
Acceso
Entrá en chytapay.com.ar/portal/login, con tu email y contraseña. Si todavía no tenés cuenta, elegí Crear cuenta.
Glosario
| Término | Qué es |
|---|---|
| Integración | Tu producto registrado en Chytapay, con su clientId, client, URLs y claves. |
| Cuenta de comercio | La cuenta Chytapay a cuyo nombre se crean los cobros. Se vincula por OAuth. El pagador va en customer. |
referenceId |
Tu id del cobro, único por integración y cuenta de comercio, cancelados incluidos. |
| Sede | Unidad de tu integración con su URL de webhook. En la API y el Portal, tenant. |
| Aviso | El mensaje al pagador por WhatsApp o email. No es lo mismo que un evento de webhook. |
id |
El token de la cuenta de comercio para la Integration API. Dura 1 hora. Se renueva con el refresh. |