openapi: "3.0.3" info: title: "API Adquirente - Tokenización" description: Funcionalidad para autenticar al comercio, validación de promociones por el BIN de una tarjeta y realizar pagos tokenizados o con tarjeta no presente. version: "1.0.0" servers: - url: https://api-sandbox.banorte.com/api/esb/adquiriente/v1 description: Servidor de Sandbox. security: - oAuth2ClientCredentials: - update paths: /consulta-promociones: post: tags: - "Adquiriente" summary: Consulta description: Recurso encargado de obtener la información de promociones. parameters: - $ref: "#/components/parameters/Authorization" - $ref: "#/components/parameters/X-IdSeguridad-JWE" - $ref: "#/components/parameters/X-IdSeguridad-JWS" - $ref: "#/components/parameters/ContentType" - $ref: "#/components/parameters/Accept" - $ref: "#/components/parameters/AcceptLanguage" - $ref: "#/components/parameters/Host" requestBody: content: application/json: schema: $ref: "#/components/schemas/be-adquirienteConsultaCifrado" required: true responses: 200: description: Regresa el resultado de la actualización de la entrega de token. headers: Strict-Transport-Security: $ref: '#/components/headers/Strict-Transport-Security' Cache-Control: $ref: '#/components/headers/Cache-Control' X-Frame-Options: $ref: '#/components/headers/X-Frame-Options' X-Content-Type-Options: $ref: '#/components/headers/X-Content-Type-Options' Content-Type: $ref: '#/components/headers/Content-Type' content: application/json: schema: $ref: "#/components/schemas/bs-adquirienteConsultaCifrado" 400: description: Se regresa cuando la petición no cumple con especificado en el api. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 401: description: Se regresa este mensaje cuando envían un token invalido. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 403: description: Se regresa cuando no se envía un token expirado o sin privilegios. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 405: description: Se regresa cuando envían un método diferente especificado en la API. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 406: description: Se regresa cuando envían un valor incorrecto en el encabezado de aceptación. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 408: description: Se regresa cuando las peticiones generan timeout. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 429: description: Se regresa cuando el recurso se ejecuta con demasiada frecuencia. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 431: description: Se regresa cuando envían demasiada información en los encabezados. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 500: description: Se regresa cuando sucede un error Interno en el servidor. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 503: description: Se regresa cuando las APIS están inactivas. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" /autenticar: post: tags: - "Adquiriente" summary: Autenticar description: Recurso encargado de dar de alta la información de un token. parameters: - $ref: "#/components/parameters/Authorization" - $ref: "#/components/parameters/X-IdSeguridad-JWE" - $ref: "#/components/parameters/X-IdSeguridad-JWS" - $ref: "#/components/parameters/ContentType" - $ref: "#/components/parameters/Accept" - $ref: "#/components/parameters/AcceptLanguage" - $ref: "#/components/parameters/Host" requestBody: content: application/json: schema: $ref: "#/components/schemas/be-adquirienteAutenticarCifrado" required: true responses: 200: description: Regresa el resultado de la actualización de la entrega de token. headers: Strict-Transport-Security: $ref: '#/components/headers/Strict-Transport-Security' Cache-Control: $ref: '#/components/headers/Cache-Control' X-Frame-Options: $ref: '#/components/headers/X-Frame-Options' X-Content-Type-Options: $ref: '#/components/headers/X-Content-Type-Options' Content-Type: $ref: '#/components/headers/Content-Type' content: application/json: schema: $ref: "#/components/schemas/bs-adquirienteAutenticarCifrado" 400: description: Se regresa cuando la petición no cumple con especificado en el api. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 401: description: Se regresa este mensaje cuando envían un token invalido. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 403: description: Se regresa cuando no se envía un token expirado o sin privilegios. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 405: description: Se regresa cuando envían un método diferente especificado en la API. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 406: description: Se regresa cuando envían un valor incorrecto en el encabezado de aceptación. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 408: description: Se regresa cuando las peticiones generan timeout. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 429: description: Se regresa cuando el recurso se ejecuta con demasiada frecuencia. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 431: description: Se regresa cuando envían demasiada información en los encabezados. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 500: description: Se regresa cuando sucede un error Interno en el servidor. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 503: description: Se regresa cuando las APIS están inactivas. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" /procesar-pago: post: tags: - "Adquiriente" summary: Pago description: Recurso encargado de dar de baja la información de un token parameters: - $ref: "#/components/parameters/Authorization" - $ref: "#/components/parameters/X-IdSeguridad-JWE" - $ref: "#/components/parameters/X-IdSeguridad-JWS" - $ref: "#/components/parameters/ContentType" - $ref: "#/components/parameters/Accept" - $ref: "#/components/parameters/AcceptLanguage" - $ref: "#/components/parameters/Host" requestBody: content: application/json: schema: $ref: "#/components/schemas/be-adquirientePagoCifrado" required: true responses: 200: description: Regresa el resultado de la actualización de la entrega de token. headers: Strict-Transport-Security: $ref: '#/components/headers/Strict-Transport-Security' Cache-Control: $ref: '#/components/headers/Cache-Control' X-Frame-Options: $ref: '#/components/headers/X-Frame-Options' X-Content-Type-Options: $ref: '#/components/headers/X-Content-Type-Options' Content-Type: $ref: '#/components/headers/Content-Type' content: application/json: schema: $ref: "#/components/schemas/bs-adquirientePagoCifrado" 400: description: Se regresa cuando la petición no cumple con especificado en el api. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 401: description: Se regresa este mensaje cuando envían un token invalido. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 403: description: Se regresa cuando no se envía un token expirado o sin privilegios. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 405: description: Se regresa cuando envían un método diferente especificado en la API. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 406: description: Se regresa cuando envían un valor incorrecto en el encabezado de aceptación. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 408: description: Se regresa cuando las peticiones generan timeout. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 429: description: Se regresa cuando el recurso se ejecuta con demasiada frecuencia. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 431: description: Se regresa cuando envían demasiada información en los encabezados. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 500: description: Se regresa cuando sucede un error Interno en el servidor. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" 503: description: Se regresa cuando las APIS están inactivas. content: application/json: schema: $ref: "#/components/schemas/bodyResponseTokenError" components: securitySchemes: oAuth2ClientCredentials: type: oauth2 description: | La API debe requerir un encabezado de autorización en la solicitud http un token web JSON (JWT) emitido por el servidor de autorización Oauth2 aprobado por la empresa para la autenticación del servicio. flows: clientCredentials: tokenUrl: "/api/esb/ValidaCredenciales/accesstoken" scopes: update: Permisos para actualizar el estatus de la entrega. schemas: bodyResponseTokenError: allOf: - $ref: "#/components/schemas/resultadoGenericoClaro" - $ref: "#/components/schemas/resultadoGenericoError" be-adquirienteConsultaClaro: type: object required: - solicitud properties: solicitud: type: object required: - BIN - token properties: BIN: type: string description: "BIN." example: "" minLength: 1 maxLength: 8 token: type: string description: "Token." example: "" minLength: 1 maxLength: 500 be-adquirienteConsultaCifrado: type: object required: - solicitud properties: solicitud: type: string example: "eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiUlNBLU9BRVAtMjU2In0.WGI4-VGC6UmWrAbmTlOoSaP_C64_oHKbQUJGHXJ0RDe7dieR0UoxQDt2VykNttsS32yN2PIs5axBklSZFAbmqA6GIj_bh2nmlNq4RtleNSnSrM1JwkTlfVoNT7qB5w4g3dSKdRsLw8alsr3ud_esyqrePWZA8Z5I2-EklXiR3_9K7vRH0UV2hUlgYCSJsRmAVBDJflI7dIDb3tlUSuhKdwzD-VqItf4_Mv37PWCNplwdrwseTw9_oy3fs-VAAfpZ4glkZFnC7xNRaHZG6H5BBOz4epwvqCdjVOrBk9KJ2XMC9UolBbQt1J4B9conZqLJNaYh_RfYw28OKoKIeMSwOAM_L1slbwj85MxWR5UZaExJ4wd3faqQVIh9WilqzgpWkdLAsc_ZXSnrIs-s7UY_PWAz7E7dPaARi_eFOti0HG8xFOTbBmAk0_ht5iGP8FPFajT324Pu6JynPmJtQxE6wi1lv83-dG8notN46_VwYl9LCD0jxB27PxBF1snE12NcrhsYmdapnKxNobCn41vV2FlfXzHUhp_uACyxXuGrCukXHjH9v0YCBk13Ty_fwE7qlnue_90fcMmRTsJspZJceUCmoPG197YIMeQb4LihY4qwIY5tDb8mna50_U6jbyiHb_Lu-WbLDkq0ZsXeyXEusIFsbyMzm9DZ9Gjrso7f6L8.Qwkmc83WduBFF8cn.5WBxxr3spAdJGnYI1HMn1TCGDI45zaI34vxfvbciMHu0P2Xx-GAQorBsxpY46BAo_wck8QIKFtO_CV_w1dWoDLYv44ZejBFzr2aaNnt7ISeTDZEgIbUgu-D2qXXCms0EotjqslgFV8ZO3h9MD79jb208TgBdVuywaJFocxOIBQtvuMnSNcdH-N1rbdPGLj_7ig6isWapayRKNWjDrYJvgCYtckn3KqBbi1KIF5v-kO3JDV1m60ynFVJREoYXascGKP2HceyDmYq02Fxxf2g07F4SvpXQx8yd6c9AEg3NOyk8yaFs1yQYjtii8_l3g-E-SrqtrcdW_VWX1JDbGfsZ8wJP6UskSC65PkRlVUS9tlsh2uhD1DVVH-b8yFTRsDxRYbyb7ykby1VAPrvSGi9gJanJpNFIXeSSAy16dAGnXr7A_TGNSxHCgAtSgfqv_mdxN2CcNE-4hqIYpVc.at_OwQmfoY5qYMCaAL55OA" bs-adquirienteConsultaClaro: type: object required: - status - codigoRespuesta - folio - resultado properties: status: type: number description: "Contiene el código de respuesta de la petición http: Valores posibles: 200" example: 200 minLength: 1 maxLength: 3 codigoRespuesta: type: string description: "Identifica si el servicio se ejecutó con éxito o sucedió un error de negocio. Valores posibles: 1- Exitoso 0- Error de Negocio" example: "" minLength: 1 maxLength: 1 mensaje: type: string description: "Descripción para el desarrollador." example: "" maxLength: 500 folio: type: string description: "Identificador global único generado automáticamente para cada petición recibida por el backend." example: "" minLength: 1 maxLength: 36 resultado: $ref: '#/components/schemas/bs-adquirienteConsultaClaro-resultado' bs-adquirienteConsultaClaro-resultado: description: 'Objeto de respuesta en el cual se puede incluir cualquier particularidad de atributos del backend.' type: object properties: BIN: description: "BIN." type: string example: "" maxLength: 8 tipoTarjeta: description: "Tipo de tarjeta." type: string example: "" maxLength: 3 producto: description: "Producto." type: string example: "" maxLength: 20 facturacionRecurrente: description: "Facturacion recurrente." type: string example: "" maxLength: 10 bancoEmisor: description: "Banco emisor." type: string example: "" maxLength: 20 marcaTarjeta: description: "Marca tarjeta." type: string example: "" maxLength: 1 paisTarjeta: description: "País tarjeta." type: string example: "" maxLength: 3 descuentoProducto: description: "Descuento producto." type: string example: "" maxLength: 10 descuentoComProducto: description: "Descuento complementario producto." type: string example: "" maxLength: 10 promociones: $ref: '#/components/schemas/bs-adquirienteConsultaClaro-resultado-informacionPromociones' bs-adquirienteConsultaClaro-resultado-informacionPromociones: description: "Objeto que contiene información de promociones." type: object properties: listaPromocion: $ref: '#/components/schemas/bs-adquirienteConsultaClaro-resultado-detallePromociones' bs-adquirienteConsultaClaro-resultado-detallePromociones: description: "Arreglo que se puede repetir hasta 4 veces." type: array items: type: object properties: idPromocion: description: "ID Promocion." type: string example: "" maxLength: 10 descripcionPromocion: description: "Descripción promoción." type: string example: "" maxLength: 100 plazo: description: "Plazo." type: string example: "" maxLength: 10 tipoPlan: description: "Tipo plan." type: string example: "" maxLength: 20 diferimientoInicial: description: "Diferimiento Inicial." type: string example: "" maxLength: 20 bs-adquirienteConsultaCifrado: type: object properties: status: type: number description: "Contiene el código de respuesta de la petición http: Valores posibles: 200." example: 200 minLength: 1 maxLength: 3 codigoRespuesta: type: string description: "Identifica si el servicio se ejecutó con éxito o sucedió un error de negocio. Valores posibles: 1- Exitoso 0- Error de Negocio" example: "" minLength: 1 maxLength: 1 mensaje: type: string description: "Descripción para el desarrollador." example: "" maxLength: 500 folio: type: string description: "Identificador global único generado automáticamente para cada petición recibida por el backend." example: "" minLength: 1 maxLength: 36 resultado: $ref: "#/components/schemas/resultadoGenericoCifrado" be-adquirienteAutenticar: type: object required: - solicitud - contrasena - idAfiliacion - modo - numeroControl - idTerminal - monto - nombreComercio - ciudadOrigen - idioma - nombreFactura - apellidoFactura - calleFactura - numeroCalleFactura - coloniaFactura - delegacionFactura - ciudadFactura - estadoFactura - paisFactura - codigoPostalFactura - correoElectronicoFactura properties: solicitud: type: object required: - idUsuario properties: idUsuario: type: number description: "Usuario motor." example: maxLength: 20 contrasena: type: string description: "Contraseña motor." example: "" maxLength: 20 idAfiliacion: type: string description: "Numero de afiliación." example: "" maxLength: 7 modo: type: string description: "Modo." example: "" maxLength: 30 numeroControl: type: string description: "Numero de control." example: "" maxLength: 15 idTerminal: type: string description: "Id Terminal." example: "" maxLength: 15 monto: type: number description: "Monto." example: maxLength: 15 nombreComercio: type: string description: "Nombre del comercio." example: "" maxLength: 25 ciudadOrigen: type: string description: "Ciudad origen." example: "" maxLength: 30 idioma: type: number description: "Idioma." example: maxLength: 2 numeroReferencia: type: string description: "Referencia cliente 1." example: "" maxLength: 30 numeroReferenciaDos: type: string description: "Referencia cliente 2." example: "" maxLength: 30 numeroReferenciaTres: type: string description: "Referencia cliente 3." example: "" maxLength: 30 numeroReferenciaCuatro: type: string description: "Referencia cliente 4." example: "" maxLength: 30 numeroReferenciaCinco: type: string description: "Referencia cliente 5." example: "" maxLength: 30 correo: type: string description: "Correo." example: "" maxLength: 100 telefono: type: string description: "Teléfono." example: "" maxLength: 15 concepto: type: string description: "Concepto." example: "" maxLength: 255 numeroComercio: type: string description: "Id usuario comercio." example: "" maxLength: 100 correoEmpresa: type: string description: "Correo del usuario comercio, que aplica en caso de no tener id usuario comercio para realizar el flujo de tokenización." example: "" maxLength: 100 indToken: type: number description: "Bandera uso tokenización." example: "" maxLength: 1 nombreFactura: type: string description: "Nombre factura." example: "" maxLength: 60 apellidoFactura: type: string description: "Apellido factura." example: "" maxLength: 60 calleFactura: type: string description: "Calle factura." example: "" maxLength: 40 numeroCalleFactura: type: string description: "Numero calle factura." example: "" maxLength: 6 numSegCalleFactura: type: string description: "Numero segunda calle factura." example: "" maxLength: 10 coloniaFactura: type: string description: "Colonia factura." example: "" maxLength: 30 delegacionFactura: type: string description: "Delegación factura." example: "" maxLength: 30 ciudadFactura: type: string description: "Ciudad factura." example: "" maxLength: 50 estadoFactura: type: string description: "Estado factura." example: "" maxLength: 2 paisFactura: type: string description: "País factura." example: "" maxLength: 2 telefonoFactura: type: string description: "Teléfono factura." example: "" maxLength: 15 codigoPostalFactura: type: string description: "Código postal factura." example: "" maxLength: 10 correoElectronicoFactura: type: string description: "Correo electrónico factura." example: "" maxLength: 100 idClienteFactura: type: string description: "Id cliente de factura." example: "" maxLength: 50 contrasenaFactura: type: string description: "Contraseña cliente de factura." example: "" maxLength: 255 fechaNacimientoFactura: type: string description: "Fecha de nacimiento de factura." example: "" maxLength: 10 hostnameOrigen: type: string description: "Nombre de host de factura." example: "" maxLength: 60 codigoHttp: type: string description: "Dirección http correo de factura." example: "" maxLength: 100 ipFactura: type: string description: "Dirección IP de factura." example: "" maxLength: 15 comentarios: type: string description: "Comentarios." example: "" maxLength: 255 datosEnvio: $ref: "#/components/schemas/be-adquirienteAutenticarClaro-datosEnvio" listaComercio: $ref: "#/components/schemas/be-adquirienteAutenticarClaro-listaComercio" be-adquirienteAutenticarClaro-datosEnvio: description: "Elemento complejo que contiene los datos de envió." type: object properties: nombrePersona: description: "Envío a nombre." type: string example: "" minLength: 1 maxLength: 60 numeroCalle: description: "Numero de calle." type: string example: "" minLength: 1 maxLength: 10 numeroCalleDos: description: "Numero de calle 2." type: string example: "" minLength: 1 maxLength: 10 colonia: description: "Envío calle 2, colonia." type: string example: "" maxLength: 30 delegacion: description: "Envío calle 2, delegación." type: string example: "" minLength: 1 maxLength: 30 ciudad: description: "Envío ciudad." type: string example: "" minLength: 1 maxLength: 50 descEntidadFederativa: description: "Envío a estado." type: string example: "" minLength: 1 maxLength: 2 cvePais: description: "Envío a país." type: string example: "" minLength: 1 maxLength: 2 codigoPostal: description: "Envío código postal." type: string example: "" minLength: 1 maxLength: 10 telefonoEnvio: description: "Envío a teléfono." type: string example: "" minLength: 1 maxLength: 15 metodoEnvio: description: "Método de envío." type: string example: "" minLength: 1 maxLength: 8 be-adquirienteAutenticarClaro-listaComercio: description: "Arreglo que se puede repetir hasta 4 veces." type: array items: type: object required: - nombreComercio - posicion properties: nombreComercio: description: "Campo de comercio genéricos definidos del 1 al 100." type: string example: "" maxLength: 20 posicion: description: "Indica en que posición se deberá mapear hacia multicobros." type: number example: "" maxLength: 100 be-adquirienteAutenticarCifrado: type: object required: - solicitud properties: solicitud: type: string example: "eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiUlNBLU9BRVAtMjU2In0.WGI4-VGC6UmWrAbmTlOoSaP_C64_oHKbQUJGHXJ0RDe7dieR0UoxQDt2VykNttsS32yN2PIs5axBklSZFAbmqA6GIj_bh2nmlNq4RtleNSnSrM1JwkTlfVoNT7qB5w4g3dSKdRsLw8alsr3ud_esyqrePWZA8Z5I2-EklXiR3_9K7vRH0UV2hUlgYCSJsRmAVBDJflI7dIDb3tlUSuhKdwzD-VqItf4_Mv37PWCNplwdrwseTw9_oy3fs-VAAfpZ4glkZFnC7xNRaHZG6H5BBOz4epwvqCdjVOrBk9KJ2XMC9UolBbQt1J4B9conZqLJNaYh_RfYw28OKoKIeMSwOAM_L1slbwj85MxWR5UZaExJ4wd3faqQVIh9WilqzgpWkdLAsc_ZXSnrIs-s7UY_PWAz7E7dPaARi_eFOti0HG8xFOTbBmAk0_ht5iGP8FPFajT324Pu6JynPmJtQxE6wi1lv83-dG8notN46_VwYl9LCD0jxB27PxBF1snE12NcrhsYmdapnKxNobCn41vV2FlfXzHUhp_uACyxXuGrCukXHjH9v0YCBk13Ty_fwE7qlnue_90fcMmRTsJspZJceUCmoPG197YIMeQb4LihY4qwIY5tDb8mna50_U6jbyiHb_Lu-WbLDkq0ZsXeyXEusIFsbyMzm9DZ9Gjrso7f6L8.Qwkmc83WduBFF8cn.5WBxxr3spAdJGnYI1HMn1TCGDI45zaI34vxfvbciMHu0P2Xx-GAQorBsxpY46BAo_wck8QIKFtO_CV_w1dWoDLYv44ZejBFzr2aaNnt7ISeTDZEgIbUgu-D2qXXCms0EotjqslgFV8ZO3h9MD79jb208TgBdVuywaJFocxOIBQtvuMnSNcdH-N1rbdPGLj_7ig6isWapayRKNWjDrYJvgCYtckn3KqBbi1KIF5v-kO3JDV1m60ynFVJREoYXascGKP2HceyDmYq02Fxxf2g07F4SvpXQx8yd6c9AEg3NOyk8yaFs1yQYjtii8_l3g-E-SrqtrcdW_VWX1JDbGfsZ8wJP6UskSC65PkRlVUS9tlsh2uhD1DVVH-b8yFTRsDxRYbyb7ykby1VAPrvSGi9gJanJpNFIXeSSAy16dAGnXr7A_TGNSxHCgAtSgfqv_mdxN2CcNE-4hqIYpVc.at_OwQmfoY5qYMCaAL55OA" bs-adquirienteAutenticarClaro: type: object required: - status properties: status: type: number description: "Contiene el código de respuesta de la petición http: Valores posibles: 200" example: 200 minLength: 1 maxLength: 3 codigoRespuesta: type: string description: "Identifica si el servicio se ejecutó con éxito o sucedió un error de negocio. Valores posibles: 1- Exitoso 0- Error de Negocio" example: "" minLength: 1 maxLength: 1 mensaje: type: string description: "Descripción para el desarrollador." example: "" maxLength: 500 folio: type: string description: "Identificador global único generado automáticamente para cada petición recibida por el backend." example: "" minLength: 1 maxLength: 36 resultado: $ref: '#/components/schemas/bs-adquirienteAutenticarClaro-resultado' bs-adquirienteAutenticarClaro-resultado: description: "Objeto de respuesta en el cual se puede incluir cualquier particularidad de atributos del backend." type: object properties: apellidoFactura: description: "Apellido factura." type: string example: "" maxLength: 60 nombreFactura: description: "Nombre factura." type: string example: "" maxLength: 60 correoElectronicoFactura: description: "Correo factua." type: string example: "" maxLength: 100 correo: description: "Correo." type: string example: "" maxLength: 100 telefono: description: "Teléfono." type: string example: "" maxLength: 15 referenciaCliente: description: "Referencia cliente 1." type: string example: "" maxLength: 30 indToken: description: "Bandera Token." type: number example: maxLength: 1 token: description: "Token." type: string example: "" maxLength: 255 ind3DSecure: description: "Funcionamiento de prevención de fraudes AMEX con cybersource y ·DSecure." type: string example: "" maxLength: 1 tipoEjecucion: description: "Entorno ejecución." type: string example: "" maxLength: 10 estatusFraude3D: description: "Estatus fraude." type: string example: "" maxLength: 255 url: description: "URL donde se entrega la respuesta de la validación de 3DSecure." type: string example: "" maxLength: 255 urlSecure3d: description: "URL validación de prevención de fraudes mediante 3DSecure." type: string example: "" maxLength: 255 afiliacion: description: "Numero de afiliación." type: string example: "" maxLength: 7 nivelFraude: description: "Nivel fraude." type: string example: "" maxLength: 20 codigoUsoOrquestador: description: "Código orquestador." type: string example: "" maxLength: 20 codigoPrevencionFraude: description: "Código prevención de fraude." type: string example: "" maxLength: 10 codigoPagosDiferidos: description: "Código pagos diferidos." type: string example: "" maxLength: 10 opcionesPago: $ref: '#/components/schemas/bs-adquirienteAutenticarClaro-resultado-opcionesPago' tipoAfiliacion: description: "Tipo de afiliación." type: string example: "" maxLength: 3 bs-adquirienteAutenticarClaro-resultado-opcionesPago: description: "Objeto que contiene información de opciones de pago." type: object properties: listaOpcionesPago: $ref: '#/components/schemas/bs-adquirienteConsultaClaro-resultado-listOpcionesPago' bs-adquirienteConsultaClaro-resultado-listOpcionesPago: description: "Arreglo que contiene una lista de opciones de pago." type: array items: type: object properties: clavePago: description: "ID opción de pago." type: number example: "" maxLength: 3 formaPago: description: "Descripción de opción de pago." type: string example: "" maxLength: 100 bs-adquirienteAutenticarCifrado: type: object properties: status: type: number description: "Contiene el código de respuesta de la petición http: Valores posibles: 200." example: 200 minLength: 1 maxLength: 3 codigoRespuesta: type: string description: "Identifica si el servicio se ejecutó con éxito o sucedió un error de negocio. Valores posibles: 1- Exitoso 0- Error de Negocio" example: "" minLength: 1 maxLength: 1 mensaje: type: string description: "Descripción para el desarrollador." example: "" maxLength: 500 folio: type: string description: "Identificador global único generado automáticamente para cada petición recibida por el backend." example: "" minLength: 1 maxLength: 36 resultado: $ref: "#/components/schemas/resultadoGenericoCifrado" be-adquirientePagoClaro: type: object required: - solicitud properties: solicitud: type: object required: - apellidoFactura - nombreFactura - correoElectronicoFactura - telefonoFactura properties: apellidoFactura: type: string description: "Apellido facturación." example: "" minLength: 1 maxLength: 60 nombreFactura: type: string description: "Nombre facturación." example: "" minLength: 1 maxLength: 60 correoElectronicoFactura: type: string description: "Correo electrónico de facturación." example: "" minLength: 1 maxLength: 100 telefonoFactura: type: string description: "Teléfono de facturación." example: "" minLength: 1 maxLength: 15 correo: type: string description: "Correo." example: "" minLength: 1 maxLength: 100 telefono: type: string description: "Teléfono." example: "" minLength: 1 maxLength: 15 numeroPlastico: type: string description: "Número de plástico." example: "" minLength: 1 maxLength: 10 mesExpiracionTarjeta: type: string description: "Mes de expiración de la tarjeta." example: "" minLength: 1 maxLength: 5 anioExpiracionTarjeta: type: string description: "Año de expiración de la tarjeta." example: "" minLength: 1 maxLength: 2 cvv: type: string description: "CVV de la tarjeta." example: "" minLength: 1 maxLength: 3 idToken: type: string description: "ID del token." example: "" minLength: 1 maxLength: 10 indMesesSinIntereses: type: string description: "Indicador de meses sin intereses." example: "" minLength: 1 maxLength: 5 indGuardarToken: type: number description: "Indicador de opción para guardar token." example: minLength: 1 maxLength: 1 token: type: string description: "Token." example: "" minLength: 1 maxLength: 255 be-adquirientePagoCifrado: type: object required: - solicitud properties: solicitud: type: string example: "eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiUlNBLU9BRVAtMjU2In0.WGI4-VGC6UmWrAbmTlOoSaP_C64_oHKbQUJGHXJ0RDe7dieR0UoxQDt2VykNttsS32yN2PIs5axBklSZFAbmqA6GIj_bh2nmlNq4RtleNSnSrM1JwkTlfVoNT7qB5w4g3dSKdRsLw8alsr3ud_esyqrePWZA8Z5I2-EklXiR3_9K7vRH0UV2hUlgYCSJsRmAVBDJflI7dIDb3tlUSuhKdwzD-VqItf4_Mv37PWCNplwdrwseTw9_oy3fs-VAAfpZ4glkZFnC7xNRaHZG6H5BBOz4epwvqCdjVOrBk9KJ2XMC9UolBbQt1J4B9conZqLJNaYh_RfYw28OKoKIeMSwOAM_L1slbwj85MxWR5UZaExJ4wd3faqQVIh9WilqzgpWkdLAsc_ZXSnrIs-s7UY_PWAz7E7dPaARi_eFOti0HG8xFOTbBmAk0_ht5iGP8FPFajT324Pu6JynPmJtQxE6wi1lv83-dG8notN46_VwYl9LCD0jxB27PxBF1snE12NcrhsYmdapnKxNobCn41vV2FlfXzHUhp_uACyxXuGrCukXHjH9v0YCBk13Ty_fwE7qlnue_90fcMmRTsJspZJceUCmoPG197YIMeQb4LihY4qwIY5tDb8mna50_U6jbyiHb_Lu-WbLDkq0ZsXeyXEusIFsbyMzm9DZ9Gjrso7f6L8.Qwkmc83WduBFF8cn.5WBxxr3spAdJGnYI1HMn1TCGDI45zaI34vxfvbciMHu0P2Xx-GAQorBsxpY46BAo_wck8QIKFtO_CV_w1dWoDLYv44ZejBFzr2aaNnt7ISeTDZEgIbUgu-D2qXXCms0EotjqslgFV8ZO3h9MD79jb208TgBdVuywaJFocxOIBQtvuMnSNcdH-N1rbdPGLj_7ig6isWapayRKNWjDrYJvgCYtckn3KqBbi1KIF5v-kO3JDV1m60ynFVJREoYXascGKP2HceyDmYq02Fxxf2g07F4SvpXQx8yd6c9AEg3NOyk8yaFs1yQYjtii8_l3g-E-SrqtrcdW_VWX1JDbGfsZ8wJP6UskSC65PkRlVUS9tlsh2uhD1DVVH-b8yFTRsDxRYbyb7ykby1VAPrvSGi9gJanJpNFIXeSSAy16dAGnXr7A_TGNSxHCgAtSgfqv_mdxN2CcNE-4hqIYpVc.at_OwQmfoY5qYMCaAL55OA" bs-adquirientePagoClaro: type: object required: - status - codigoRespuesta - folio properties: status: type: number description: "Contiene el código de respuesta de la petición http: Valores posibles: 200" example: 200 minLength: 1 maxLength: 3 codigoRespuesta: type: string description: "Identifica si el servicio se ejecutó con éxito o sucedió un error de negocio. Valores posibles: 1- Exitoso 0- Error de Negocio" example: "" minLength: 1 maxLength: 1 mensaje: type: string description: "Descripción para el desarrollador." example: "" maxLength: 500 folio: type: string description: "Identificador global único generado automáticamente para cada petición recibida por el backend." example: "" minLength: 1 maxLength: 36 resultado: $ref: '#/components/schemas/bs-adquirientePagoClaro-resultado' bs-adquirientePagoClaro-resultado: description: "Objeto de respuesta en el cual se puede incluir cualquier particularidad de atributos del backend." type: object properties: afiliacion: description: "Id de afiliación." type: string example: "" maxLength: 7 referencia: description: "Referencia" type: string example: "" maxLength: 100 numeroControl: description: "Numero de control" type: string example: "" maxLength: 20 fechaPeticion: description: "Fecha de petición." type: string example: "" maxLength: 10 fechaRespuesta: description: "Fecha de respuesta." type: string example: "" maxLength: 10 indicadorPW: description: "Código de resultado de la ejecución de la transacción en el motor de payworks." type: string example: "" maxLength: 20 codigoAutorizacion: description: "Código de autorización." type: number example: maxLength: 3 descEstatus: description: "Texto informativo del resultado de la ejecución de la operación en el motor de payworks." type: string example: "" maxLength: 100 idPeticion: description: "ID de petición." type: string example: "" maxLength: 10 resultado: description: "Decisión." type: string example: "" maxLength: 30 codigoRazon: description: "Código razón." type: number example: maxLength: 3 claveBanorte: description: "Código Banorte." type: number example: maxLength: 3 resultadoEvaluacion: description: "Texto informativo del resultado de la verificación de Cyberspurce." type: string example: "" maxLength: 100 reciboPago: description: "Cadena que contiene el comprobante de la CDMX, cuando la operación es ejecutada con la afiliación configurada para la CDMX." type: string example: "" maxLength: 500 bs-adquirientePagoCifrado: type: object properties: status: type: number description: "Contiene el código de respuesta de la petición http: Valores posibles: 200." example: 200 minLength: 1 maxLength: 3 codigoRespuesta: type: string description: "Identifica si el servicio se ejecutó con éxito o sucedió un error de negocio. Valores posibles: 1- Exitoso 0- Error de Negocio" example: "" minLength: 1 maxLength: 1 mensaje: type: string description: "Descripción para el desarrollador." example: "" maxLength: 500 folio: type: string description: "Identificador global único generado automáticamente para cada petición recibida por el backend." example: "" minLength: 1 maxLength: 36 resultado: $ref: "#/components/schemas/resultadoGenericoCifrado" resultadoGenericoCifrado: description: Contiene los campos de resultado de la ejecución del api. type: object example: "eyJ0eXAiOiJKV1QiLCJl0.byApNU6T_xlMM_5b6t7D171OozdHvrOL5NYw6_58rlCFd7pxlj5ogUQ4WBedMVEchDUcu-JtmzWdZGsuMLUuhG2id0LLhPeZ9xlbAwrWS337CA4lCLmfqZrmkoXzWESL_wX3j0zp8WAc8CyEBAwEU-YptHs-ongol2DCa659SIogCWr2SaFl9r4t4r3-NJqGa9hf6Pj46Pjt_sQOC4DxtW9rqLzHRXXWhTbNK_0vDBgF3w5rbhgGh1qtBptRMXcNBUPV-JRkSmOnw7aH3MbiA2yW5wh4J5-xh1eAs1lV_-shAZDv1F4Kj8XB1UfoH2-gKei4W4x16Y8KaPWkWD8_Dmf4kpN2NwK4lT5TgTnPmSAfONCc1oXX7j2-wr2pQnt3Iix1qbubKSClr11SLDUJoZaZ_Jwk1ICeAl3ILrQLVRumyMgfcXQY3yLY_sW9QvOO_-pV5hP0HCeI5VjP2sAGlZdax5fDWB9qRYOLEKu8daX1wLAqHv7F06V6VFbV_mRNap0lZAw0yVrP-FOypmJuJsZ9gHRvVVcaTYEYR-mDKuMadplEdXgRKiOx3yIYqQYZjxPcVb7AkZ-NeUhd7IgjQlB_naTpoFcw_QxyVDmUjbEGAJH_NwFb9c.C8OgidrNyJ5wDOTz.YOrjnGo7zdboqLz0sCT-ubGrdSrAz0Ty2p25V2V7UEsi254f-FSmk-IQfqiP53tHXix2ewhua9REqftPysliT04w0bwWN-5nK-yJ3mqxJOzLy92GqwQUtWSM9HRZFk5a0oYMfgebHZf7mbvXg335eeArq_y84bKqpmh-awK8Wfpw2Qaqv6NZwPCWAFmMyLgalmVW7wrEXuFhhz7ZSuWugh-6sw0sCmzv_2vb3nsqytZFwiDKV8OYlBlhmILXLwJ5DIh4p6AhybfrwX-8nBEMGljtwTgt_RFHhj-RT_rb3uCrMXT_tzoWpwETWzK1xlON3smL8WroPvpkhHQ92NgbGbeJITzMaZlCiXJtoi6-4T9DdSQ5kyMZ9IUwGBRZrO6af2sNPg3v_3RbkhceQhmptIQvZWF5WIywnJJb0wllCT0o-NkNE0P-SFWrvZUjL9KArIrE8Gk3MbX1Yv2P5SGarDEF.XXAZFNIggYp5XvjH6pJROA" resultadoGenericoClaro: type: object properties: status: title: Status description: Contiene el código de respuesta. type: integer maximum: 999 minimum: 0 example: 200 enum: - 200 - 400 - 401 - 403 - 405 - 406 - 408 - 429 - 431 - 500 - 503 codigoRespuesta: title: Código de Respuesta description: Identifica si la petición se ejecutó con éxito o error 0-Error de Negocio. 1-Proceso correcto. type: integer maximum: 9 minimum: 0 example: 0 enum: - 0 - 1 codigoError: title: Codigo de Respuesta description: Identificador del código de error para la aplicación cliente. type: string maxLength: 20 minLength: 1 example: ERRNEG001 enum: - "ERRNEG001 -Error de Negocio." - "ERRESQ001 -Cuando el JSON que viaje en el body no es válido." - "ERRESQ002 -Cuando envían campos vacíos o nulos." - "ERRESQ003 -Cuando se envían campos que no están definidos en la API." - "ERRESQ004 -Cuando la longitud de un campo es mayor o menor a lo establecido en la API." - "ERRESQ005 -Cuando en la petición envían un tipo de dato diferente en los campos de la API." - "ERRESQ006 -Cuando no envían campos requeridos de la API." - "ERRSEG001 -Cuando en la petición envían un token invalido." - "ERRSEG002 -Cuando en la petición envían un token expirado." - "ERRSEG003 -Cuando en la petición envían un token sin privilegios." - "ERRSEG004 -Cuando envían un método diferente especificado en la API." - "ERRSEG005 -Cuando envían un valor incorrecto en el encabezado de aceptación." - "ERRSEG006 -Cuando el recurso se ejecuta con demasiada frecuencia." - "ERRSEG007 -Cuando envían demasiada información en los encabezados." - "ERRSER001 -Cuando las peticiones generan timeout." - "ERRSER002 -Cuando las peticiones generan un error en los equipos de Banorte." - "ERRSER003 -Cuando los equipos de APIS no tienen conexión con Banorte." - "ERROFF001 -Cuando se apaga la funcionalidad de una API." - "ERROFF002 -Cuando se apaga la funcionalidad de todas las API." mensaje: title: Mensaje de la operación. description: Contiene la descripción del resultado de ejecución de la API. type: string maxLength: 500 minLength: 1 example: Proceso de Entrega. folio: title: Folio type: string description: Identificador global único generado automáticamente para cada petición recibida. maxLength: 36 minLength: 1 example: 08API1642005180146 resultadoGenericoError: description: Contiene los campos de resultado de la ejecución del api. type: object properties: detalles: title: Detalles del error description: Elemento que contiene los campos que explican el error sucedido. type: object example: "eyJ0eXAiOiJKV1QiLCJl0.byApNU6T_xlMM_5b6t7D171OozdHvrOL5NYw6_58rlCFd7pxlj5ogUQ4WBedMVEchDUcu-JtmzWdZGsuMLUuhG2id0LLhPeZ9xlbAwrWS337CA4lCLmfqZrmkoXzWESL_wX3j0zp8WAc8CyEBAwEU-YptHs-ongol2DCa659SIogCWr2SaFl9r4t4r3-NJqGa9hf6Pj46Pjt_sQOC4DxtW9rqLzHRXXWhTbNK_0vDBgF3w5rbhgGh1qtBptRMXcNBUPV-JRkSmOnw7aH3MbiA2yW5wh4J5-xh1eAs1lV_-shAZDv1F4Kj8XB1UfoH2-gKei4W4x16Y8KaPWkWD8_Dmf4kpN2NwK4lT5TgTnPmSAfONCc1oXX7j2-wr2pQnt3Iix1qbubKSClr11SLDUJoZaZ_Jwk1ICeAl3ILrQLVRumyMgfcXQY3yLY_sW9QvOO_-pV5hP0HCeI5VjP2sAGlZdax5fDWB9qRYOLEKu8daX1wLAqHv7F06V6VFbV_mRNap0lZAw0yVrP-FOypmJuJsZ9gHRvVVcaTYEYR-mDKuMadplEdXgRKiOx3yIYqQYZjxPcVb7AkZ-NeUhd7IgjQlB_naTpoFcw_QxyVDmUjbEGAJH_NwFb9c.C8OgidrNyJ5wDOTz.YOrjnGo7zdboqLz0sCT-ubGrdSrAz0Ty2p25V2V7UEsi254f-FSmk-IQfqiP53tHXix2ewhua9REqftPysliT04w0bwWN-5nK-yJ3mqxJOzLy92GqwQUtWSM9HRZFk5a0oYMfgebHZf7mbvXg335eeArq_y84bKqpmh-awK8Wfpw2Qaqv6NZwPCWAFmMyLgalmVW7wrEXuFhhz7ZSuWugh-6sw0sCmzv_2vb3nsqytZFwiDKV8OYlBlhmILXLwJ5DIh4p6AhybfrwX-8nBEMGljtwTgt_RFHhj-RT_rb3uCrMXT_tzoWpwETWzK1xlON3smL8WroPvpkhHQ92NgbGbeJITzMaZlCiXJtoi6-4T9DdSQ5kyMZ9IUwGBRZrO6af2sNPg3v_3RbkhceQhmptIQvZWF5WIywnJJb0wllCT0o-NkNE0P-SFWrvZUjL9KArIrE8Gk3MbX1Yv2P5SGarDEF.XXAZFNIggYp5XvjH6pJROA" parameters: Accept-LanguageId: name: accept-Language in: header required: false schema: type: string maxLength: 5 minLength: 1 enum: - "es_MX" - "en_US" description: 'Indica el idioma natural y la configuración regional que prefiere el cliente. Valores Posibles: es_MX, en_US' example: "es_MX" Authorization: name: Authorization in: header required: true schema: type: string description: "El Bearer es el Token de autenticación, es una cadena generada por el servidor en respuesta a una solicitud de autenticación al ejecutar el recurso de oauth 2.0." example: "Bearer token" X-IdSeguridad-JWE: name: X-IdSeguridad-JWE in: header required: true schema: type: string description: "Id del certificado JWE." example: "Id llave JWE" X-IdSeguridad-JWS: name: X-IdSeguridad-JWS in: header required: true schema: type: string description: "Id del certificado JWS." example: "Id llave JWS" ContentType: name: Content-Type in: header required: false schema: type: string maxLength: 50 description: "Es la propiedad que indica al servidor que tipo de dato enviado. Valores posibles: `application/json`; `charset=utf-8`" example: "application/json`; `charset=utf-8" Accept: name: Accept in: header required: false schema: type: string maxLength: 50 description: "Indica que tipo de contenido el cliente puede procesar. Se usa para la negociación de contenido, el servidor selecciona una propuesta, la utiliza e informa al cliente de la elección a través de la cabecera de respuesta Content-Type. Valores posibles: `application/json`" example: "application/json" AcceptLanguage: name: Accept-Language in: header required: false schema: type: string maxLength: 10 enum: - "es_MX" - "en_US" description: "Indica el idioma natural y la configuración de región que prefiere el cliente. Valores Posibles: `es_MX` (default) `en_US`" example: "es_MX" Host: name: Host in: header required: false schema: type: string maxLength: 23 enum: - "api-dev.banorte.com" - "api-qa.banorte.com" - "api-sandbox.banorte.com" - "api.banorte.com" description: "Especifica el nombre de dominio del servidor (pahostivirtual), y (opcionalmente) el número de puerto TCP en el que servidor está escuchando. Nota: Este campo solo se utiliza para ambientes previos, se tienen los siguientes valores: `1.api-dev.banorte.com` `2..banorte.com`" example: "api-dev.banorte.com" headers: Strict-Transport-Security: description: "Es una característica de seguridad que permite indicar a consumidores que sólo se debe comunicar con HTTPS en lugar de usar HTTP `Va por default: max-age=31536000 segundos`" schema: type: string example: "max-age=31536000" Cache-Control: description: "Especifica directivas (instrucciones) para almacenar temporalme (caching) tanto en peticiones como en respuestas. `Valor por defaul -store`" schema: type: string example: "no-store" X-Frame-Options: description: "Puede ser usado para indicar si debería permitírsele a navegador renderizar una página en un frame, iframe u object Usarlo para evitar ataques de clickjacking `Valor por default:DENY`" schema: type: string example: "DENY" X-Content-Type-Options: description: "Es un marcador utilizado por el servidor para indicar que tipos MIME anunciados en los encabezados Content-Type no se deben cambiar `Valor por default:nosniff`" schema: type: string example: "nosniff" Content-Type: description: "Es la propiedad usada para indicar el media type (en-US) recurso. `Valor por default: application/json; charset=utf-8`" schema: type: string example: "application/json; charset=utf-8"