Wire4RestAPI (1.0.0)

Download OpenAPI specification:Download

Referencia de API

La API de Wire4 está organizada en torno a REST. Nuestra API tiene URLs predecibles orientadas a los recursos, acepta peticiones en formato JSON, y las respuestas devueltas son formato JSON y utiliza códigos de respuesta HTTP, autenticación y verbos estándares.

Puede usar la API de Wire4 en nuestro entorno de prueba, que no afecta sus productivos ni interactúa con la red bancaria. La URL de conexión que se usa para invocar los servicios determina si la solicitud es en modo en de prueba o en modo producción.

Autenticación

La API de Wire4 utiliza el protocolo OAuth 2.0 para autenticación y autorización.

Para comenzar, es necesario que registre una cuenta en nuestro ambiente de pruebas en registro y obtenga las credenciales de cliente OAuth 2.0 desde la consola de administración.

Esta página ofrece una descripción general de los escenarios de autorización de OAuth 2.0 que admite Wire4.

Después de crear su aplicación con Wire4, asegúrese de tener a la mano su client_id y client_secret. El siguiente paso es descubrir qué flujo de OAuth2 es el adecuado para sus propósitos.

URLS

La siguiente tabla muestra las urls de los recursos de autenticación para el ambiente de pruebas.

URL Descripción
https://sandbox-api.wire4.mx/token Obtener token de autorización llaves de API (client_id, client_secret), datos de suscripción (client_id, client_secret, user_key, user_secret) o (refresh_token)
https://sandbox-api.wire4.mx/revoke Revocación de token

Nota: De acuerdo con el RFC 6749, la URL del token sólo acepta el tipo de contenido x-www-form-urlencoded. El contenido JSON no está permitido y devolverá un error.

Scopes

Los scopes limitan el acceso de una aplicación a los recursos de Wire4. Se ofrecen los siguientes scopes de acuerdo al producto:

Producto Scope Descripción
SPEI-SPID general Permite llamar a operaciones que no requieren a un cliente Monex suscrito en Wire4, los recursos que se pueden consumir con este scope son: consulta de Instituciones, CEP y generación de una presuscripción.
SPEI-SPID spei_admin Permite llamar a operaciones que requieren de un cliente Monex suscrito en Wire4, ya que se proporciona información de saldos, administración de transacciones, cuentas de beneficiarios y cuentas de depositantes.
SPEI-SPID spid_admin Permite llamar sólo a operaciones SPID, se requiere de un cliente Monex suscrito en Wire4.
CODI codi_general Permite llamar a operaciones de administración sobre el producto CoDi, como creación y listado de empresas
CODI codi_admin Permite llamar sólo a operaciones CoDi dentro de un punto de venta, las operaciones incluyen creación, consulta, listado, etc de peticiones de pago
CODI codi_report Permite generar reportes de operaciones CoDi.
TODOS device_[dispositivo] Se debe especificar cuándo se gestionan token's desde distintos dispositivos.

Tipos de autenticación

Wire4 cuenta con dos tipos de autenticación: Autenticación de Aplicación (OAuth 2.0 Client Credentials Grant) y Autenticación de Usuario de Aplicación (OAuth 2.0 Password Grant).

Autenticación de Aplicación

Esta autenticación se obtiene proporcionando únicamente las llaves de API las cuáles se pueden consultar en Llaves de API de la consola de administración. La autenticación de aplicación permite accesso a recursos generales y de administración que dependeran del scope. Para este tipo de autenticación se sigue el flujo OAuth 2.0 Client Credentials Grant, que se describe más adelante en Obtener el token de acceso de aplicación, algunos de los recursos que requieren este tipo de autenticación son:

Autenticación de Usuario de Aplicación

Esta autenticación se obtiene proporcionando las llaves de API las cuáles se pueden consultar en Llaves de API más el user_key y user_secret que se proporcionan al momento de crear una suscripción o un punto de venta, para más información puedes consultar las guías creación de suscripción, creación de punto de venta. Con este tipo de autenticación se puede acceder a los recursos especificos que requieren configuraciones y acceso más puntual como información de una cuentas, saldos y administración de transacciones SPEID-SPID o CODI.

Obtener token de acceso

Antes de que su aplicación pueda acceder a los datos mediante la API de Wire4, debe obtener un token de acceso (access_token) que le otorgue acceso a la API. En las siguientes secciones se muestra como obtener un token para cada una de las autenticaciones.

Obtener el token de acceso para autenticación de aplicación

El primer paso es crear la solicitud de token de acceso (access_token), con los parámetros que identifican su aplicación, el siguiente código muestra cómo obtener un token.

curl -k -d "grant_type= client_credentials&scope=general" \
-u "<client id>:<client secret>" https://sandbox-api.wire4.mx/token

Ejemplo:

curl -k -d "grant_type=client_credentials&scope=general" \
-u "8e59YqaFW_Yo5dwWNxEY8Lid0u0a:AXahn79hfKWBXKzQfj011x8cvcQa" \
https://sandbox-api.wire4.mx /token

Obtendrá una respuesta como la que se muestra a continuación, donde se debe obtener el access_token para realizar llamadas posteriores a la API.

{ 
   "access_token":"eyJ4NXQiOiJZak5sWVdWa05tWmlNR1ZoTldSaU1EUXpaREJpWlRJNU1qYzFZV1ZoWWpneU5UYzJPV05sWVEiLCJraWQiOiJZak5sWVdWa05tWmlNR1ZoTldSaU1EUXpaREJpWlRJNU1qYzFZV1ZoWWpneU5UYzJPV05sWVEiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJpc21hZWwuZXNjYW1pbGxhQHRjcGlwLnRlY2hAc2FuZGJveC5zcGVpb2suY29tIiwiYXVkIjoiOGU1OVlxYUZXX1lvNWR3V054RVk4TGlkMHUwYSIsIm5iZiI6MTU3MTMyMDg3NywiYXpwIjoiOGU1OVlxYUZXX1lvNWR3V054RVk4TGlkMHUwYSIsInNjb3BlIjoiYW1fYXBwbGljYXRpb25fc2NvcGUgZ2VuZXJhbCIsImlzcyI6ImFwaW0taWRwIiwiZXhwIjoxNTcxMzI0NDc3LCJpYXQiOjE1NzEzMjA4NzcsImp0aSI6ImJkMTdjMjcyLTg4MGQtNDk0ZS1iMTMwLTBiYTkwMjYyN2M4NCJ9.AjngGylkd_Chs5zlIjyLRPu9xPGyz4dfCd_aax2_ts653xrnNMoLpVHUDmaxIDFF2XyBJKH2IAbKxjo6VsFM07QkoPhlysO1PLoAF-Vkt4xYkh-f7nJRl0oOe2utDWFlUdgiAOmx5tPcStrdCEftgNNrjwJ50LXysFjXVshpoST-zIJPLgXknM3esGrkAsLcZRM7XUB187jxLHbtefVYPMvSO31T9pd5_Co9UXdeHpuA98sk_wZknASM1phxXQZAMLRLHz3LYvjCWCr_v80oVCM9SWTzf0vrMI6xphoIfirfWloADKPTTSUpIGBw9ePF_WbEPvbMm_BZaApJcEH2w",
   "scope":"am_application_scope general",
   "token_type":"Bearer",
   "expires_in":3600
} 

Es posible generar tokens con más de un scope, en caso que sea necesario utilizar dicho token para hacer más de una operación. Para generarlo basta con agregarlo a la petición separado por un espacio.

curl -k -d "grant_type=client_credentials&scope=codi_general codi_report" \
-u "8e59YqaFW_Yo5dwWNxEY8Lid0u0a:AXahn79hfKWBXKzQfj011x8cvcQa" \
https://sandbox-api.wire4.mx /token

Obtener el token de acceso para autenticación usuario de aplicación

Antes de que su aplicación pueda acceder a los datos de una cuenta Monex mediante la API de Wire4, debe obtener un token de acceso (access_token) que le otorgue acceso a la API y contar con el user_key y user_secret que se proporcionan al momento de crear una suscripción para más información puedes consultar creación de suscripción .

El primer paso es crear la solicitud de token de acceso con los parámetros que identifican su aplicación y la suscripción y con scope spei_admin

curl -k -d "grant_type=password&scope=spei_admin&username=<user_key>&password=<user_secret>" \ 
-u "<client_id>:<client_secret>" https://sandbox-api.wire4.mx/token

Ejemplo

curl -k -d "grant_type=password&scope=spei_admin&username=6 nbC5e99tTO@sandbox.wire4com&password= Nz7IqJGe9h" -u " zgMlQbqmOr:plkMJoPXCI" https://sandbox-api.wire4.mx
/token
{ 
   "access_token":"eyJ4NXQiOiJPR1EyTURFM00yTmpObVZoTnpFeE5EWXlObUV4TURKa01qUTJaVEU0TWpGaE1tVmlZakV5TkEiLCJraWQiOiJPR1EyTURFM00yTmpObVZoTnpFeE5EWXlObUV4TURKa01qUTJaVEU0TWpGaE1tVmlZakV5TkEiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIzMzE0ODRlZTdjZDRkYWU5MzRmMjY2Zjc5YmY1YWFAZGV2LWllc2NhbWlsbGEuc3BlaW9rLmNvbSIsImF1ZCI6IkJVR0xjNWw1bW5CZXlPeGxtamNUZ0JoS19WTWEiLCJuYmYiOjE1NzEzNDk4ODMsImF6cCI6IkJVR0xjNWw1bW5CZXlPeGxtamNUZ0JoS19WTWEiLCJzY29wZSI6InNwZWlfYWRtaW4iLCJpc3MiOiJhcGltLWlkcCIsImV4cCI6MTU3MTM1MzQ4MywiaWF0IjoxNTcxMzQ5ODgzLCJqdGkiOiJiOWQ1M2Q0MC0xN2MwLTQxOTItYjUwNy0wZWFhN2ZkNDA1MGYifQ.hLTk8AFoIce1GpLcgch-U5aLLgiiFTo49wfBErD8D6VF-H9sG13ZyfAx9T-vQkk2m1zPapYVQjwibz3GRAJMN0Vczs6flV1mUJwFDQbEE-AELPdRcaRFOMBCfF6H9TVLfhFsGb9U2pVR9TLJcKqR57DyO_dIcc9I6d0tIkxqn2VcqypLVi5YQf36WzBbPeG-iPHYpMA-bhr4rwfjKA-O6jm1NSSxNHF4sHS0YHDPoO_x6cCc677MQEe0_CozfnQhoEWNfG8tcWUqhPtmcfjqon1p7PdQoXxriq_R85d06pVO9Se7Q6ok0V8Qgz0MOJ6z3ku6mtZSuba7niMAOt2TyA",
   "refresh_token":"f962d5c6-0d99-3809-8275-11c7aa0aa020",
   "scope":"spei_admin",
   "token_type":"Bearer",
   "expires_in":3600
}

Suscripciones in activas

En caso de intentar obtener el token de acceso para una suscriptión que no esta activa obtendra una respuesta de error con código 400

