Saltar al contenido principal

Single Sign On

Single Sign On (SSO) es un mecanismo de autenticación que permite que el usuario se autentique una sola vez y que luego pueda acceder a múltiples aplicaciones sin tener que volver a autenticarse.

En el caso de la app de Sipay Softpos, el Single Sign On (SSO) se utiliza para que el usuario se autentique una sola vez con una aplicación corporativa existente y al invocar el pago de tap-to-pay no tenga que volver a autenticarse.

Para poder activar esta característica de la integración, además de seguir las instrucciones técnicas contenidas en esta guía, debes solicitar la generación de un API-Key.

Las funciones que debes integrar son:

  • Creación de usuarios
  • Deshabilitación de usuarios
  • Crear token de autenticación
  • Programar la invocación de la app de Sipay Softpos

Creación de usuarios​

Para crear un usuario, debes realizar una petición HTTP POST a la URL:

POST https://live.sipay.es/sipay_softpos_sso/api/v1/users

Con el siguiente cuerpo:

{
"email": "string",
"merchant_token": "string",
"store_token": "string"
}

enviando en las cabeceras el API-Key proporcionado por Sipay:

Authorization: <API-Key>
ParámetroTipoDescripción
emailstringEmail del usuario del sistema externo
merchant_tokenstringValor fijo proporcionado por Sipay
store_tokenstringValor fijo proporcionado por Sipay

La respuesta será un JSON con el siguiente formato:

{
"status": "string"
}

con el código de respuesta 201 si el usuario se ha creado correctamente.

Deshabilitación de usuarios​

Para deshabilitar un usuario cuando tenga que darlo de baja del sistema externo, debes realizar una petición HTTP PATCH a la URL:

PATCH https://live.sipay.es/sipay_softpos_sso/api/v1/users

Con el siguiente cuerpo:

{
"email": "string",
"enabled": false
}

enviando en las cabeceras el API-Key proporcionado por Sipay:

Authorization: <API-Key>
ParámetroTipoDescripción
emailstringEmail del usuario del sistema externo
enabledbooleanIndica si el usuario está habilitado o no

La respuesta con código HTTP 200 si el usuario se ha deshabilitado correctamente.

Crear token de autenticación​

Antes de invocar el pago de tap-to-pay, debes crear un token de autenticación para el usuario que previamente debería haberse creado.

POST https://live.sipay.es/sipay_softpos_sso/api/v1/tokens

Con el siguiente cuerpo:

{
"email": "string"
}

enviando en las cabeceras el API-Key proporcionado por Sipay:

Authorization: <API-Key>
ParámetroTipoDescripción
emailstringEmail del usuario del sistema externo

La respuesta será un JSON con el siguiente formato:

{
"token": "string",
"expires_at": "1956-03-27T12:28:16.994Z",
"email": "string"
}

con el código de respuesta 201 si el token se ha creado correctamente.

Programar la invocación de la app de Sipay Softpos​

Para entender esta sección se debe haber realizado la integración básica una venta.

Antes lanzar una venta, y controlando la expiración expires_at del token de autenticación generado previamente, se debe realizar un llamada con este payload:

{
"payload": {
"operation": "login",
"data": {
"issuer": "sipay",
"token": "<token de autenticación generado previamente>",
"license": "sipay"
}
}
}

Y si la respuesta recibida es correcta, se puede lanzar la venta y no se pedirá al usuario que se autentique nuevamente. Es importante que gestione adecuadamente la expiración del token de autenticación para generar uno nuevo y así evitar que el usuario tenga que volver a autenticarse.