5. Venta

Pasos para implementar una venta.

Ahora que has podido autorizar tu aplicación y obtener un access_token, el siguiente paso es realizar una transacción de prueba.

👍

Recuerda que debes conectar a internet la terminal, configurar la aplicación para poder realizar una venta y configurar el servicio de respuesta como se indica en la sección de Introducción.

5.1 Estructura de una petición.

POST https://api-154.api-netpay.com/integration-service/transactions/sale

Headers
Los siguientes headers deben ser enviados en la petición

  • Content-Type: application/json
  • Authorization: Bearer {{access_token}}
NombreDescripciónTipoValorRequerido
Content-TypeIdentificador de dos partes para formatos de archivo transmitidos por Internet.stringapplication/jsontrue
AuthorizationEsquema de autenticación HTTP.stringBearer {access_token}true

🚧

Nota

  • La terminal debe tener acceso a internet en todo momento sin restricciones al dominio y subdominios que involucren a *.netpay.com.mx para recibir y enviar solicitudes.
  • Debe estar encendida la pantalla de la terminal y estar en primer plano la pantalla principal de la aplicación.

5.2 Estructura de un JSON de venta.

Para poder generar una transacción es necesario formar un JSON con la siguiente información.

ParámetroDescripción
traceabilityObjeto JSON para enviar información relevante para el comercio.
serialNumberNúmero de serie. Cadena numérica a 10 dígitos ubicada en la parte posterior de la terminal (S/N).
storeIdNúmero identificador de comercio asignado por terminal.
msiNúmero que identifica la promoción a MSI que se desea integrar Ej: 3, 6, 9, 12 o 18 msi ( esta promoción no aplica para tarjetas Amex) (Este dato no es obligatorio, solo si el cliente lo requiere).
folioNumberNúmero de folio que se mostrará en el ticket.
access_tokenToken de acceso necesario para consumir el servicio.
Ver sección Generar Token.
disablePrintAnimationBandera de control con valor por default false. Al enviarla en true, se omitirá el ticket oficial de NetPay. (Opcional.)

Body

En la petición, se debe mandar un objeto JSON con los datos según se requieran. Los 5 valores mínimos requeridos son serialNumber, amount, storeId, traceability y folionumber.

{
    "serialNumber": "{serialNumber}",
    "amount": "{{amount}}",
    "storeId": "{storeId}",
    "folioNumber":"{folioNumber}",
    "msi":"{msi}",
    "traceability": {}
}

Ejemplo:

{
  "traceability": {  
    "idProducto": "123456",
    "idTienda": 0987
	},
  "serialNumber": "1400000000",
  "amount":0.01,
  "folioNumber":"123",
  "storeId": "9194",
  "msi":"03",
  "disablePrintAnimation": true

}

Tabla de parámetros mandatorios y opcionales a enviar en una petición de Venta.

Nombre campoDescripciónTipo de dato
serialNumberNúmero de serie del dispositivo al que se requiere enviar la petición.String (Máximo hasta 20 caracteres)Mandatorio
amountMonto total de la transacción.Double(15,2)Mandatorio
storeIdIdentificador de la tienda asignada al dispositivo.String (Máximo hasta 38 caracteres)Mandatorio
folioNumberNúmero identificador de transacción que puede ser enviado en la solicitud de venta.String (Máximo hasta 250 caracteres)Recomendable
traceabilityObjeto JSON para enviar información relevante para el comercio (puede ser algún id de la transacción que posteriormente les servirá para hacer “match” dentro de su sistema.Object.Mandatorio
msiNúmero que identifica la promoción a MSI que se desea integrar Ej: 03, 06, 09, 12 o 18 msi (esta promoción no aplica para tarjetas Amex)String (Máximo 2 carateres).Opcional
tipCampo que hace referencia al envío de propina (Predeterminadamente tiene un límite del 25%)StringOpcional
disablePrintAnimationBandera de control con valor default falso, cambiarlo a true desactiva la impresión del ticket oficial de NetPay. Este campo debe enviarse sólo si el comercio cuenta con una impresora propia.BoolOpcional

🚧

Nota.

Si se requiere el uso de la propina y si el monto debe ser mayor al 25%, el comercio se puede comunicar con su comercial asignado correspondiente para que se coordine con el equipo de operaciones y ese límite sea aumentado al porcentaje que sea necesario. Este aumento de límite ya se realizaría en producción después de terminar con la integración y de realizar la certificación exitosamente como lo indica la sección de 10. Certificación y pasos a seguir de esta documentación.

5.3 Ejemplo de solicitud / respuesta.

A continuación, se muestran ejemplos en diferentes lenguajes de programación para realizar una petición y solicitar una venta con los diferentes mensajes de respuesta.