Inspiración
Poner a prueba nuestros conocimientos en una problemática real sin tener experiencia.
Lo que hace
Permite la creación y gestión de órdenes de pago para la empresa Bonanza mediante una API REST que actúa como intermediario entre la API de Conekta y Bonanza, simplificando los pagos en efectivo en la red de tiendas OXXO u otras alternativas.
Cómo lo construimos
Utilizamos tecnologías web, como Google Cloud, para alojar nuestra aplicación Node.js con el framework Express. Configuramos el contenedor para que funcione con un consumo eficiente y se adapte según el uso que la API tenga.
Desafíos que enfrentamos
La falta de conocimientos en el consumo de APIs que involucran el manejo de efectivo y el uso de plataformas en la nube.
Logros de los que estamos orgullosos
Poder montar una aplicación funcionando en Google Cloud, entendiendo el flujo de trabajo en el mismo, y el manejo de APIs que requieren una clave para su uso.
Lo que aprendimos
Que la documentación, y principalmente los guías de inicio rápido de servicios y plataformas, son bastante útiles al trabajar bajo presión en temas que hasta cierto punto desconocemos.
Próximos pasos para el Módulo Bonanza
Implementación de tokens para hacer más seguras las transacciones, agregar más opciones de pago, tener un mayor control en los contenedores para escalar correctamente de manera horizontal y agilizar el proceso de desarrollo y producción por parte del equipo.
Crear orden
Se hace una peticion post a la ruta https://api-oxxo-con-yrirtrdqla-uc.a.run.app/ticket
con un JSON como el siguiente:
{
"data": {
"customerInfo": {
"name": "Carlos",
"email": "[email protected]",
"phone": "7351234567"
},
"amount": 6787
}
}
en caso de que todo este bien nos devolverá un JSON:
{
"message": "ok",
"data": {
"id": "ord_2uguZ5rJXLz6wtqvH",
"customer_info": {
"name": "Carlos",
"email": "[email protected]",
"phone": "7351234567"
},
"payment_data": {
"payment_status": "pending_payment",
"barcode_url": "https://barcodes.conekta.com/sandbox_reference.png",
"reference": "98000017160824",
"store_name": "OXXO"
}
}
}
Obtener orden
Se hace una peticion a la ruta https://api-oxxo-con-yrirtrdqla-uc.a.run.app/ticket/{id}}
{
"message": "ok",
"data": {
"customer_info": {
"name": "Carlos",
"email": "[email protected]",
"phone": "7351234567"
},
"payment_data": {
"payment_status": "paid",
"barcode_url": "https://barcodes.conekta.com/sandbox_reference.png",
"reference": "98000017160436",
"store_name": "OXXO"
}
}
}
Built With
- codewhisperer
- containers
- eslint
- express.js
- google-cloud
- node.js
- rest
- zod
Log in or sign up for Devpost to join the conversation.