Configuración del portal del Merchant
Configura el Customer Portal de un Merchant — el branding y las acciones self-service que los clientes tienen permitido realizar.
Estos endpoints controlan cómo se ve y se comporta el Customer Portal para este Merchant: el branding que ven los clientes y qué acciones self-service pueden realizar, como cambiar de plan o actualizar una tarjeta.
El portal funciona bajo tu marca, por lo que su configuración pertenece al Merchant, y no a Tokeflow. Los cambios entran en vigor en la próxima sesión del cliente en el portal.
Estos endpoints impulsan la Tokeflow Dashboard UI. Están autenticados por sesión (JWT bearer) — el token proviene de iniciar sesión en el Dashboard, no de una clave de API sk_/pk_. Las solicitudes también incluyen el encabezado x-merchant-id, que identifica al Merchant en contexto, y el usuario que inició sesión debe ser miembro con acceso a él.
El objeto de configuración del portal
Devuelto por los endpoints de listado y consulta de esta página.
| Field | Type | Description |
|---|---|---|
merchant_id | string | — |
allow_cancellation | boolean | — |
allow_plan_change | boolean | — |
allow_payment_method_change | boolean | — |
cancellation_survey | boolean | — |
custom_cancellation_message | string | null | — |
Endpoints
GET/api/v1/merchant/portal-config
Auth: Sesión del Dashboard (JWT bearer). Se requiere membresía del Merchant.
Obtiene la configuración del portal del cliente.
Ejemplo de solicitud
curl https://api.tokeflow.com/api/v1/merchant/portal-config \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9…" \
-H "x-merchant-id: mrc_8a3f12d9"Ejemplo de respuesta — 200
{
"merchant_id": "mrc_123",
"allow_cancellation": true,
"allow_plan_change": true,
"allow_payment_method_change": true,
"cancellation_survey": true,
"custom_cancellation_message": "Operation completed successfully"
}PUT/api/v1/merchant/portal-config
Auth: Sesión del Dashboard (JWT bearer). Se requiere membresía del Merchant.
Actualiza la configuración del portal del cliente.
Campos de la solicitud
| Field | Type | Required | Description |
|---|---|---|---|
allow_cancellation | boolean | No | Permite que los clientes cancelen a través del portal. |
allow_plan_change | boolean | No | Permite que los clientes cambien de plan a través del portal. |
allow_payment_method_change | boolean | No | Permite que los clientes agreguen una tarjeta durante el dunning. |
cancellation_survey | boolean | No | Muestra una encuesta de cancelación. |
custom_cancellation_message | string | No | Markdown que se muestra en la pantalla de cancelación. |
Ejemplo de solicitud
curl -X PUT https://api.tokeflow.com/api/v1/merchant/portal-config \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9…" \
-H "x-merchant-id: mrc_8a3f12d9" \
-H "Content-Type: application/json" \
-d '{
"allow_cancellation": true,
"allow_plan_change": true,
"allow_payment_method_change": true,
"cancellation_survey": true,
"custom_cancellation_message": "Operation completed successfully"
}'Ejemplo de respuesta — 200
{
"merchant_id": "mrc_123",
"allow_cancellation": true,
"allow_plan_change": true,
"allow_payment_method_change": true,
"cancellation_survey": true,
"custom_cancellation_message": "Operation completed successfully"
}Errores
Los errores usan el envoltorio estándar. Los casos más comunes aquí:
| HTTP | Meaning |
|---|---|
400 | Parámetros inválidos o un estado que no permite esta operación. |
401 | Token de sesión del Dashboard ausente, vencido o inválido. |
403 | Autenticado, pero el usuario que inició sesión no tiene acceso a esta entidad. |
404 | El registro no existe o no es visible para esta entidad. |