curl -k -d "grant_type=password&scope=spei_admin&username=6 nbC5e99tTO@sandbox.wire4com&password= Nz7IqJGe9h" -u " zgMlQbqmOr:plkMJoPXCI" https://sandbox-api.wire4.mx
/token
{
    "error_description": "Error while authenticating user from user store",
    "error": "invalid_grant"
}

Una vez que la suscripción se reactive podrá generar el token de acceso de forma normal.

Nota: Los ejemplos anteriores se presentan considerando que se realiza una implementación desde cero, esto se puede simplificar a sólo configurar sus llaves (client_id, client_secret), datos de suscripción (client_id, client_secret, user_key, user_secret) si utiliza nuestros sdks.

Consideración: Si la aplicación en la que implementará Wire4 estará desplegada en más de una instancia o servidor en cada solicitud de token debe especificar un scope adicional. La forma de hacer esto es que, cuándo se solicita un token se debe especificar un scope adicional con el prefijo "device_" + el dispositivo, por ejemplo:

device_server1
device_server2

en consecuencia cada instancia debe operar con el token gestionado. Si se opera con el mismo token en instancias diferentes encontrará problemas de Credenciales Inválidas.

Ejemplo de solicitud de token para instancias diferentes:

curl -k -d "grant_type=password&username=0883b97333046abb76367698b57d9e@sandbox.wire4.mx&password=9e0d81f95705079b9fe1e129315c25&scope=device_server1 codi_admin" -H "Authorization: Basic dmZSeURpTHdFbVZqd2VIclp0OWRMbXFmb3YwYTpJQJBuamBac3V6SllLWlJHUkJEYUZrN1BhRmNh" https://sandbox-api.wire4.mx/token

curl -k -d "grant_type=password&username=0883b97333046abb76367698b57d9e@sandbox.wire4.mx&password=9e0d81f95705079b9fe1e129315c25&scope=device_server2 codi_admin" -H "Authorization: Basic dmZSeURpTHdFbVZqd2VIclp0OWRMbXFmb3YwYTpJQJBuamBac3V6SllLWlJHUkJEYUZrN1BhRmNh" https://sandbox-api.wire4.mx/token

Caducidad del token

El token de acceso es válido durante 60 minutos (una hora), después de transcurrido este tiempo se debe solicitar un nuevo token, cuando el token caduca se obtendrá un error 401 Unauthorized con mensaje “Invalid Credentials”. El nuevo token se puede solicitar utilizando el último token de actualización (refresh_token) que se devolvió en la solicitud del token, esto sólo aplica para el token de tipo password (Autenticación de Usuario de Aplicación). El siguiente ejemplo muestra cómo obtener un toke con el token de actualización.

curl -k -d "grant_type=refresh_token&refresh_token=<refresh_token>" -u " Client_Id:Client_Secret" -H "Content-Type: application/x-www-form-urlencoded" https://sandbox-api.wire4.mx/oauth2/token

Ejemplo:

curl -k -d "grant_type=refresh_token&refresh_token=f932d5c6-0d39-3809-8275-11c7ax0aa020" -u "zgMlQbqmOr:plkMJoPXCI" -H "Content-Type: application/x-www-form-urlencoded" https://sandbox-api.wire4.mx/token

El token de actualización (refresh_token) tiene una duración de hasta 23 horas. Si en este periodo no se utiliza, se tienen que solicitar un nuevo token. Un token de acceso podría dejar de funcionar por uno de estos motivos:

  • El usuario ha revocado el acceso a su aplicación, si un usuario ha solicitado la baja de su aplicación de WIre4.
  • El token de acceso ha caducado: si el token de acceso ha pasado de una hora, recibirá un error 401 Unauthorized mientras realiza una llamada a la API de Wire4. Cuando esto sucede, debe solicitar un nuevo token utilizando el token de actualización que recibió por última al solicitar un token, sólo aplica si el token en cuestión es de autenticación de usuario de aplicación, en caso contrario solicitar un nuevo token.

Revocar token

Su aplicación puede revocar mediante programación el token de acceso, una vez revocado el token no podrá hacer uso de él para acceder a la API. El siguiente código muestra un ejemplo de cómo revocar el token:

curl -X POST --basic -u "<client id>:<client secret>" -H "Content-Type: application/x-www-form-urlencoded;charset=UTF-8" -k -d "token=<token to revoke>&token_type_hint=access_token" https://sandbox-api.wire4.mx/revoke

Ejemplo:

curl -X POST --basic -u "8e59YqaFW_Yo5dwWNxEY8Lid0u0a:AXahn79hfKWBXKzQfj011x8cvcQa" -H "Content-Type: application/x-www-form-urlencoded;charset=UTF-8" -k -d "token=eyJ4NXQiOiJZak5sWVdWa05tWmlNR1ZoTldSaU1EUXpaREJpWlRJNU1qYzFZV1ZoWWpneU5UYzJPV05sWVEiLCJraWQiOiJZak5sWVdWa05tWmlNR1ZoTldSaU1EUXpaREJpWlRJNU1qYzFZV1ZoWWpneU5UYzJPV05sWVEiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJpc21hZWwuZXNjYW1pbGxhQHRjcGlwLnRlY2hAc2FuZGJveC5zcGVpb2suY29tIiwiYXVkIjoiOGU1OVlxYUZXX1lvNWR3V054RVk4TGlkMHUwYSIsIm5iZiI6MTU3MTMyMDg3NywiYXpwIjoiOGU1OVlxYUZXX1lvNWR3V054RVk4TGlkMHUwYSIsInNjb3BlIjoiYW1fYXBwbGljYXRpb25fc2NvcGUgZ2VuZXJhbCIsImlzcyI6ImFwaW0taWRwIiwiZXhwIjoxNTcxMzI0NDc3LCJpYXQiOjE1NzEzMjA4NzcsImp0aSI6ImJkMTdjMjcyLTg4MGQtNDk0ZS1iMTMwLTBiYTkwMjYyN2M4NCJ9.AjngGylkd_Chs5zlIjyLRPu9xPGyz4dfCd_aax2_ts653xrnNMoLpVHUDmaxIDFF2XyBJKH2IAbKxjo6VsFM07QkoPhlysO1PLoAF-Vkt4xYkh-f7nJRl0oOe2utDWFlUdgiAOmx5tPcStrdCEftgNNrjwJ50LXysFjXVshpoST-zIJPLgXknM3esGrkAsLcZRM7XUB187jxLHbtefVYPMvSO31T9pd5_Co9UXdeHpuA98sk_wZknASM1phxXQZAMLRLHz3LYvjCWCr_v80oVCM9SWTzf0vrMI6xphoIfirfWloADKPTTSUpIGBw9ePF_WbEPvbMm_BZaApJcEH2w&token_type_hint=access_token"  https://sandbox-api.wire4.mx/revoke

Ambientes

Wire4 cuentas con dos ambientes Pruebas (Sandbox) y Producción, son dos ambientes separados los cuáles se pueden utilizar simultáneamente. Los usuarios que han sido creados en cada uno de los ambientes no son intercambiables.

Las ligas de acceso a la api para cada uno de los ambientes son:

Eventos

Los eventos son nuestra forma de informarle cuando algo sucede en su cuenta. Cuando ocurre un evento se crea un objeto Evento. Por ejemplo, cuando se recibe un depósito, se crea un evento TRANSACTION.INCOMING.UPDATED.

Los eventos ocurren cuando cambia el estado de un recurso. El recurso se encuentra dentro del objeto Evento en el campo data. Por ejemplo, un evento TRANSACTION.INCOMING.UPDATED contendrá un depósito y un evento ACCOUNT.CREATED contendrá una cuenta.

Wire4 puede agregar más campos en un futuro, o agregar nuevos valores a campos existentes, por lo que es recomendado que tu endpoint pueda manejar datos adicionales desconocidos. En esta liga se encuentra la definición del objeto Evento.

Tipos de Eventos

Wire4 cuenta con los siguientes tipos de eventos*

Evento Tipo Objeto
Suscripción ENROLLMENT.CREATED suscription
Cuenta de beneficiario ACCOUNT.CREATED beneficiary
Depósito recibido TRANSACTION.INCOMING.UPDATED spei_incoming
Solicitud de autorización de depósito TRANSACTION.INCOMING.AUTHORIZATION spei_incoming_authorization
Transferencia realizada TRANSACTION.OUTGOING.RECEIVED spei_outgoing
Transferencia SPID enviada TRANSACTION.OUTGOING.SPID.RECEIVED spid_outgoing
Transferencias Autorizadas REQUEST.OUTGOING.CHANGED request_outgoing
Operación CoDi CODI.ACTIONS codi_actions
Punto de venta CoDi SALE.POINT.CREATED codi_sales_point

Codigos de Error

Al registrar transferencias tanto SPEI como SPID se aplican las validaciones de formato de datos a la petición descritas en la definición de cada recurso. Si la petición contiene errores, se genera una respuesta de error 409 que contiene el listado de las validaciones que no fueran exitosas.

Por cada error detectado se genera un elemento "error" que contiene el order_id de la transacción que genero el error, el código de error y un mensaje con más información sobre el mismo.

Si una misma transacción contiene varios errores, la respuesta tendrá un elemento en la lista "errors" por cada validación que no fue exitosa.

Existen dos casos por los cuales alguno de los elementos en el listado de errores puede no contener order_id:

  • Si alguna transacción no provee esta información

  • En caso de transacciones SPEI, si el error está en las URLs ya que son datos relacionados a un lote de transacciones

  • Ejemplo:*

{ 
    "http_status": 409,
    "message": "La divisa es incorrecta para esta transacción se espera: MXP, y se recibió: MXPD., El identificador 18e9c4a3-8c7a-42e8-99f4-ebi7r5r6y034 esta duplicado.",
    "errors": [
        {
            "error": "La divisa es incorrecta para esta transacción se espera: MXP, y se recibió: MXPD.",
            "code": "TR-1010",
            "order_id": "18e9c4a3-8c7a-42e8-99f4-ebi7r5r6y034"
        },
        {
            "error": "El identificador 18e9c4a3-8c7a-42e8-99f4-ebi7r5r6y034 esta duplicado.",
            "code": "TR-1004",
            "order_id": "18e9c4a3-8c7a-42e8-99f4-ebi7r5r6y034"
        }
    ]
} 

Códigos de error para generación de transferencias SPEI/SPID

Código Descripción
A-1001 La URL para éxito es requerida
A-1002 La URL para retorno en caso de error es requerida
TR-1001 La petición debe incluir al menos una transacción
TR-1002 El identificador de la transacción es requerido
TR-1003 El identificador de la transacción no es valido
TR-1004 El identificador de la transacción esta duplicado
TR-1005 El monto de la transacción es requerido
TR-1006 El valor del monto no es valido
TR-1007 La cuenta de beneficiario es requerida
TR-1008 La cuenta de beneficiario no es valida
TR-1009 El código de moneda es requerido
TR-1010 El código de moneda no es valido
TR-1011 El listado de email supera 10 elementos
TR-1012 La referencia es requerida
TR-1013 La referencia no es valida
TR-1014 El concepto es requerido
TR-1015 El concepto no es valido
TR-1016 El identificador de clasificación SPID es requerido

