A continuación se especificará como implementar el servicio de Domiciliación con el funcionamiento básico, existen personalizaciones las cuales se detallan en características de personalización adicionales

Resumen del proceso


Al momento que un cliente decide domiciliar mediante ETpay, se ejecuta un flujo que se resume de la siguiente forma:

  1. CREAR SESIÓN Desde la página web del merchant, se genera una solicitud POST a nuestra API para obtener el session_token que permite al usuario iniciar su sesión de la suscripción.
  2. INICIAR FUNNEL Desde la página web del merchant, se envía un correo al usuario con el enlace al proceso de suscripción.
  3. SESIÓN DEL CLIENTE (FUNNEL) Proceso que realiza el usuario que requiere suscribirse, ingresando datos personales y firmando la autorización de cargos recurrentes.
  4. REDIRECCIÓN SUCCESS/ERROR El usuario realiza su sesión de suscripción en nuestro funnel. Al completar la suscripción el funnel redireccionará a la URL de éxito o error según corresponda (ambas pueden ser la misma URL). Esta redirección tiene solamente el fin de dar una confirmación visual al usuario final dentro del sitio del merchant.
  5. RECEPCIÓN DE NOTIFICACIÓN ETpay realizará una solicitud POST a la URL del servicio web especificado por el merchant. Esta llamada confirma el estado exitoso o fallido de la suscripción y requiere de un paso de validación de la información.

Definiciones

Nombre del campo Descripción Opcional Tipo de dato
merchant_code El código de identificación del merchant No Cadena
merchant_api_token El API token único del merchant No Cadena
client_full_name El nombre completo del cliente a domiciliar No Cadena
client_id El identificador único del cliente de cara al merchant No Cadena
merchant_order_id El identificador único de la domiciliación de cara al merchant No Cadena
client_email El email del cliente al que se le debe de mandar los correos de suscripción No Cadena
service_name El nombre del servicio al que el cliente se va suscribir No Cadena
service_id El identificador único del servicio al que el cliente se va a suscribir No Cadena
max_amount El monto máximo que se le puede llegar a cobrar a un cliente en una solicitud de cobro Número
frequency La frecuencia con la que se pueden hacer cobros (weekly, biweekly, monthly, bimonthly, by_use) Cadena
end_date La última fecha en la que se le podrá hacer un cobro al cliente (YYYY-MM-DD) Cadena
subscription_completed_url La URL a la que se le debe de hacer la redirección al cliente al completar su suscripción Cadena
subscription_cancelation_url La URL a la que se le debe de hacer la redirección al cliente cuando haya un error en su proceso de suscripción Cadena

El siguiente es el catálogo aceptado de frecuencias de pago para el campo frequency :

FREQUENCY SIGNIFICADO
weekly La domiciliación a crear debe de aceptar cobros semanales
biweekly La domiciliación a crear debe de aceptar cobros quincenales
monthly La domiciliación debe de aceptar cobros mensuales
bimonthly La domiciliación debe de aceptar cobros bimestrales
by_use [DEFAULT] La domiciliación acepta cobros en cualquier otra frecuencia

Desarrollo de cada etapa


Crear sesión

El primer paso del proceso de suscripción consiste en obtener un session_token, mediante una llamada de tipo POST desde el servidor del merchant (no desde el navegador del cliente) con el merchant_code y merchant_api_key al endpoint [API_URL]/subscription/initialize.