Nosotros contamos con una API la cual recibe un JSON determinado, por método POST, que contiene el pedido del cliente y lo inserta en Softrestaurant en el módulo domicilio.
Te adjunto un ejemplo de lo que necesitan lograr:
Los campos que lo componen son:
- storeId: Identificador de restaurant (Se lo pasamos nosotros)
- storepassword: Contraseña asociada al storeId (Se lo pasamos nosotros)
- orderId: Número de orden del sistema integrado, se usa para devolver respuesta de aceptación o rechazo del pedido. (Lo generan ustedes)
- type: Por el momento va fijo en "DELIVERY"
- notes: observaciones generales del pedido.
- client: Información del cliente.
o Name: Nombre del cliente.
o cellphone: Número de contacto del cliente (este número es identificador de cliente)
o Email: Correo electrónico del cliente.
o address: Dirección del cliente.
- orders: Array de productos.
o id: Identificador de producto en Soft Restaurant. (Este id tiene que ser el mismo que tiene ese producto en Softrestaurant, es decir que sus productos van a tener que tener un id asociado que tiene que ser el mismo que en el soft)
o name: Nombre de producto.
o price: precio del producto. (Este es el precio que manejan en la web, no tiene por qué ser igual al de Softrestaurant)
o quantity: cantidad de producto.
o notes: observaciones del producto.
o variations: Array que contiene los opcionales del producto.
Id: identificador del producto opcional en Soft Restaurant.
Name: nombre del producto opcional.
Price: precio del producto opcional.
Quantity: cantidad del producto opcional.
Variations: Array que contiene los opcionales del producto. (contiene los mismos campos id, name, Price, quantity, variations)
notes: observaciones del producto opcional.
Si el restaurant acepta o rechaza el pedido, se les notificará con el siguiente formato:
Aceptar: URL?orderid=1&action=Aceptar&tiempo=15
Rechazar: URL?orderid=1&action=Rechazar&motvio=OUT_OF_ITEMS&comentarios=no hay mas
URL sería un endpoint de ustedes.
tiempo=15 "Entre 15' y 30'"
tiempo=30 "Entre 30' y 45'"
tiempo=45 "Entre 45' y 60'"
tiempo=60 "Entre 60' y 90'"
tiempo=90 "Entre 90' y 120'"
tiempo=120 "Entre 120' y 150'"
tiempo=150 "Entre 150' y 180'"
motivo y comentarios vienen solo si el cliente selecciona un motivo y/o escribe un comentario.