Webhooks

En esta sección podrás realizar la administración de webhooks. Está la opción de dar de alta un webhook, ver los webhooks que se encuentran registrados en la aplicación o un webhook en específico con su identificador

Consulta la lista de Webhooks

Obtiene una lista de los webhooks registrados en la plataforma que tengan el estado (estatus) Activo (ACTIVE) e Inactivo (INACTIVE).

Authorizations:

Responses

Request samples

        // Create the api component
        final WebhooksApi api = new WebhooksApi();
        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, AMBIENT);

        final String bearer;

        try {
            // Obtain an access token use application flow and scope "general"
            bearer = oAuthWire4.obtainAccessTokenApp("general");

        } catch (ApiException e) {
            e.printStackTrace();
            return;
        }
        try {
            WebhooksList response = api.getWebhooks(bearer);
            System.out.println("Webhooks :: " + response);
        } catch (ApiException e) {
            e.printStackTrace();
            return;
        }

Response samples

Content type
application/json
{
  • "webhooks": [
    ]
}

Alta de Webhook

Registra un webhook en la plataforma para su uso como notificador de eventos, cuándo estos ocurran.

Authorizations:
Request Body schema: application/json

Información para registrar un Webhook

events
required
Array of strings

Son los eventos para que Wire4 te envíe información. Para más información sobre los tipos de eventos soportados, revise la siguiente liga: https://developers.wire4.mx/#section/Eventos.

name
required
string

Es el nombre del webhook.

url
required
string

Es la dirección URL para que Wire4 envíe las notificaciones cuando un evento ocurra.

Responses

Request samples

Content type
application/json
{
  • "events": [
    ],
  • "name": "string",
  • "url": "string"
}

Response samples

Content type
application/json
{
  • "events": [
    ],
  • "name": "string",
  • "secret": "string",
  • "status": "ACTIVE",
  • "url": "string",
  • "wh_uuid": "string"
}

Consulta de Webhook

Obtiene un webhook registrado en la plataforma mediante su identificador.

Authorizations:
path Parameters
webhook_id
required
string

Es el identificador del webhook. Ejemplo: wh_54a932866f784b439bc625c0f4e04e12

Responses

Request samples

        // Create the api component
        final WebhooksApi api = new WebhooksApi();
        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, AMBIENT);

        final String bearer;

        try {
            // Obtain an access token use application flow and scope "general"
            bearer = oAuthWire4.obtainAccessTokenApp("general");

        } catch (ApiException e) {
            e.printStackTrace();
            return;
        }
        try {
            WebhookResponse response = api.getWebhook(bearer,"wh_f16529713e6a4be88097740cc7db1f28");
            System.out.println("Webhook :: " + response);
        } catch (ApiException e) {
            e.printStackTrace();
            return;
        }

Response samples

Content type
application/json
{
  • "events": [
    ],
  • "name": "string",
  • "secret": "string",
  • "status": "ACTIVE",
  • "url": "string",
  • "wh_uuid": "string"
}

Límites de montos

WIRE4 ofrece la posibilidad de configurar límites para transaccionar vía SPEI en días inhábiles (fines de semana o días festivos).

Esta configuración se aplica sobre un contrato asociado a su suscripción y podría tener ninguno, uno o más contratos configurados.

Al consultar, registrar o actualizar las configuraciones verá que en el objeto de respuesta o el cuerpo de la petición, según sea el caso, deberán estar presentes unos códigos, mismos que se explican a continuación.

LIMIT_BY_SCHEDULE. Éste es el código para indicar el nombre del grupo para manejar el horario de operación de la api, por lo que puedes tener un horario de inicio y uno de fin de operaciones.

LIMIT_BY_TIME. Éste es el código para indicar el nombre del grupo para manejar límites en un horario inhábil, por ejemplo "Límite por horario". El desarrollador deberá manejar este código como clave de internacionalización y poder mostrar el nombre que considere pertinente en su implementación.

LIMIT_BY_RANGE. Éste es el código para indicar el nombre del grupo para manejar límites en un periodo inhabil, por ejemplo "Límite por periodo". El desarrollador deberá manejar este código como clave de internacionalización y poder mostrar el nombre que considere pertinente en su implementación.

Dentro del campo items del objeto JSON de respuesta en la consulta o envío a la actualización que a su vez es una lista con un objeto que cuenta con dos campos key y value respectivamente. En el campo key se deberán especificar los siguientes dos posibles valores:

BY_AMOUNT. Éste es el código para indicar el nombre del campo con el que idenfificará el límite por monto, por ejemplo "Monto". Ver el detalle en el objeto de respuesta de consulta.

BY_OPERATION. Éste es el código para indicar el nombre del campo con el que idenfificará el límite por operaciones, por ejemplo "Operaciones". Ver el detalle en el objeto de respuesta de consulta.

En el caso del grupo LIMIT_BY_SCHEDULE o el horario de operaciones, se deberán especificar los siguientes dos posibles valores:

START_OPERATIONS_TIME. Éste es el horario de inicio de operaciones, por ejemplo "6:00".

END_OPERATIONS_TIME. Éste es el horario de fin de operaciones, por ejemplo "22:00".

Consulta de configuraciones

Consulta las configuraciones para el contrato asocaido al enrolamiento en la aplicación.

Authorizations:
path Parameters
suscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Responses

Request samples

