Subir deudas y recibir pagos

Introducción

La integración a través de FTP (Protocolo de transferencia de archivos) tiene como objetivo reemplazar la carga manual de archivos a través de la Web App. A cambio, Toku obtiene diariamente la ultima versión de tu archivo de Invoices y Payments. Existen dos formas de actualizar deudas:

  1. Que el nuevo archivo reemplaze al anterior, borrando deudas cargadas anteriormente y que sigan solo las del último archivo.
  2. Que el nuevo archivo actualice deudas y agregue nuevas sin que se borren las anteriores.

Credenciales

El servidor donde estén los archivos puede ser del cliente o en un servidor de Toku.

Servidor del cliente
Se debe dar acceso a Toku a tu servidor FTP. Las credenciales requeridas son:

  Host
  User
  Password

En caso de tener acceso restringido al servidor, autorizar el acceso a las siguientes direcciones IP:

35.239.226.142
35.238.56.68

Servidor de Toku
Para que Toku de acceso al servidor se debe solicitar a [email protected]

Formato de los archivos

Diariamente se revisará en el servidor FTP la existencia de los archivos Invoices y Payments, en formato CSV y cuyo nombre contenga la fecha de creación a día de hoy, de la forma:

Invoices: YYYY-MM-DD_toku_payments.csv
Payments: YYYY-MM-DD_toku_invoices.csv

La lectura de estos archivos se hace todos los días a las 5:00 AM hora local, por lo que deben ser generados y subidos al servidor antes de esta hora. Si no se encuentra alguno de los archivos correspondiente al día de carga, los Invoices o Payments no son actualizados.

Archivo Invoices

El archivo Invoices es requerido. Debe incluir el estado actual de todas las deudas activas que estén o deban ser registradas en Toku.

A continuación se listan los campos a incluir en el archivo Invoices:

NombreDescripciónRequerido
government_idIdentificador personal del Customer según su nacionalidad.🔘 Si
mailCorreo que se utilizará para contactar al Customer.🔘 Si
product_idIdentificador interno del producto que genera el Invoice. Puede ser un número de contrato o de propuesta.🔘 Si
due_dateFecha de vencimiento del Invoice, en formato YYYY-MM-DD.🔘 Si
amountMonto adeudado.🔘 Si
is_paidIndica si el Invoice se encuentra pagado o no.
Valor por defecto: False
⚪ No
nameNombre del Customer⚪ No
is_voidIndica si el Invoice se encuentra anulado o no. Los Invoices anulados se tratan como si hubiesen sido borrados.
Valor por defecto: False
⚪ No
phone_numberNúmero de teléfono del Customer para contactarlo por SMS y WhatsApp.⚪ No
pac_mandate_idIdentificador del mandato que se pondrá al inscribir el PAC asociado al customer.⚪ No
default_agentCorreo del asistente que tendrá asignado por defecto el customer en caso de que este responda alguno de los correos que se le mandan.⚪ No
send_mailFlag que nos indica si quieres mandar automáticamente un correo al crear el customer. Se le enviará con la secuencia "Invitación inscripción medio de pago".⚪ No
link_paymentURL en el que se debe pagar el Invoice. Dejar en blanco en caso de usar el portal de pagos de Toku. Incluir solo en el case de que poseas tu propio procesador de pagos.⚪ No

Ejemplo de archivo Invoices.

En particular, este archivo debe contener las columnas created_at y updated_at.

La columna created_at indica la fecha de creación de este registro. Al momento de leer el archivo Invoices, aquellos registros con fecha de creación posterior a la ultima carga de Invoices serán subidos a Toku.

La columna updated_at indica la fecha de actualización de este registro. Al momento de leer el archivo Invoices, aquellos registros con fecha de actualización posterior a la ultima carga de Invoices serán actualizados, reflejando cualquier cambio en alguno de sus campos.

Registros cuya fecha de creación o actualización sea anterior a la ultima carga no serán alterados.

Archivo Payments

El archivo Payments es opcional. Debe incluir todos los nuevos pagos hechos a día de hoy y que deben registrarse en Toku. El Invoice relacionado a ese Payment será automáticamente marcado como pagado y no recibirá más mensajes.

A continuación se listan los campos a incluir en el archivo Payments:

NombreDescripciónRequerido
product_idIdentificador interno del producto que genera el Invoice. Puede ser un número de contrato o de propuesta.🔘 Si
due_dateFecha de vencimiento del Invoice, en formato YYYY-MM-DD.🔘 Si
payment_amountMonto cancelado.⚪ No
payment_methodMedio de pago.⚪ No
payment_dateFecha de pago⚪ No

Ejemplo de archivo Payments.

📘

Archivo Payments Opcional

Es posible no subir archivos Payments, y utilizar la integración únicamente con el archivo Invoices. Para indicar que una deuda está pagada, basta con cambiar la columna is_paid a True, y actualizar el valor de updated_at a día de hoy para que sea actualizada en la próxima lectura del archivo.

Recomendamos subir el archivo Payments, ya que este permite tener el registro de los montos y medios de pagos utilizados al pagar cada Invoice.