Información disponible como parte de la comprobación de resultados
- Número de pedido y desglose de las mercancías para su posterior cargo en las existencias por su parte (creación propia).
- Etiquetado escaneado para su posterior eliminación.
Ejemplo del cuerpo la comprobación de resultados
{
"canceledDateTime": "0001-01-01T00:00:00.000Z",
"deliveredDateTime": "2024-01-12T10:34:10.770Z",
"discountTotalPrice": "69.41",
"externalOrderId": "12-22-2201",
"positions": [
{
"discountPrice": "37.41",
"markings": [],
"originalQuantity": 1000,
"price": "412.11",
"productId": "1111",
"unitPrice": "393.23",
"discountUnitPrice": "35.7",
"quantity": 1048
},
{
"discountPrice": "32",
"markings": [],
"originalQuantity": 1,
"price": "32",
"productId": "7574",
"unitPrice": "32",
"discountUnitPrice": "32",
"quantity": 1
}
],
"shopId": "XX113",
"status": "ready",
"statusSetAt": "2024-01-12T10:34:10.770Z",
"totalPrice": "444.11"
}
Especificación del contenido de la Comprobación de Resultados
- Una cantidad cero en el la Comprobación de Resultados significa que la mercancía ha sido eliminado del pedido por el selector.
- Si sólo está presente
discountPrice, se trata de una mercancía recién añadido.
Precio de la mercancía
En el catálogo, hay un precio de la mercancía (unitPrice) y un precio con descuento (discountUnitPrice). De ellos, el precio y el precio con descuento se tienen en cuenta para la comprobación del resalto según las siguientes reglas:
-
para mercancías de peso:
price=quantity/ 1000 ×unitPrice;discountPrice=quantity/ 1000 ×discountUnitPrice;
-
para mercancías por piezas:
-
price=quantity/unitPrice;discountPrice=quantity/discountUnitPrice;canceledDateTimeydeliveredDateTime— los campos se rellenarán con el valor “0001-01-01T00:00:00.000Z” hasta que el pedido se entregue o se cancele.
Esquema
swagger: "2.0"
info:
title: Result Check API
description: Result Check API
version: 1.0.0
schemes:
- http
basePath: /
consumes:
- application/json
produces:
- application/json
paths:
/result-check:
post:
operationId: PostResultCheck
security:
- Bearer: [ ]
description: Envío del cheque resultante
parameters:
- $ref: '#/parameters/ResultCheckRequest'
responses:
200:
description: Ok
404:
description: Error de validación
schema:
$ref: '#/definitions/Error'
422:
description: Error de validación
schema:
$ref: '#/definitions/Error'
500:
description: Error del servidor
schema:
$ref: '#/definitions/Error'
securityDefinitions:
Bearer:
description: 'Bearer <token here>'
type: apiKey
name: Authorization
in: header
parameters:
ResultCheckRequest:
in: body
name: ResultCheckRequest
schema:
type: object
properties:
externalOrderId:
description: id de pedido en el sistema del socio
type: string
status:
description: estado del pedido
type: string
enum:
- done
- ready
- delivered
- canceled
positions:
description: posiciónes de pedido
type: array
items:
$ref: "#/definitions/OrderPosition"
totalPrice:
description: Coste total de las mercancías sin descuentos
type: string
discountTotalPrice:
description: Coste total de las mercancías con descuentos
type: string
deliveredDateTime:
description: fecha y hora de paso del pedido al estado «Entregado»
type: string
format: date-time
statusSetAt:
description: fecha y hora de paso del pedido al estado
type: string
format: date-time
canceledDateTime:
description: fecha y hora de paso del pedido al estado «Cancelado»
type: string
format: date-time
shopId:
description: propio identificador de tienda en el sistema del socio
type: string
x-nullable: false
definitions:
OrderPosition:
type: object
properties:
markings:
description: Conjunto de marcas escaneadas
type: array
items:
type: string
productId:
description: id del producto
type: string
originalQuantity:
description: Cantidad de mercancía pedida originalmente. Piezas o gramos
type: integer
quantity:
description: Cantidad de mercancía en el pedido recogido. Piezas o gramos
type: integer
price:
description: Coste total de la mercancía recogida sin tener en cuenta el descuento
type: string
discountPrice:
description: Coste total de la mercancía recogida, incluido el descuento
type: string
unitPrice:
description: Precio por unidad sin descuento
type: string
dicountUnitPrice:
description: Precio por unidad con descuento
type: string
Error:
description: Error.
type: object
required:
- message
properties:
message:
description: Mensaje.
type: string
x-nullable: false
code:
description: Código del mensaje.
type: integer
x-nullable: false
Configuración del envío
Pasar datos a través del gestor para una configuración correcta:
- URL de trabajo con la terminación
/resultado-comprobado; - un token que utilizaremos para la autorización cuando hagamos una petición a la dirección del primer párrafo;
- un conjunto de estados para los que queremos obtener una comprobación de resultados.
Estados para los que es posible enviar una comprobación de resultado
|
Suceso para el que es posible el envío |
Estado del evento |
Estado del pedido en el cheque de resultado |
|
Recolector recogió el pedido (antes de entregarlo al mensajero) |
|
|
|
El pedido fue cancelado después de que el recolector recogiera el pedido |
|
|
|
Pedido entregado o anulado después de entregarlo al mensajero |
|
|
|
Se recogió el pedido y se entregó al mensajero |
|
|