// Create the api component
        LmitesDeMontosApi apiInstance = new LmitesDeMontosApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;

        try {

            // Obtain an access token use password flow and scope "spei_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spei_admin");

        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;
        try {

            // Obtain the response

            MessageConfigurationsLimits response = apiInstance.obtainConfigurationsLimits(bearer, suscription);

            System.out.println("Response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
{
  • "configurations": [
    ]
}

Actualiza configuraciones por suscripción

Actualiza las configuraciones de un contrato asociado a una suscripción

Authorizations:
path Parameters
suscription
required
string

suscription

Request Body schema: application/json

updateConfigurationsResquestDTO

required
Array of objects (ConfigurationsLimits)

Listado de configuraciones para actualizar

Responses

Request samples

Content type
application/json
{
  • "configurations": [
    ]
}

Comprobante Electrónico de Pago (CEP)

En esta sección encontrarás acerca de las operaciones aplicables sobre los CEPs (Comprobante Electrónico de Pago).

Consulta de CEP

Consulta el CEP de un pago realizado a través del SPEI, si es que este se encuentra disponible en BANXICO.

Authorizations:
Request Body schema: application/json

Información para buscar un CEP

amount
required
number

Es el monto de la transferencia. Ejemplo 1000.00

beneficiary_account
required
string

Es la cuenta de beneficiario.

beneficiary_bank_key
string [ 1 .. 5 ] characters [0-9][0-9]*

Clave del banco beneficiario. Éste valor no esta presente si obtiene de la cuenta del beneficiario, en caso de que sea un número celular éste campo es requerido. se puede obtener del recurso de las instituciones.

clave_rastreo
required
string

Es la clave de rastreo de la transferencia.

operation_date
required
string

Es la fecha de operación de la transferencia, formato: dd-MM-yyyy.

reference
string [ 1 .. 7 ] characters [0-9][0-9]*

Es la referencia numérica de la transferencia. Se valida hasta 7 dígitos.

sender_account
string

Es la cuenta ordenante, es requerida cuando se no se envía la clave del banco ordenante.

sender_bank_key
string [ 1 .. 5 ] characters [0-9][0-9]*

Es la clave del banco ordenante, es requerida cuando no se envía la cuenta ordenante. Se puede obtener del recurso de las instituciones.

Responses

Request samples

Content type
application/json
{
  • "amount": 0,
  • "beneficiary_account": "string",
  • "beneficiary_bank_key": "strin",
  • "clave_rastreo": "string",
  • "operation_date": "string",
  • "reference": "string",
  • "sender_account": "string",
  • "sender_bank_key": "strin"
}

Response samples

Content type
application/json
{
  • "account_beneficiary": "string",
  • "account_sender": "string",
  • "amount": 0,
  • "available": true,
  • "beneficiary_bank_key": "string",
  • "beneficiary_name": "string",
  • "beneficiary_rfc": "string",
  • "cadena_original": "string",
  • "capture_date": "2019-08-24T14:15:22Z",
  • "certificate_serial_number": "string",
  • "clave_rastreo": "string",
  • "description": "string",
  • "iva": 0,
  • "operation_date": "2019-08-24T14:15:22Z",
  • "operation_date_cep": "2019-08-24T14:15:22Z",
  • "reference": "string",
  • "sender_bank_key": "string",
  • "sender_name": "string",
  • "sender_rfc": "string",
  • "signature": "string",
  • "url_zip": "string"
}

Contacto

En esta sección podrás encontrar Información de un posible cliente.

Solicitud de contacto

Notifica a un asesor Monex para que se ponga en contacto con un posible cliente.

Authorizations:
Request Body schema: application/json

Información del contacto

address
string

Es la dirección del contacto, por ejemplo: Calle fulanita No. 500 int 2, Col. Conocida.

company
string

Es el nombre de la empresa.

contact_person
string

Es el nombre completo de la persona quién será contactada.

email
required
string

Es el correo electrónico (email) de la persona. Se valida que tenga el formato de email, por ejemplo: correo@correo.com.

phone_number
required
string 10 characters [1-9][0-9]*

Es el número de teléfono de la persona. Se validan que sean 10 dígitos del número.

Responses

Request samples

Content type
application/json
{
  • "address": "string",
  • "company": "string",
  • "contact_person": "string",
  • "email": "string",
  • "phone_number": "stringstri"
}

Response samples

Content type
application/json
{
  • "http_status": 0,
  • "message": "string"
}

Cuentas de beneficiarios SPEI®

En esta sección se encuentran las opciones para administrar las cuentas de beneficiarios SPEI®, desde dar de alta una cuenta, así como actualizarla (actualización de montolímite de la cuenta), eliminar cuentas con o sin confirmar, además de consultar cuentas con diferentes parámetros.

Solicitud para agrupar cuentas de beneficiarios SPEI/SPID en estado pendiente.

Solicta la agrupación de las cuentas de beneficiarios en estado pendiente para que sean autorizadas, para ello se crea un conjunto de éstas que puede incluir tanto de SPEI como de SPID. Además se debe indicar las urls de redirección en caso de error y éxito

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Request Body schema: application/json

Información de la cuenta del beneficiario

cancel_return_url
required
string [ 10 .. 512 ] characters

Es la dirección URL a la que se redirigirá en caso de que el cliente cancele el registro. Se valida hasta 512 caracteres.

return_url
required
string [ 10 .. 512 ] characters

Es la dirección URL a la que se redirigirá en caso exitoso. Se valida hasta 512 caracteres.

Responses

Request samples

Content type
application/json
{
  • "cancel_return_url": "stringstri",
  • "return_url": "stringstri"
}

Response samples

Content type
application/json
{
  • "accounts": [
    ],
  • "request_id": "string",
  • "url": "string"
}

Consulta de relaciones

Obtiene las posibles relaciones existentes para registrar beneficiarios en Monex. Se debe invocar este recurso antes de pre-registrar una cuenta de beneficiario.

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Responses

Request samples


        // Create the api component
        final CuentasDeBeneficiariosSpeiApi api = new CuentasDeBeneficiariosSpeiApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;
        try {

            // Obtain an access token use password flow and scope "spei_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spei_admin");

        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;
        try {

            // Obtain the response
            final RelationshipsResponse response = api.getAvailableRelationshipsMonexUsingGET(bearer,subscription);

            System.out.println("Relationships response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
{
  • "relationships": [
    ]
}

Consulta los beneficiarios registrados

Obtiene los beneficiarios registrados al contrato relacionado con la suscripción, Los beneficiarios son los que actualmente se encuentran registrados en banca Monex.

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

query Parameters
account
string

Es la cuenta del beneficiario, podría ser teléfono celular (es de 10 dígitos), Tarjeta de débito (TDD, es de 16 dígitos) o cuenta CLABE (es de 18 dígitos).

Por ejemplo Teléfono celular: 5525072600, TDD: 4323 1234 5678 9123, CLABE: 032180000118359719.

beneficiary_bank
string

Es la clave del banco beneficiario. Se puede obtener del recurso de las instituciones.

beneficiary_name
string

Es el nombre del beneficiario.

end_date
string

Es la fecha de inicio del perido a filtrar en formato dd-mm-yyyy.

init_date
string

Es la fºecha de inicio del perido a filtrar en formato dd-mm-yyyy.

rfc
string

Es el Registro Federal de Controbuyentes (RFC) del beneficiario.

status
string

Es el estado (estatus) de la cuenta. Los valores pueden ser PENDING y REGISTERED.

Responses

Request samples


        // Create the api component
        final CuentasDeBeneficiariosSpeiApi api = new CuentasDeBeneficiariosSpeiApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;
        try {

            // Obtain an access token use password flow and scope "spei_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spei_admin");
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;
        final String rfc = null; //  null if you can't filter
        final String account = null;
        try {

            // Obtain the response
            final BeneficiariesResponse response = api.getBeneficiariesForAccountUsingGET(bearer,subscription, account, rfc);

            System.out.println("Relationships response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
{
  • "beneficiaries": [
    ]
}

Pre-registro de cuentas de beneficiarios SPEI®.

Pre-registra una o más cuentas de beneficiario en la plataforma de Wire4, ésta le proporcionará una URL donde lo llevará al centro de autorización para que el cuentahabiente Monex ingrese su llave digital para confirmar el alta de las cuentas de beneficiarios.
Los posibles valores de relationship y kind_of_relationship se deben obtener de /subscriptions/{subscription}/beneficiaries/relationships.

La confirmación de registro en Monex se realizará a través de una notificación a los webhooks registrados con el evento de tipo ACCOUNT.CREATED.

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Request Body schema: application/json

Información de la cuenta del beneficiario

Array of objects (Account)

Lista de cuentas de beneficiario que serán registradas.

cancel_return_url
required
string

Es la dirección URL a la que se redirigirá en caso de que el cliente cancele el registro.

return_url
required
string

Es la dirección URL a la que se redirigirá en caso exitoso.

Responses

Request samples

Content type
application/json
{
  • "accounts": [
    ],
  • "cancel_return_url": "string",
  • "return_url": "string"
}

Response samples

Content type
application/json
{
  • "request_id": "string",
  • "url": "string"
}

Eliminación de beneficiarios SPEI® sin confirmar

Elimina uno o más beneficiarios que se encuentran en estado pendiente de confirmar (autorizar) de la cuenta del cliente Monex relacionada a la suscripción.

Authorizations:
path Parameters
requestId
required
string[\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador con el que se dió de alta a los beneficiarios (viene en el cuerpo de la respuesta del pre-registro de beneficiarios), los registros bajo éste campo van a ser eliminados.

subscription
required
string[\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Responses

Request samples


        // Create the api component
        final CuentasDeBeneficiariosSpeiApi api = new CuentasDeBeneficiariosSpeiApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;
        try {

            // Obtain an access token use password flow and scope "spei_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spei_admin");
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;
        final String requestId = "3f2c81c4-37e1-4931-9340-98ce1e732672";
        try {

            // Obtain the response
            final ApiResponse response = api.removeBeneficiariesPendingUsingDELETEWithHttpInfo(bearer,requestId, subscription);

            System.out.println("Response:" + response.getStatusCode());
        } catch (ApiException e) {

            System.err.println("Exception:" + e.getCause());
            e.printStackTrace();
            // Optional manage exception in consume Wire4 API
            return;
        }

Response samples

Content type
application/json
{
  • "http_status": 0,
  • "message": "string"
}

Solicitud para actualizar el monto límite de una cuenta

Se crea una solicitud para actualizar el monto límite a la cuenta de beneficiario proporcionada y relacionada al contrato perteneciente a la subscripción. Una vez enviada la solicitud se retornará una URl que lo llevará al centro de autorización para que el cuentahabiente Monex ingrese su llave digital para confirmar la actualización del monto límite.

Authorizations:
path Parameters
account
required
string [ 10 .. 18 ] characters

Es la cuenta que va a ser actualizada.

subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Request Body schema: application/json

Información de la cuenta y el monto límite a actualizar.

amount_limit
required
number >= 0

Es el nuevo monto límite que reemplazará al actual, un monto de 0.0 implica que no hay límite.

cancel_return_url
required
string [ 10 .. 512 ] characters

Es la dirección URL a la que se redirigirá en caso de que el cliente cancele el registro. Se valida hasta 512 caracteres.

currency_code
required
string

Es el código de divisa de la cuenta. Es en el formato estándar de 3 dígitos, por ejemplo para el peso mexicano: MXP, para el dólar estadounidense: USD.

previous_amount_limit
required
number >= 0

Es el monto límite registrado actualmente, un monto de 0.0 implica que no hay límite.

return_url
required
string [ 10 .. 512 ] characters

Es la dirección URL a la que se redirigirá en caso de éxito. Se valida hasta 512 caracteres.

Responses

Request samples

Content type
application/json
{
  • "amount_limit": 0,
  • "cancel_return_url": "stringstri",
  • "currency_code": "string",
  • "previous_amount_limit": 0,
  • "return_url": "http://mysite.com/ok"
}

Response samples

Content type
application/json
{
  • "request_id": "string",
  • "url": "string"
}

Elimina la cuenta del beneficiario

Elimina la cuenta de beneficiario proporcionada relacionada al contrato perteneciente a la suscripción. La cuenta a borrar debe ser una que opere con SPEI.

Authorizations:
path Parameters
account
required
string [ 10 .. 18 ] characters

Es la cuenta del beneficiario que será eliminada.

subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Responses

Request samples


        // Create the api component
        final CuentasDeBeneficiariosSpeiApi api = new CuentasDeBeneficiariosSpeiApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;
        try {

            // Obtain an access token use password flow and scope "spei_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spei_admin");

        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;
        final String account = "044680035044988526";

        try {

            // Obtain the response
            final ApiResponse response = api.deleteAccountUsingDELETEWithHttpInfo(bearer,account, subscription);

            System.out.println("response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
{
  • "http_status": 0,
  • "message": "string"
}

Consulta los beneficiarios por el identificador de la petición de registro

Obtiene los beneficiarios enviados para registro en una petición al contrato relacionado con la suscripción, Los beneficiarios son los que actualmente se encuentran registrados en banca Monex, que pertenezcan a la petición que se solicita.

Authorizations:
path Parameters
requestId
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

El identificador de la petición del registro de beneficiarios a esta API.

subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Responses

Request samples

        // Create the api component
        final CuentasDeBeneficiariosSpeiApi api = new CuentasDeBeneficiariosSpeiApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;
        try {

            // Obtain an access token use password flow and scope "spei_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spei_admin");
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;
        final String requestId = REQUEST_ID;
        try {

            // Obtain the response
            final BeneficiariesResponse response = api.getBeneficiariesByRequestId(bearer, requestId, subscription);

            System.out.println("Relationships response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
{
  • "beneficiaries": [
    ]
}

Cuentas de beneficiarios SPID®

En esta sección se encuentran las opciones para administrar las cuentas de beneficiarios SPID®. Se puede dar de alta una cuenta y consultarlas con diferentes parámetros.

Consulta los beneficiarios SPID registrados

Obtiene los beneficiarios SPID registrados al contrato relacionado con la suscripción. Los beneficiarios son los que actualmente se encuentran registrados en banca Monex.

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

query Parameters
account
string

Cuenta del beneficiario, puede ser CLABE (18 dígitos), Tarjeta de débito (TDD, 16 dígitos) o número de celular (10 dígitos).

beneficiary_bank
string

Es la clave del banco beneficiario. Se puede obtener del catalogo de instituciones.

beneficiary_name
string

Es el nombre del beneficiario.

end_date
string

Es la fecha de inicio del periodo a filtrar en formato dd-mm-yyyy.

init_date
string

Es la fecha de inicio del periodo a filtrar en formato dd-mm-yyyy.

rfc
string

Es el Registro Federal de Contribuyentes (RFC) del beneficiario.

status
string

Es el estado (estatus) de la cuenta, Los valores pueden ser PENDING y REGISTERED.

Responses

Request samples

        // Create the api component
        final CuentasDeBeneficiariosSpidApi api = new CuentasDeBeneficiariosSpidApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;
        try {

            // Obtain an access token use password flow and scope "spid_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spid_admin");
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;
        final String rfc = null; //  null if you can't filter
        final String account = null;
        try {

            // Obtain the response
            final SpidBeneficiariesResponse response = api.getSpidBeneficiariesForAccount(bearer, subscription, account, rfc);

            System.out.println("Beneficiaries Spid response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in request to API
            return;
        }

Response samples

Content type
application/json
{
  • "beneficiaries": [
    ]
}

Pre-registro de cuentas de beneficiarios SPID®

Pre-registra una o más cuentas de beneficiario SPID® en la plataforma de Wire4, ésta le proporcionaará una URL donde lo llevará al centro de autorización para que el cuentahabiente Monex ingrese su llave digital para confirmar el alta de las cuentas de beneficiarios.
Los posibles valores de relationship y kind_of_relationship se deben obtener de /subscriptions/{subscription}/beneficiaries/relationships.

La confirmación de registro en Monex se realizará a través de una notificación a los webhooks registrados con el evento de tipo ACCOUNT.CREATED.

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Request Body schema: application/json

Información de la cuenta del beneficiario

amount_limit
required
number

Monto límite permitido para la cuenta. Ejemplo: 1000.00

bank_code_banxico
string 5 characters [0-9][0-9]*

Es el código banxico con una longitud de 5 dígitos, es requerido en caso de que la cuenta del beneficiario sea un número de celular.

beneficiary_account
required
string

Cuenta del beneficiario debe ser una cuenta CLABE. Ejemplo: 032180000118359719.

cancel_return_url
string [ 10 .. 512 ] characters

Es la dirección URL a la que se redirigirá en caso de que el cliente cancele el registro. Se valida hasta 512 caracteres.

email
Array of strings

Lista de correos electrónicos (emails), este dato es opcional.

required
object (BeneficiaryInstitution)

Objeto que contiene el nombre de la institución, este campo se debe llenar si el dueño de la cuenta es una persona moral

kind_of_relationship
required
string

Es el tipo de relación que se tiene con el propietario de la cuenta. Para registrar una cuenta, este valor se debe obtener del recurso relationships.

Nota: Si en la respuesta de Monex esta propiedad es nula, tampoco estará presente en esta respuesta.

numeric_reference
string [ 1 .. 7 ] characters [0-9][0-9]*

Es la referencia numérica.

payment_concept
string

Es el concepto de pago.

relationship
required
string

Es la relación con el propietario de la cuenta, para registrar este valor se debe obtener del recurso relationships.

Nota: Si en la respuesta de Monex, sta propiedad es nula, tampoco estará presente en esta respuesta.

return_url
string [ 10 .. 512 ] characters

Es la dirección URL a la que se redirigirá en caso exitoso. Se valida hasta 512 caracteres.

rfc
string

Es el Registro federal de contribuyentes (RFC) de la persona o institución propietaria de la cuenta.

Nota: Se valida el formato de RFC.

Responses

Request samples

Content type
application/json
{
  • "amount_limit": "10000\\.00",
  • "bank_code_banxico": "strin",
  • "beneficiary_account": "CLABE: 032180000118359719",
  • "cancel_return_url": "stringstri",
  • "email": [
    ],
  • "institution": {
    },
  • "kind_of_relationship": "string",
  • "numeric_reference": "string",
  • "payment_concept": "string",
  • "relationship": "string",
  • "return_url": "stringstri",
  • "rfc": "string"
}

Response samples

Content type
application/json
{
  • "request_id": "string",
  • "url": "string"
}

Depositantes

En esta sección se encuentran las opciones para administrar cuentas de depositantes. Se puede registrar una cuenta de Depositante, así como consultar el listado de cuentas que se tienen asociadas a la suscripción

Consulta de cuentas de depositantes

Obtiene una lista de depositantes asociados al contrato relacionado a la suscripción.

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Responses

Request samples


        // Create the api component
        final DepositantesApi api = new DepositantesApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;

        try {

            // Obtain an access token use password flow and scope "spei_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spei_admin");

        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;

        try {

            // Obtain the response
            final GetDepositants response = api.getDepositantsUsingGET(bearer,subscription);

            System.out.println("Response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
{
  • "depositants": [
    ]
}

Registra un nuevo depositante

Registra un nuevo depositante en el contrato asociado a la suscripción. Si intenta registrar un depositante que previamente se había registrado, se devolverá la cuenta clabe asociada al Álias que está intentando registrar. Queda bajo responsabilidad del cliente verificar que los álias sean únicos en sus sistemas.

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Request Body schema: application/json

Depositant info

alias
required
string [ 1 .. 80 ] characters

Es el alias del depositante. Se valida hasta 80 caracteres.

currency_code
required
string [ 3 .. 5 ] characters

Es el código de divisa en que operará el depositante. Es en el formato estándar de 3 dígitos. Sólo se permiten los valores MXP y USD.

email
Array of strings

Es la lista de correos electrónicos (emails) del depositante.

Ejemplo: mi_correo@correo.com,mi_correo@correo.com...

name
required
string [ 1 .. 120 ] characters

Es el nombre del depositante. Se valida hasta 120 caracteres.

Responses

Request samples

Content type
application/json
{
  • "alias": "Mi primer depositante",
  • "currency_code": "MXP",
  • "email": [
    ],
  • "name": "Spei Ok"
}

Response samples

Content type
application/json
{
  • "clabe": "string"
}

Número de depositantes por suscripción

Obtiene la cantidad el total de depositantes asociados al contrato relacionado a la suscripción.

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Responses

Request samples


        // Create the api component
        final DepositantesApi api = new DepositantesApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;

        try {

            // Obtain an access token use password flow and scope "spei_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spei_admin");

        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;

        try {

            // Obtain the response
            final DepositantCountResponse response = api.getDepositantsTotalsUsingGET(bearer,subscription);

            System.out.println("Response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
{
  • "total": 0
}

Instituciones

En estaa sección encontrarás el recurso para obtener información de las instituciones bancarias (bancos)

Consulta de instituciones bancarias

Se obtiene un listado de las instituciones bancarias y la información de cada una de estas.

Authorizations:

Responses

Request samples


        // Create the api component
        final InstitucionesApi api = new InstitucionesApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;
        try {

            // Obtain an access token use application flow and scope "general"
            bearer = oAuthWire4.obtainAccessTokenApp("general");

        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        try {

            // Obtain the response
            final InstitutionsList response = api.getAllInstitutionsUsingGET(bearer);

            System.out.println("Response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
{
  • "institutions": [
    ]
}

Saldo

En esta sección se puede obtener el saldo de un contrato que se encuentra relacionado una suscripción.

Consulta los saldo de una cuenta

Obtiene el saldo de un contrato, según las divisas que se manejen en dicho contrato, ya sea peso mexicano (MXP) o dólar estadounidense (USD).

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Responses

Request samples


        // Create the api component
        final SaldoApi api = new SaldoApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;
        try {

            // Obtain an access token use password flow and scope "spei_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spei_admin");

        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;
        try {

            // Obtain the response
            final BalanceListResponse response = api.getBalanceUsingGET(bearer,subscription);

            System.out.println("Response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
{
  • "balances": [
    ]
}

Suscripciones

En esta sección encontrarás recursos para la Administración de suscripciones. Está el pre-registro de una suscripción y la eliminación de suscripciones que se encuentran en estado pendiente de autorizar y la eliminación de suscripciones por medio del identificador de ésta.

Pre-registro de una suscripción

Pre-registra una suscripción para operar un contrato a través de un aplicación socio de la plataforma. Se retorna una dirección URL hacia el centro de autorización donde el cliente Monex debe autorizar el acceso a los datos de su cuenta a el socio.

Una vez que el cuentahabiente autorice el acceso, se envía una notificación (webhook configurado) con el evento 'ENROLLMENT.CREATED', el cuál contiene los datos de acceso a esta API.

Authorizations:
Request Body schema: application/json

Información para la pre-suscripción

cancel_return_url
required
string [ 1 .. 512 ] characters (http://|https://).*$

Es la dirección URL a la que se redirigirá en caso de que el cliente cancele el registro. Se valida una longitud de 512 caracteres y que la URL sea por ejemplo: http://mysite.com/return.

return_url
required
string [ 1 .. 512 ] characters (http://|https://).*$

Es la dirección URL a la que se redirigirá en caso de exito. Se valida una longitud de 512 caracteres y que la URL sea por ejemplo: http://mysite.com/cancel.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "subscription_id": "string",
  • "url": "string"
}

Elimina pre-registro de suscripción

Se elimina el pre-registro de suscripción. Sólo se elimina en caso de que el cliente Monex no haya concedido su autorización de acceso (token), es decir que la suscripcion esté pendiente.

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Responses

Request samples


        // Create the api component
        final SuscripcionesApi api = new SuscripcionesApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;

        try {

            // Obtain an access token use application flow and scope "general"
            bearer = oAuthWire4.obtainAccessTokenApp("general");

        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = "2e11655e-392d-48ff-a35f-22a270bbfe7f";

        try {

            // Obtain the response
            final ApiResponse<Void> response = api.removeSubscriptionPendingStatusUsingDELETEWithHttpInfo(bearer,subscription);

            System.out.println("Delete Pre-Subscription result:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Elimina suscripción por su identificador.

Elimina una suscripción mediante su identificador. Una vez eliminada dicha suscripción, ya no se podrán realizar operaciones en el API utilizando sus credenciales

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

El identificador de la suscripción a ésta API

Responses

Request samples


        // Create the api component
        final SuscripcionesApi api = new SuscripcionesApi();

        // Create the authenticator to obtain access token
        // The token URL and Service URL are defined for this environment enum value.
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;

        try {

            // Obtain an access token use password flow and scope "spei_admin"
            // The user_key and user_secret belongs to the subscription to delete
            bearer = oAuthWire4.obtainAccessTokenAppUser(
                "86b348442874908861098f03ed9ffa@sandbox.wire4.mx", "9ee9ae9a86446c289656ff40934370",
                    "spei_admin");

        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = "81b282bb-9056-4412-82de-ab066eae08a4";

        try {

            // Obtain the response
            final ApiResponse<Void> response = api.removeEnrollmentUserUsingDELETEWithHttpInfo(bearer,subscription);

            System.out.println("Delete Pre-Subscription result:" + response.getStatusCode());
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Cambia el uso de la suscripción

Se asigna o cambia el uso y el estatus que se le dará a la subscripción para los servicios SPEI y SPID en el manejo de Cobros y Pagos El status puede tener los posibles valores: ACTIVE o INACTIVE. El uso puede tener los posibles valores: WITHDRAWAL_DEPOSIT o WITHDRAWAL o DEPOSIT

Authorizations:
path Parameters
subscription
required
string

subscription

Request Body schema: application/json

request

object (UseServiceBanking)

Uso y estado de la subscripción

object (UseServiceBanking)

Uso y estado de la subscripción

Responses

Request samples

Content type
application/json
{
  • "spei": {
    },
  • "spid": {
    }
}

Cambia el estatus de la suscripción

Se cambia el estado o estatus de la suscripción a los posibles valores que son: ACTIVE o INACTIVE

Authorizations:
path Parameters
subscription
required
string

subscription

Request Body schema: application/json

request

status
required
string
Enum: "ACTIVE" "INACTIVE"

Responses

Request samples

Content type
application/json
{
  • "status": "ACTIVE"
}

Transferencias SPEI®

En esta sección se encuentran las opciones para administrar transacciones a través de SPEI®, desde el alta de una transacción, la eliminación de de transferencias pendientes y las consultas mediante parámetros.

Agrupa transacciones bajo un request_id

Agrupa transacciones SPEI/SPID en un mismo transaction_id, posteriormente genera la dirección URL del centro de autorización para la confirmación de las transacciones.

Las transacciones deben estar en estatus PENDING y pertenecer a un mismo contrato.

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el Identificador de la suscripción.

Request Body schema: application/json

Objeto con la información para agrupar transacciones existentes y autorizarlas de forma conjunta.

required
object (UrlsRedirect)

Recibe las direcciones URL para redirigir en caso de éxito o de error.

transactions
required
Array of strings

Listado de order_id de las transacciones a agrupar.

Responses

Request samples

Content type
application/json
{
  • "redirect_urls": {
    },
  • "transactions": [
    ]
}

Consulta de transferencias recibidas

Realiza una consulta de las transferencias recibidas (depósitos) en la cuenta del cliente Monex relacionada a la suscripción, las transferencias que regresa este recuso son únicamente las transferencias recibidas durante el día en el que se realiza la consulta. Para consultar transacciones que se encuentran en otras fechas se debe utilizar los parámetros de fecha inicial (beginDate) y fecha final (endDate), siempre deben de ir las dos ya que en caso de que falte una marcará error la consulta, si faltan las dos la consulta lanzará solo las del día, como se describe al inicio. El formato para las fechas es "yyyy-MM-dd"

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

query Parameters
beginDate
string 10 characters ([12]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[0...

Fecha inicial para filtrar los depósitos, se espera en formato 'yyyy-MM-dd'

endDate
string 10 characters ([12]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[0...

Fecha final para filtrar los depósitos, se espera en formato 'yyyy-MM-dd'

Responses

Request samples


        // Create the api component
        final TransferenciasSpeiApi api = new TransferenciasSpeiApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, AMBIENT);

        final String bearer;
        try {

            // Obtain an access token use password flow and scope "spei_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spei_admin");
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;
        /*
         * Filtering by date is optional, but both parameters must be present when use filter by date:
         * begin date, end date,
         * Formato 'yyyy-MM-dd'
         */
        final String beginDate = null;
        final String endDate = null;
        try {

            // Obtain the response
            final List<Deposit> response = api.incomingSpeiTransactionsReportUsingGET(bearer, subscription, beginDate,
                    endDate);

            System.out.println("Response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
[
  • {
    }
]

Consulta de transferencias realizadas

Consulta las transferencias realizadas en la cuenta del cliente Monex relacionada a la suscripción, las transferencias que regresa este recuso son únicamente las transferencias recibidas en el día en el que se realiza la consulta.
Se pueden realizar consultas por order_id al realizar este tipo de consultas no importa el día en el que se realizó la transferencia

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

query Parameters
order_id
string

Es el identificador de la orden a buscar.

Responses

Request samples


        // Create the api component
        final TransferenciasSpeiApi api = new TransferenciasSpeiApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        // Configure OAuth2 access token for authorization: oauth2
        final OAuth oauth2 = (OAuth) api.getApiClient().getAuthentication("wire4_aut_app_user_spei");
        final String bearer;
        try {

            // Obtain an access token use password flow and scope "spei_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spei_admin");

        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;
        final String orderId = null; // null for no filter
        try {

            // Obtain the response
            final List<Payment> response = api.outgoingSpeiTransactionsReportUsingGET(bearer,subscription, orderId);

            System.out.println("Response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
[
  • {
    }
]

Registro de transferencias

Se registra un conjunto de transferencias (una o más) a realizar en la cuenta del cliente Monex relacionada a la suscripción. En la respuesta se proporcionará una dirección URL que lo llevará al centro de autorización para que las transferencias sean confirmadas (autorizadas) por el cliente para que se efectúen, para ello debe ingresar la llave electrónica (Token).
Nota: Debe considerar que el concepto de cada una de las transacciones solo debe contener caracteres alfanuméricos por lo que en caso de que se reciban caracteres como ñ o acentos serán sustituidos por n o en su caso por la letra sin acento. Los caracteres no alfanuméricos como pueden ser caracteres especiales serán eliminados.

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Request Body schema: application/json

Información de las transferencias SPEI de salida

cancel_return_url
required
string

Es la dirección URL a la que se redirigirá en caso de que el usuario cancele.

return_url
required
string

Es la dirección URL a la que se redirigirá en caso de éxito.

required
Array of objects (TransactionOutgoing)

Lista de transferencias de salida que se enviarán a Monex.

Responses

Request samples

Content type
application/json
{
  • "cancel_return_url": "string",
  • "return_url": "string",
  • "transactions": [
    ]
}

Response samples

Content type
application/json
{
  • "request_id": "string",
  • "url": "string"
}

Eliminación de transferencias SPEI® pendientes

Elimina un conjunto de transferencias en estado pendiente de confirmar o autorizar, en la cuenta del cliente Monex relacionada a la suscripción.

Nota: Las transferencias no deben haber sido confirmadas o autorizadas por el cliente.

Authorizations:
path Parameters
requestId
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Identificador de las transferencias a eliminar.

subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

query Parameters
order_id
string

Listado de identificadores dentro del request_id para eliminar.

Responses

Request samples


        // Create the api component
        final TransferenciasSpeiApi api = new TransferenciasSpeiApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;

        try {

            // Obtain an access token use password flow and scope "spei_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spei_admin");

        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;
        final String requestId = "fcb62831-cc04-4b3b-93d4-39e698a3bad6";
        try {

            // Obtain the response
            final ApiResponse response = api.dropTransactionsPendingUsingDELETEWithHttpInfo(bearer,requestId, subscription);

            System.out.println("Response:" + response.getStatusCode());
        } catch (ApiException e) {

            System.err.println("Exception:" + e.getCause());
            e.printStackTrace();
            // Optional manage exception in consume Wire4 API
            return;
        }

Response samples

Content type
application/json
{
  • "http_status": 0,
  • "message": "string"
}

Consulta de transferencias de salida por identificador de petición

Consulta las transferencias de salida registradas en una petición, las transferencias que regresa este recuso son únicamente las transferencias de salida agrupadas al identificador de la petición que se generó al hacer el registro de las transacciones el cuál se debe especificar como parte del path de este endpoint.

Authorizations:
path Parameters
requestId
required
string

Identificador de la petición a buscar.

subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Responses

Request samples


        // Create the api component
        final TransferenciasSpeiApi api = new TransferenciasSpeiApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;

        try {

            // Obtain an access token use password flow and scope "spei_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spei_admin");

        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;
        final String orderId = "5fec50a8-d987-4e11-b23e-606ca296712b"; // null for no filter
        try {

            // Obtain the response

            final PaymentsRequestId paymentsRequestId = api.outCommingSpeiRequestIdTransactionsReportUsingGET(bearer,subscription, orderId);

            System.out.println("Response:" + paymentsRequestId);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }
    }

Response samples

Content type
application/json
{
  • "authorization_date": "2019-08-24T14:15:22Z",
  • "request_date": "2019-08-24T14:15:22Z",
  • "request_id": "string",
  • "total_amount": 0,
  • "total_transactions": 0,
  • "transactions": [
    ]
}

Transferencias SPID®

En esta sección se encuentran las opciones para administrar transacciones a través de SPID®. Se puede realizar el registro de la transacción y la consulta de éstas.

Consulta de clasificaciones para operaciones SPID®

Obtiene las clasificaciones para operaciones con dólares (SPID®) de Monex.

Este recurso se debe invocar previo al realizar una operación SPID.

Authorizations:
path Parameters
subscription
required
string 36 characters

Es el identificador de la suscripción a esta API.

Responses

Request samples


        // Create the api component
        final TransferenciasSpidApi api = new TransferenciasSpidApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;

        try {

            // Obtain an access token use password flow and scope "spid_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(USER_KEY, SECRET_KEY, "spid_admin");

        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String subscription = SUBSCRIPTION;
        try {

            // Obtain the response
            final SpidClassificationsResponseDTO response = api.getSpidClassificationsUsingGET(bearer,subscription);

            System.out.println("Response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
{
  • "classifications": [
    ]
}

Registro de transferencias SPID®

Registra un conjunto de transferencias a realizar en la cuenta del cliente Monex relacionada a la suscripción. En la respuesta se proporcionará una dirección URL que lo llevará al centro de autorización para que las transferencias sean confirmadas (autorizadas) por el cliente para que se efectúen, para ello debe ingresar la llave electrónica (Token).
Nota: Debe considerar que el concepto de cada una de las transacciones solo debe contener caracteres alfanuméricos por lo que en caso de que se reciban caracteres como ñ o acentos serán sustituidos por n o en su caso por la letra sin acento. Los caracteres no alfanuméricos como pueden ser caracteres especiales serán eliminados.

Authorizations:
path Parameters
subscription
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Es el identificador de la suscripción a esta API.

Request Body schema: application/json

Información de las transferencias SPID de salida

amount
required
number >= 0.01

Es el monto de la transferencia. Se valida que sean máximo 20 dígitos y 2 decimales. Ejemplo 1000.00

beneficiary_account
required
string

Cuenta del beneficiario, podría ser un número celular (10dígitos), tarjeta de débito (TDD) o Cuenta CLABE interbancaria (18 dígitos).

cancel_return_url
required
string

Es la dirección URL a la que se redirigirá en caso de que el usario cancele el registro.

classification_id
required
string

Es el identificador de la clasificación de la transferencia SPID.

currency_code
required
string

Código de moneda en la que opera la cuenta.

email
Array of strings

Lista de correo electrónico (email) del beneficiario. Este campo es opcional.

numeric_reference_spid
required
integer [ 0 .. 9999999 ]

Es la referencia numérica de la transferencia.

order_id
required
string [ 1 .. 36 ] characters

Es la referencia de la transferencia asignada por el cliente. Ejemplo: dae9c6ae-8c7a-42e8-99f4-ebe90566efae

payment_concept_spid
required
string [ 1 .. 250 ] characters

Es el concepto de la transferencia.

return_url
required
string

Es la dirección URL a la que se redirigirá en caso de éxito.

Responses

Request samples

Content type
application/json
{
  • "amount": "10000\\.00",
  • "beneficiary_account": "cellphone: 5525072600, TDD: 4323 1234 5678 9123, clabe: 032180000118359719",
  • "cancel_return_url": "string",
  • "classification_id": "string",
  • "currency_code": "string",
  • "email": [
    ],
  • "numeric_reference_spid": 0,
  • "order_id": "dae9c6ae-8c7a-42e8-99f4-ebe90566efae",
  • "payment_concept_spid": "string",
  • "return_url": "string"
}

Response samples

Content type
application/json
{
  • "request_id": "string",
  • "url": "string"
}

Empresas CoDi®

En esta sección puedes encontrar recursos para la administración de empresas para el uso de CODI®

Consulta de empresas CODI®

Consulta de empresas CODI® registradas para la aplicación.

Authorizations:

Responses

Request samples

        // Create the api component
        final EmpresasCoDiApi apiInstance = new EmpresasCoDiApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;
        try {

            // Obtain an access token use password flow and scope "codi_general"
            bearer = oAuthWire4.obtainAccessTokenApp("codi_general");
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        try {

            // Obtain the response
            final List<CompanyRegistered> response = apiInstance.obtainCompanies(bearer);
            System.out.println("response: " + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
[
  • {
    }
]

Registro de empresas CODI®

Registra una empresa para hacer uso de operaciones CODI®.

Nota: Es requerido tener el certificado emitido por BANXICO® asi como el Nombre de la empresa, Nombre comercial y el Registro Federal de Contribuyentes (RFC) de la empresa.

Authorizations:
Request Body schema: application/json

Información de la cuenta del beneficiario

business_name
string

Es el nombre de la empresa que se va a registrar.

object (CertificateRequest)

Certificado de la empresa que se está registrando.

comercial_name
string

Es el nombre comercial de la empresa que se va a registrar.

rfc
string

Es el Registro Federal de Contribuyentes (RFC) de la empresa que se va a registrar.

Responses

Request samples

Content type
application/json
{
  • "business_name": "string",
  • "certificate": {
    },
  • "comercial_name": "string",
  • "rfc": "string"
}

Response samples

Content type
application/json
{
  • "business_name": "string",
  • "certificate": "string",
  • "comercial_name": "string",
  • "company_id": "string",
  • "rfc": "string",
  • "status": "string"
}

Puntos de venta CoDi®

En esta sección puedes encontrar recursos para la administración de puntos de venta por empresa para el uso de CODI®

Consulta de puntos de venta

Obtiene los puntos de venta asociados a una empresa en las cuales se hacen operaciones CODI®.

Authorizations:
query Parameters
companyId
required
string

Es el identificador de la empresa. Ejemplo: 8838d513-5916-4662-bb30-2448f0f543ed

Responses

Request samples

        // Create the api component
        final PuntosDeVentaCoDiApi api = new PuntosDeVentaCoDiApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;
        try {

            // Obtain an access token use password flow and scope "codi_general"
            bearer = oAuthWire4.obtainAccessTokenApp("codi_general");
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String companyId = COMPANY_ID;
        try {

            // Obtain the response
            final List<SalesPointFound> response = api.obtainSalePoints(bearer, companyId);

            System.out.println("response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
[
  • {
    }
]

Registro de punto de venta.

Se registra un punto de venta (TPV) desde donde se emitarán los cobros CODI®. El punto de venta se debe asociar a un cuenta CLABE registrada previamente ante Banxico para realizar cobros con CODI®.

Authorizations:
query Parameters
companyId
required
string

Es el identificador de la empresa.

Request Body schema: application/json

Es el objeto que contiene información del punto de venta CODI®.

access_ip
required
string^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[...

Es la dirección IP desde donde se recibirán las peticiones de este punto de venta

account
required
string

Es el número de cuenta CLABE donde se realizará el deposito del cobro CODI®.

name
required
string

Es el nombre del punto de venta.

notifications_url
required
string

Es la dirección URL para envíar notificaciones CODI® al punto de venta.

Responses

Request samples

Content type
application/json
{
  • "access_ip": "string",
  • "account": "string",
  • "name": "string",
  • "notifications_url": "string"
}

Response samples

Content type
application/json
{
  • "sales_point_id": "string",
  • "user_key": "string",
  • "user_secret": "string",
  • "webhook": {
    }
}

Peticiones de pago por CoDi®

En esta sección puedes encontrar recursos para administrar peticiones o solicitudes de pago por medio de CODI®.

Consulta información de petición por orderId

Obtiene la información de una petición de pago CODI® por orderId para un punto de venta.

Authorizations:
query Parameters
orderId
required
string

Identificador del pago CODI®

salesPointId
required
string 36 characters

Identificador del punto de venta

Responses

Request samples

        // Create the api component
        final PeticionesDePagoPorCoDiApi api = new PeticionesDePagoPorCoDiApi();

        // Create the authenticator to obtain access token
        final OAuthWire4 oAuthWire4 = new OAuthWire4(CLIENT_ID, CLIENT_SECRET, SANDBOX);

        final String bearer;
        try {

            // Obtain an access token use password flow and scope "codi_admin"
            bearer = oAuthWire4.obtainAccessTokenAppUser(COMPANY_KEY, COMPANY_SECRET,"codi_admin");
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

        // Build body with info (check references for more info, types, required fields)
        final String salesPointId = SALES_POINT_ID; // Sales point identifier
        final String orderId = ORDER_ID; // Order identifier
        try {

            // Obtain the response
            final PaymentRequestCodiResponseDTO response = api.consultCodiRequestByOrderId(bearer, orderId, salesPointId);

            System.out.println("response:" + response);
        } catch (ApiException e) {

            e.printStackTrace();
            // Optional manage exception in access token flow
            return;
        }

Response samples

Content type
application/json
{
  • "amount": 0,
  • "barcode_base64": "string",
  • "barcode_url": "string",
  • "concept": "string",
  • "creation_date": "2019-08-24T14:15:22Z",
  • "due_date": "2019-08-24T14:15:22Z",
  • "operations": [
    ],
  • "order_id": "string",
  • "phone_number": "string",
  • "status": "string",
  • "type": "string"
}

Genera código QR

Genera un código QR solicitado por un punto de venta para un pago mediante CODI®

Authorizations:
query Parameters
salesPointId
required
string 36 characters [\p{XDigit}]{8}-[\p{XDigit}]{4}-[34][\p{XDigi...

Identificador del punto de venta

Request Body schema: application/json

Información del pago CODI®

amount
number [ 0.01 .. 8000 ]

Monto del pago CODI®

concept
required
string [ 0 .. 200 ] characters

Descripción del pago CODI®

due_date
required
string <date-time>

Fecha de operación pago CODI®, formato: yyyy-MM-dd'T'HH:mm:ss

metadata
string

Campo de metada CODI®, longitud máxima determinada por configuracion de la empresa, por defecto 100 caracteres

order_id
required
string [ 5 .. 36 ] characters

Referencia de la transferencia asignada por el cliente

phone_number
string 10 characters

Número de teléfono móvil en caso de ser un pago CODI® usando 'PUSH_NOTIFICATION' estecampo sería obligatorio

type
required
string
Enum: "PUSH_NOTIFICATION" "QR_CODE"

El tipo de código QR para pago con CODI®

Responses

Request samples

Content type
application/json
{
  • "amount": "10050\\.21",
  • "concept": "Pago consumo 1024",
  • "due_date": "2020-05-20T13:45:00",
  • "metadata": "string",
  • "order_id": "dae9c6ae-8c7a-42e8-99f4-ebe90566efae",
  • "phone_number": 4421012596,
  • "type": "PUSH_NOTIFICATION"
}

Response samples

Content type
application/json
{
  • "amount": 0,
  • "barcode_base64": "string",
  • "barcode_url": "string",
  • "concept": "string",
  • "creation_date": "2019-08-24T14:15:22Z",
  • "due_date": "2019-08-24T14:15:22Z",
  • "order_id": "string",
  • "phone_number": "string",
  • "status": "RECEIVED",
  • "type": "PUSH_NOTIFICATION"
}

Operaciones CoDi®

En esta sección puedes encontrar recursos para realizar acciones sobre las operaciones hechas por medio de pago CODI®.

Consulta de operaciones

Obtiene las operaciones generadas a partir de peticiones de pago CODI® de forma paginada, pudiendo aplicar filtros.

Authorizations:
query Parameters
company_id
string

Es el identificador de empresa CODI®.

page
string
Default: "0"

Es el número de pago.

sales_point_id
string

Es el identificador del punto de venta.

size
string
Default: "20"

Es el tamaño de página.

Request Body schema: application/json

Filtros de busqueda

amount_from
number [ 0.01 .. 9999999.99 ]

Es el monto minimo. Se permiten dos decimales. Ejemplo 1000.00

amount_to
number [ 0.01 .. 9999999.99 ]

Es el monto máximo. Se permiten dos decimales. Ejemplo 1000.00

operation_date_from
string <date>

Es el filtro de fecha de operación "desde".

operation_date_to
string <date>

Es el filtro de fecha de operación "hasta".

order_id
string

Es el order id de la petición.

request_date_from
string <date>

Es el filtro de fecha de petición "desde".

request_date_to
string <date>

Es el filtro de fecha de petición "hasta".

status
string
Enum: "RECEIVED" "COMPLETED" "CANCELLED"

Es el estado (estatus) de la petición.

Responses

Request samples

Content type
application/json
{
  • "amount_from": 0.01,
  • "amount_to": 0.01,
  • "operation_date_from": "2019-08-24",
  • "operation_date_to": "2019-08-24",
  • "order_id": "string",
  • "request_date_from": "2019-08-24",
  • "request_date_to": "2019-08-24",
  • "status": "RECEIVED"
}

Response samples

Content type
application/json
{
  • "content": [
    ],
  • "number_of_elements": 0,
  • "page": 0,
  • "size": 0,
  • "total_items": 0,
  • "total_pages": 0
}

Evento

api_version
string

Es la versión de esta API.

created
string <date-time>

Fecha de creación del mensaje.

data
object

Es el objeto que contiene la información del evento.

id
string

Es el identificador del mensaje.

livemode
boolean

Indica si proviene de un entorno productivo.

object
string

Tipo de objeto que contiene el mensaje en el atributo 'data'. Los posibles valores son:

  • subscription
  • ,
  • beneficiary
  • ,
  • spei_outgoing
  • ,
  • spei_incoming
  • ,
  • spid_outgoing
  • ,
  • request_outgoing
pending_webhooks
integer

Es el número de mensajes pendientes de enviar.

request
string

Es el identificador del recurso relacionado.

type
string

El tipo evento que se está enviando en la notificación.

{
  • "api_version": "string",
  • "created": "2019-08-24T14:15:22Z",
  • "data": { },
  • "id": "string",
  • "livemode": true,
  • "object": "string",
  • "pending_webhooks": 0,
  • "request": "string",
  • "type": "string"
}

Cuenta beneficiario

account
string

Es la cuenta del beneficiario registrado.

error_message
string

Es el mensaje de error que se informa en caso de existir uno.

request_id
string

Es el identificador en esta API de la petición de registro de la cuenta del beneficiario.

{
  • "account": "string",
  • "error_message": "string",
  • "request_id": "string"
}

Depósito recibido

amount
number

Es el monto de la transferencia.

beneficiary_account
string

Es la cuenta del beneficiario.

beneficiary_name
string

Es el nombre del beneficiario.

beneficiary_rfc
string

Es el Registro Federal de Contribuyentes (RFC) del beneficiario.

object (MessageCEP)

Es el objeto del Comprobante Electrónico de Pago (CEP) de la transferencia, que es emitido por Banxico. Se muestra sólo cuando esté disponible, en otro caso se podrá usar la Consulta de CEP que ésta misma API ofrece.

clave_rastreo
string

Es la clave de rastreo de la transferencia.

confirm_date
string <date-time>

Es la Fecha de confirmación de la transferencia.

currency_code
string

Es el código de divisa de la transferencia. Es en el formato estándar ISO 4217 y es de 3 dígitos. Puede ser "MXN" o "USD".

deposit_date
string <date-time>

Es la fecha de recepción de la transferencia.

depositant
string

Es el nombre del depositante en caso de que la transferencia se reciba en una cuenta de depositante.

depositant_alias
string

Es el alias de la cuenta CLABE del depositante en caso que la transferencia se reciba de una cuenta de depositante

depositant_clabe
string

Es la cuenta CLABE del depositante en caso que la transferencia se reciba en una cuenta de depositante

depositant_email
string

Es el Correo electrónico (email) del depositante en caso que la transferencia se reciba en una cuenta de depositante

depositant_rfc
string

Es el Registro Federal de Contribuyentes (RFC) del depositante, en caso que la transferencia se reciba en una cuenta de depositante.

description
string

Es el concepto de la transferencia.

monex_description
string

Es la descripción de Monex para la transferencia.

monex_transaction_id
string

Es el identificador asignado por Monex a la transferencia.

reference
string

Es la referecia de la transferencia.

sender_account
string

Es la cuenta del ordenante que podría ser un número celular (10 dígitos), una tarjeta de débito (TDD, de 16 dígitos) o Cuenta CLABE interbancaria (18 dígitos).

object (MessageInstitution)

Objeto que contiene la información del banco.

sender_name
string

Es el nombre del ordenante.

sender_rfc
string

Es el Registro Federal de Contribuyente (RFC) del ordenante.

{
  • "amount": 0,
  • "beneficiary_account": "string",
  • "beneficiary_name": "string",
  • "beneficiary_rfc": "string",
  • "cep": {
    },
  • "clave_rastreo": "string",
  • "confirm_date": "2019-08-24T14:15:22Z",
  • "currency_code": "string",
  • "deposit_date": "2019-08-24T14:15:22Z",
  • "depositant": "string",
  • "depositant_alias": "string",
  • "depositant_clabe": "string",
  • "depositant_email": "string",
  • "depositant_rfc": "string",
  • "description": "string",
  • "monex_description": "string",
  • "monex_transaction_id": "string",
  • "reference": "string",
  • "sender_account": "string",
  • "sender_bank": {
    },
  • "sender_name": "string",
  • "sender_rfc": "string"
}

Solicitud de autorización de depósito

amount
number

Es el monto de la transferencia.

beneficiary_account
string

Es la cuenta del beneficiario.

beneficiary_name
string

Es el nombre del beneficiario.

beneficiary_rfc
string

Es el Registro Federal de Contribuyentes (RFC) del beneficiario.

clave_rastreo
string

Es la clave de rastreo de la transferencia.

confirm_date
string <date-time>

Es la Fecha de confirmación de la transferencia.

currency_code
string

Es el código de divisa de la transferencia. Es en el formato estándar ISO 4217 y es de 3 dígitos. Puede ser "MXN" o "USD".

deposit_date
string <date-time>

Es la fecha de recepción de la transferencia.

depositant
string

Es el nombre del depositante en caso de que la transferencia se reciba en una cuenta de depositante.

depositant_alias
string

Es el alias de la cuenta CLABE del depositante en caso que la transferencia se reciba de una cuenta de depositante

depositant_clabe
string

Es la cuenta CLABE del depositante en caso que la transferencia se reciba en una cuenta de depositante

depositant_email
string

Es el Correo electrónico (email) del depositante en caso que la transferencia se reciba en una cuenta de depositante

depositant_rfc
string

Es el Registro Federal de Contribuyentes (RFC) del depositante, en caso que la transferencia se reciba en una cuenta de depositante.

description
string

Es el concepto de la transferencia.

monex_description
string

Es la descripción de Monex para la transferencia.

monex_transaction_id
string

Es el identificador asignado por Monex a la transferencia.

reference
string

Es la referecia de la transferencia.

sender_account
string

Es la cuenta del ordenante que podría ser un número celular (10 dígitos), una tarjeta de débito (TDD, de 16 dígitos) o Cuenta CLABE interbancaria (18 dígitos).

object (MessageInstitution)

Objeto que contiene la información del banco.

sender_name
string

Es el nombre del ordenante.

sender_rfc
string

Es el Registro Federal de Contribuyente (RFC) del ordenante.

{
  • "amount": 0,
  • "beneficiary_account": "string",
  • "beneficiary_name": "string",
  • "beneficiary_rfc": "string",
  • "clave_rastreo": "string",
  • "confirm_date": "2019-08-24T14:15:22Z",
  • "currency_code": "string",
  • "deposit_date": "2019-08-24T14:15:22Z",
  • "depositant": "string",
  • "depositant_alias": "string",
  • "depositant_clabe": "string",
  • "depositant_email": "string",
  • "depositant_rfc": "string",
  • "description": "string",
  • "monex_description": "string",
  • "monex_transaction_id": "string",
  • "reference": "string",
  • "sender_account": "string",
  • "sender_bank": {
    },
  • "sender_name": "string",
  • "sender_rfc": "string"
}

Transferencia

account
string

Es la cuenta del ordenante.

amount
number

Es el monto de la transferencia.

beneficiary_account
string

Es la cuenta del beneficiario.

object (MessageInstitution)

Objeto que contiene la información del banco.

beneficiary_name
string

Es el nombre del beneficiario.

object (MessageCEP)

Es el objeto del Comprobante Electrónico de Pago (CEP) de la transferencia, que es emitido por Banxico. Se muestra sólo cuando esté disponible, en otro caso se podrá usar la Consulta de CEP que ésta misma API ofrece.

clave_rastreo
string

Es la clave de rastreo de la transferencia.

concept
string

Es el concepto de la transferencia de salida.

confirm_date
string <date-time>

Es la fecha de confirmación de la transferencia de salida.

currency_code
string

Código de divisa de la transferencia de salida. Es en el formato estándar ISO 4217 y es de 3 dígitos. Ejemplo: "MXN".

detention_message
string

Es el mensaje de detención de Monex de la transferencia de salida.

error_message
string

Mensaje de error.

monex_description
string

La descripción de Monex de la transferencia de salida.

order_id
string

Es el identificador de la transferencia de salida.

payment_order_id
integer

Es el identificador de la orden de pago de Monex de la transferencia de salida.

pending_reason
string

Es la razón de porque está pendiente aún cuando se autorizó la transferencia.

reference
integer

Es la referecia de la transferencia.

request_id
string

El identificador en esta API de la petición de envío de la transferencia de salida.

status_code
string

Es el estado de la transferencia de salida.

transaction_id
integer

Es el identificador de Monex de la transferencia de salida.

{
  • "account": "string",
  • "amount": 0,
  • "beneficiary_account": "string",
  • "beneficiary_bank": {
    },
  • "beneficiary_name": "string",
  • "cep": {
    },
  • "clave_rastreo": "string",
  • "concept": "string",
  • "confirm_date": "2019-08-24T14:15:22Z",
  • "currency_code": "string",
  • "detention_message": "string",
  • "error_message": "string",
  • "monex_description": "string",
  • "order_id": "string",
  • "payment_order_id": 0,
  • "pending_reason": "string",
  • "reference": 0,
  • "request_id": "string",
  • "status_code": "string",
  • "transaction_id": 0
}

Suscripción

contract
string

Es el contrato Monex, con el que se suscribió el cliente Monex en Wire4.

masked_contract
string

Es el contrato enmascarado de Monex, con el que se suscribió el cliente Monex en Wire4.

subscription
string

Es el identificador de la suscripción, el que se utilizará en las operaciones que solicitan una suscripción.

user
string

Es el usuario enmascardo, con el que se suscribió el cliente Monex en Wire4.

user_key
string

Es el usuario proporcionado por Wire4, el cuál se debe utilizar para autenticar a esta suscripción.

user_secret
string

Es la contraseña proporcionada por Wire4, la que se debe utilizar para autenticar a esta suscripción.

{
  • "contract": "string",
  • "masked_contract": "string",
  • "subscription": "string",
  • "user": "string",
  • "user_key": "string",
  • "user_secret": "string"
}

Procesamiento de peticiones

request_id
string

Es el identificador de la petición realizada a esta API.

status
string
Value: "AUTHORIZED"

Es el cambio a informar en el procesamiento/estado de la petición.

{
  • "request_id": "string",
  • "status": "AUTHORIZED"
}

Estatus pendiente

account
string

Es la cuenta del ordenante.

amount
number

Es el monto de la transferencia.

beneficiary_account
string

Es la cuenta del beneficiario.

object (MessageInstitution)

Objeto que contiene la información del banco.

beneficiary_name
string

Es el nombre del beneficiario.

concept
string

Es el concepto de la transferencia de salida.

currency_code
string

Código de divisa de la transferencia de salida. Es en el formato estándar ISO 4217 y es de 3 dígitos. Ejemplo: "MXN".

detention_message
string

Es el Mensaje de detención de Monex, indica la causa por la cuál esta detenida la operación en Monex.

error_message
string

Es el mensaje de error.

order_id
string

El identificador de la transferencia de salida.

payment_order_id
integer

Es el identificador de la orden de pago de Monex de la transferencia de salida.

pending_reason
string

Es el esaado que identifica la causa por la que la transferencia se ecuentra detenida o pendiente de procesarse. Los posibles estados son:

  • FI=Fondos Insuficientes
  • FM=Firma mancomunada, en espera de ingreso de segundo token de autorización
  • DP=Se detecto una transferencia duplicada que esta en wspera de confirmación o de eliminación

reference
integer

Es la referecia de la transferencia.

request_id
string

Es el identificador, en esta API, de la petición de envío de la transferencia de salida.

status_code
string

Es el estado (estatus) de la transferencia de salida. Deberá ser "PENDING".

transaction_id
integer

Es el identificador de Monex de la transferencia de salida, podría no estar presente por lo que Usted debería hacer referencias mediate el paymentOrderID.

{
  • "account": "string",
  • "amount": 0,
  • "beneficiary_account": "string",
  • "beneficiary_bank": {
    },
  • "beneficiary_name": "string",
  • "concept": "string",
  • "currency_code": "string",
  • "detention_message": "string",
  • "error_message": "string",
  • "order_id": "string",
  • "payment_order_id": 0,
  • "pending_reason": "string",
  • "reference": 0,
  • "request_id": "string",
  • "status_code": "string",
  • "transaction_id": 0
}

Acciones CoDi

amount
number

Es el monto de la operación de pago.

concept
string

Es el concepto de la transacción.

due_date
string <date-time>

Es la fecha de expiración de la operación.

id
string

Es el UUID de la operación.

metadata
string

Es el campo Metadata asociado a la petición de pago. Es información que indica guardar la petición.

operation_date
string <date-time>

Es la fecha de la operación.

order_id
string

Es el identificador de la petición.

payment_type
string

Es el tipo de pago.

reference
string

Es el número de referencia.

sales_point_id
string

Identidicador del punto de venta a la que pertenece la petición de pago.

status
string

Es el estado (estatus) de la operación de pago.

transaction_id
string

Es el identificador de la transacción.

{
  • "amount": 0,
  • "concept": "string",
  • "due_date": "2019-08-24T14:15:22Z",
  • "id": "string",
  • "metadata": "string",
  • "operation_date": "2019-08-24T14:15:22Z",
  • "order_id": "string",
  • "payment_type": "string",
  • "reference": "string",
  • "sales_point_id": "string",
  • "status": "string",
  • "transaction_id": "string"
}

Punto de venta CoDi

account
string

Es la cuenta donde se realziarán los pagos.

ip
string

Dirección IP desde la cuál se accederá a la API.

name
string

Es el nombre del punto de venta.

{
  • "account": "string",
  • "ip": "string",
  • "name": "string"
}

Límites de montos

Array of objects (ConfigurationsLimits)

Lista de configuraciones pertenecientes al contrato

{
  • "configurations": [
    ]
}
¿Deseas probar los recursos de nuestro ambiente de sandbox?
Ingresa tus llaves de prueba