Información de API

Localizador de cajeros automáticos – México


Introducción

HSBC ha realizado todos los esfuerzos razonables para cumplir con la implementación de los estándares de la Banca Abierta en México de acuerdo a la CNBV. Por lo tanto, los Solicitantes de Datos deben comenzar con la documentación publicada por la CNBV.

Esta documentación cubre áreas específicas detalladas para ayudarte a registrar tu aplicación, obtener tokens de acceso y completar los flujos de la API.


Registro

Existen dos elementos principales en el proceso de registro de tu aplicación para nuestras APIs productivas:

1. Afirmación de Declaración de Software (Software Statement Assertion, SSA, por sus siglas en inglés) 

La generación de una SSA se debe completar dentro de develop.hsbc, esta nos confirma tu registro como desarrollador y que has aceptado nuestros términos y condiciones. Se te pedirá utilizar la SSA generada en develop.hsbc como parte del proceso de registro dinámico de cliente (DCR, Dynamic Client Registration) que se describe a continuación.

Para generar un SSA, por favor abre este tablero y sigue las instrucciones.

La SSA tendrá una validez temporal. Cópialo y completa el proceso DCR antes de que expire.

Si necesitas volver a registrar tu aplicación en cualquier momento, puedes generar una nueva SSA de la misma manera. La generación de una nueva SSA sobrescribirá la SSA anterior.

2. Registro de Cliente Dinámico (DCR, Dynamic Client Registration) 

Implementamos la versión 3.2 de la especificación de registro de cliente dinámico OBIE. El siguiente diagrama muestra la secuencia de pasos.

DCR
Endpoint  URL
POST /register https://api.ob.hsbc.com.mx/obie/open-banking/v1.0/oauth2/register

Inicia el proceso DCR llamando a la URL anterior.

Toma en cuenta que el tipo de contenido de DCR debe ser application/jose.

Toma en cuenta que el parámetro de vigencia de JWT (exp) en el cuerpo de la solicitud debe establecerse a un máximo de 30 minutos.

Después de una DCR exitosa, se te proporcionará un ClientId y ClientSecret.

Ejemplo de solicitud DCR

Campo     Valor/Valor ejemplo Comentarios
iss SSAID Para obtenerlo, deberás desencriptar el SSA generado en develop.hsbc (puedes usar la herramienta: https://jwt.io/) y utilizar el valor de “software_client_id”
aud https://api.ob.hsbc.com.mx  
scope     OPENDATA  
grant_types  client_credentials  
application_type  web  
token_endpoint_auth_method client_secret_basic  
software_id l91e7aa0k77xwge97vt2q Para obtenerlo, deberás desencriptar el SSA generado en develop.hsbc (puedes usar la herramienta: https://jwt.io/) y utilizar el valor de “software_client_id”
software_statement SSA generated for below json Utiliza el SSA generado en develop.hsbc
exp 1674206304 Indica cuando la SSA expira (se usa para la validación durante DCR)
iat 1555506046 Indica el momento en que se creó la SSA
jti 45903DAE-3174-4E9E-9047-BBAE9C1A723F  

Acceso

Implementamos el siguiente end point para obtener el Token de Acceso.

Endpoint
 
URL
POST /token https://api.ob.hsbc.com.mx/obie/open-banking/v1.0/oauth2/token

Utilizando el ClientId y el ClientSecret proporcionado por el proceso de DCR, realiza un llamado al endpoint POST /token para obtener un Token de Acceso.

Cada Token de Acceso tendrá una vigencia de 30 días.

Toma en cuenta que el valor de audiencia "aud" en JWT para el endpoint /token debe ser: https://api.ob.hsbc.com.mx

Ejemplo curl

curl --location --request POST 'https://api.ob.hsbc.com.mx/obie/open-banking/v1.0/oauth2/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: Basic ODY3ODU4OWEtNWc5Ni00ODQxLTg2MzctOWRlMWY0OWFiZGVnOm40bXR1Vk1hLXFrVWhvblNoaG5Wcl
BLWVJzUW9CdjkxbkRCWkY0TVlUYTg5cVBlYm9rZHBRSGxIa2M3Z214TDQwWFNyeDZubUF5MGl6a24zb
DNkbi13' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'scope=OPENDATA'


Cumplimiento

Implementamos los siguientes end points de acuerdo con el contrato de la CNBV.

Endpoints URL
GET /atms https://api.ob.hsbc.com.mx/atms
HEAD /atms https://api.ob.hsbc.com.mx/atms

Utiliza un Token de Acceso cada vez que llames a las anteriores URLs

Ejemplo curl

curl -X GET "https://api.ob.hsbc.com.mx/atms" -H  "accept: application/json" -H  "authorization: Bearer 1ee7d876-970c-4b1d-ab72-3b6a3eee704a"

Los datos de los cajeros automáticos se actualizarán cada 24 horas.


Mensajes de error

Código de error Descripción
400 You have sent a request which could not be understood. Entrada incorrecta
408 Your client has failed to submit a request and a timeout has occurred. La solicitud de consulta ha fallado y el tiempo ha caducado.
429 You have requested this resource too often. Se ha solicitado la consulta demasiadas veces
500 An error occurred on the server. Ha ocurrido un error en el servidor
503 The service is temporarily unavailable. Servicio temporalmente fuera de servicio.

Volver al inicio