En esta página
Localizador de cajeros automáticos – México
En esta página
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.
| 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. |