Aprende cómo integrar el portal del cliente usando la API de Treli
Empezar
Con el portal del cliente, puedes permitir a tus clientes gestionar sus suscripciones, métodos de pago y pagar facturas sin necesidad de desarrollar un portal tú mismo. Después de configurar e integrar el portal, los clientes son redirigidos a un portal de marca compartida donde pueden administrar su cuenta según las funcionalidades que configures.
Para integrar tu aplicación o página web con el portal del cliente:
- Configura las características y la interfaz de usuario del portal. Puedes hacer esto en tu cuenta de Treli.
- Implementa una redirección para integrar el portal con tu aplicación o página web.
- Pon en marcha el portal en tu entorno de producción
1. Configura el portal
Antes de integrar el portal del cliente, configura su funcionalidad y marca en tu cuenta de Treli para definir qué pueden hacer tus usuarios con el portal.
Para hacer esto, ingresa a tu cuenta de Treli y dirígete a sección de Configuraciones > Esenciales de cara al cliente > Portal de autoservicio
2. Implementa una redirección
Una sesión de portal es el punto de entrada al portal del cliente. Proporciona un enlace único y temporal al portal. Cuando un cliente quiere gestionar sus suscripciones o facturas, crea una nueva sesión de portal y redirígelo a la url
de la sesión.
En tu sitio, agrega un botón que los clientes puedan hacer clic para entrar al portal. Usa una solicitud POST para crear una sesión de portal:
<form method="POST" action="/crear-sesion-de-portal">
<button type="submit">Mi cuenta</button>
</form>
A continuación, agrega un endpoint que crea una sesión de portal y redirige a tus clientes. Asegúrate de autenticar a los clientes en tu sitio antes de crear sesiones para ellos. Para crear una sesión, necesitas el correo del cliente y opcionalmente, un return_url
, para redirigir a los clientes a cuando hacen clic en el enlace del portal para cerrar su sesión.
Cuando creas una sesión de portal, Treli devuelve el objeto de sesión del portal
, que contiene la URL de corta duración (auth_url)
de la sesión que tus clientes utilizan para acceder al portal del cliente.
import requests
import json
url = "https://treli.co/wp-json/api/portal/sessions/create"
payload = json.dumps({
"customer_email": "{{CUSTOMER_EMAIL}}",
"return_url": "https://ejemplo.com"
})
headers = {
'Content-Type': 'application/json',
'Authorization': 'Basic {{AUTHENTICATION}}'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://treli.co/wp-json/api/portal/sessions/create',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"customer_email": "{{CUSTOMER_EMAIL}}",
"return_url": "https://ejemplo.com"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'Authorization: Basic {{AUTHENTICATION}}'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
3. Puesta en marcha
Asegúrate de probar el portal antes de habilitarlo en producción. Cuando estés listo para ponerlo en marcha:
Cuando creas una sesión del portal, Treli devuelve el objeto de sesión del portal
, que contiene la URL de corta duración (auth_url)
que tus clientes deben usar para acceder al portal del cliente.
Duración del enlace
El enlace retornado por el API, es válido únicamente durante 30 minutos.
Opcional: Enlaces directos
Es posible que desees optimizar las acciones del cliente y personalizar aún más los flujos de trabajo entre tu propia aplicación y Treli. Los enlaces directos del portal del cliente te permiten enlazar directamente a una página especifica del portal.
En el endpoint para crear la sesión de portal, agrega el parámetro forward
con alguno de los siguientes valores:
Valor | Descripción |
---|---|
customer_update_address | Permite a tus clientes actualizar su información de facturación. |
customer_invoices | Permite a tus clientes obtener un listado y realizar el pago de facturas pendientes. |
subscription_update_payment | Permite a tu cliente actualizar el método de pago de una suscripción |