Otros
La integración de facturas requiere de una conexión particular de cada cliente a nuestro servidor SFTP.
Esta conexión se la creará uno de nuestros propios técnicos y se enviará a la cuenta de correo electrónico que se introdujo en el momento del registro de la empresa en Polpoo. Como ERP, deberéis pedir a la empresa que os otorgue las siguientes credenciales:
Usuario: Nombre de usuario.
Contraseña: Contraseña del usuario.
Servidor: Dirección a la que conectarse.
Puerto: Puerto por el cual se conectará el cliente a nuestro servidor.
También recibiréis la información del directorio de la empresa donde deberéis realizar las integraciones correspondientes.
En cuanto a la configuración, la empresa deberá introducir un correo electrónico de soporte para las integracionespara que, en caso de haber algún tipo de error en alguno de los procesos, el ERP pueda observar cuál ha sido la incidencia. Esto es configurable desde la Configuración de la empresa, en el apartado Integraciones.
El fichero para la integración de pedidos es un fichero de recogida de datos, es decir, los pedidos que hayan llegado a Polpoo podrán recogerse en forma de fichero para el tratamiento de la información.
Hay dos posibilidades de tratar este el fichero de pedidos:
Si se tiene configurado el envío de pedidos una vez al día a una concreta, el fichero de pedidos contendrá todos los pedidos que hayan entrado hasta esa hora y el fichero se llamará orders.json en concreto.
Si se tiene configurado el envío de pedidos por intervalo tiempo (cada X horas o minutos) el fichero de pedidos contendrá todos los pedidos que hayan entrado en ese intervalo y el fichero se llamará orders_companyX_YYYY.json, donde X es el número de compañía y YYYY es la fecha y hora de creación del fichero.
En ambos casos estará codificado en UTF-8.
Este documento se podrá encontrar en el directorio (./companyX/orders), donde X es el número de la compañía que se ha enviado vía mail.
Se definen los campos que pertenecen a este fichero de la siguiente manera:
* La información obligatoria está marcada en rojo. En caso de que no se tenga la información de un campo opcional, no se tiene que añadir la etiqueta en el fichero .json.
id string
Identificador del pedido.
code string
Código del pedido.
orderDate datetime
Fecha de entrega del pedido.
observations string
Observaciones del pedido.
fromApp boolean
Si el pedido proviene de la app o no.
statusOrderId integer
Estado en el que se encuentra el pedido.
deliveryPointId integer
Identificador del cliente.
name string
Nombre del cliente.
address string
Dirección del cliente.
phoneNumber string
Número de teléfono del cliente.
commercial string
Nombre del comercial que ha pasado el pedido.
orderProducts.quantity float
Cantidad del producto.
orderProducts.price float
Precio del producto.
orderProducts.taxPercent integer
Impuesto sobre el Valor Añadido (IVA) del producto.
orderProducts.equivalencePercent float
Porcentaje del recargo de equivalencia del producto.
orderProducts.tax float
Precio del producto con el IVA.
orderProducts.equivalence float
Precio del producto con el recargo de equivalencia.
orderProducts.subTotal float
Precio total del producto sin IVA y/o recargo de equivalencia.
orderProducts.total float
Precio total del producto con IVA y/o recargo de equivalencia.
orderProducts.product.id integer
Identificador del producto.
orderProducts.product.code string
Código del producto.
orderProducts.product.name string
Nombre del producto.
orderProducts.measure.id integer
Identificador de la medida del producto.
orderProducts.measure.name string
Nombre de la medida del producto.
status.id integer
Identificador del estado del pedido.
status.name string
Nombre del estado del pedido.
deliveryPoint.id string
Identificador único del cliente.
deliveryPoint.name string
Nombre del cliente.
deliveryPoint.nif string
NIF del cliente.
deliveryPoint.address string
Dirección principal de envío del cliente.
deliveryPoint.deliveryWindowStart integer
Hora en la que se puede empezar a repartir en un cliente (segundos).
deliveryPoint.deliveryWindowEnd integer
Hora hasta la que se puede ir a repartir en un cliente (segundos).
deliveryPoint.population string
Población del cliente.
deliveryPoint.postalCode string
Código postal del cliente.
deliveryPoint.province string
Provincia de la dirección del cliente.
deliveryPoint.phoneNumber string
Número de teléfono del cliente.
deliveryPoint.email string
Correo electrónico del cliente.
deliveryPoint.useBillingAddress boolean
Si la dirección de facturación es la misma que la de entrega.
deliveryPoint.billingAddress string
Dirección de facturación del cliente.
{
"orders": [
{
"id": "119029",
"code": "45466770",
"orderDate": "2020-01-20",
"observations": "Observaciones",
"fromApp": true,
"statusOrderId": 1,
"deliveryPointId": 21,
"name": "Empresa Prueba SL",
"address": "PG. Sant Joan 6, 08009, Barcelona",
"phoneNumber": "34666555666",
"commercial": "Juan Valdes",
"orderProducts": [{
"quantity": 7,
"price": 0.89,
"taxPercent": 21,
"equivalencePercent": 5.2,
"tax": 1.07,
"equivalence": 0.94,
"subTotal": 6.23,
"total": 7.49,
"product": {
"id": "12",
"code": "PX-34",
"name": "Manzana Pink Pearl"
},
"measure": {
"id": "4",
"name": "KG"
},
}],
"status": {
"id": "1",
"name": "En proceso"
},
"deliveryPoint": {
"id": "1000",
"name": "Frutería Francisco",
"nif": "12345678A",
"address": "Av. Generalitat nº9, Barcelona",
"deliveryWindowStart": 32400,
"deliveryWindowEnd": 46800,
"population": "Barcelona",
"postalCode": "08001",
"province": "Barcelona",
"phoneNumber": "666555777",
"email": "fruteria@gmail.com",
"useBillingAddress": true,
"billingAddress": "Av. Generalitat nº9, Barcelona",
"status_delivery_point": {
"id": "1",
"name": "Cliente"
}
}
}
]
}
Para enviar la información de los pedidos desde Polpoo al SFTP iremos al menú Pedidos.
Una vez dentro del apartado de pedidos, clicaremos en el botón Enviar pedidos para realizar el envío. Aparecerá una venta para confirmar el envío del fichero de pedidos al SFTP.
Una vez aceptado, ya tendremos el fichero json de pedidos en el SFTP.