Informations disponibles dans le cadre du reçu de vente
- Numéro de commande et détail des marchandises à débiter du stock de votre côté (créé par vous-même).
- Etiquetage scanné pour élimination ultérieure.
Statuts auxquels il est possible d'envoyer un chèque de reprise
- Le préparateur a récupéré la commande (avant de la remettre au coursier).
- La commande a été annulée après que le préparateur l'a récupérée.
- La commande a été collectée et remise au transporteur - Annulée ou Livrée, quel que soit le statut ultérieur.
- La commande a été livrée ou annulée après avoir été remise au transporteur.
Configuration de l'envoi
Pour réussir la mise en place, il faut transmettre les données au gestionnaire:
- URL de travail avec la terminaison
/result-check - que nous utiliserons pour l'autorisation lors de la requête à l'adresse du premier point;
- un ensemble de statuts pour lesquels nous voulons recevoir un contrôle de résultat.
Schéma
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: Envoi d'un chèque de résultat
paramètres:
- $ref: '#/parameters/ResultCheckRequest'
réponses:
200:
description: Ok
404:
description: Erreur de validation
schema:
$ref: '#/definitions/Error'
422:
description: erreur de validation
schéma: $ref: '#/definitions/Erreur'
500:
description: erreur de serveur
schéma: $ref: '#/definitions/Error'
securityDefinitions:
Bearer:
description: 'Bearer <token here>'
type: apiKey
name: Autorisation
in: header
paramètres:
ResultCheckRequest:
in: body
name: ResultCheckRequest
schema:
type: objet
properties:
externalOrderId:
description: identifiant de la commande dans le système du partenaire
type: string
status:
description: statut de la commande
type: string
enum:
- done
- prêt
- livrée
- annulé
positions:
description: positions de l'ordre
type: array
éléments:
$ref: "#/definitions/OrderPosition"
totalPrice:
description: prix total des articles sans remise
type: string
discountTotalPrice:
description: Coût total des articles avec remises
type: string
deliveredDateTime:
description: date et heure du passage de la commande à l'état "Livré".
type: string
format: date-time
statusSetAt:
description: date et heure auxquelles la commande passe au statut
type: string
format: date-time
cancelledDateTime:
description: date et heure auxquelles la commande passe au statut "Annulé"
type: string
format: date-time
shopId:
description: identifiant interne de la boutique dans le système du partenaire
type: string
x-nullable: false
Définitions:
Position de la commande:
type: objet
propriétés:
marques:
description: tableau de marques numérisées
type: array
éléments:
type: string
productId:
description: identifiant du produit
type: string
originalQuantity:
description: quantité du produit commandé à l'origine. Pièces ou grammes
type: integer
quantity:
description: quantité de produits dans la commande collectée. Pièces ou grammes
type: entier
prix:
description: prix total des produits collectés, sans remise.
type: string
discountPrice:
description: prix total des produits collectés avec prise en compte de la remise.
type: string
unitPrice:
description: Prix par unité de marchandise sans tenir compte de la remise.
type: string
dicountUnitPrice:
description: Prix par unité de produit avec remise
type: string
Erreur:
description: Erreur.
type: objet
obligatoire:
- message
propriétés:
message:
description: message.
type: string
x-nullable: false
code:
description: code du message.
type: integer
x-nullable: false
Exemple de corps d'un chèque de retour
{
"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"
}
Spécificités du contenu du chèque
- Une quantité nulle dans le ResultCheck signifie que l'article a été retiré de la commande par le préparateur.
- Si seul
discountPriceest présent, il s'agit d'un article nouvellement ajouté.
Prix de l'article
Dans le catalogue, il y a un prix d'article (unitPrice) et un prix réduit (discountUnitPrice). Parmi ceux-ci, prix et discountPrice sont pris en compte pour la vérification de la valeur résiduelle selon les règles suivantes:
-
pour les articles de poids:
prix=quantité/ 1000 ×prixunitaire;prix de remise=quantité/ 1000 ×prix unitaire de remise;
-
pour les marchandises à la pièce:
prix=quantité×prix unitaire;prix de remise=quantité×prix unitaire de remise;canceledDateTimeetdeliveredDateTime- les champs seront remplis avec la valeur0001-01-01T00:00:00.000Zjusqu'à ce que la commande soit livrée ou annulée.
L’article vous a-t-il été utile ?
Précédent