Aller au contenu principal

updateOrderByMarkerAndId

Modification de la commande dans le stockage des commandes. 🔐 Cette méthode nécessite l'autorisation.

Description

Cette méthode met à jour un objet de stockage de commande par marqueur. La méthode ajoutera la langue par défaut au corps de la requête. Si vous souhaitez changer la langue, il suffit de la passer en tant que deuxième argument. Elle renvoie une promesse qui se résout en un objet IBaseOrdersEntity.

Orders.updateOrderByMarkerAndId(

marker*, id*, body*, body.formIdentifier*, body.paymentAccountIdentifier*, body.formData*, formData.marker*, formData.type*, formData.value*, body.products*, products.productId*, products.quantity*, body.couponCode, body.additionalDiscountsMarkers, body.bonusAmount, langCode

);

Schéma des paramètres

Schéma

marker(obligatoire) : string
L'identifiant textuel de l'objet de stockage de commande
exemple : "order_storage_1"

id(obligatoire) : number
ID de l'objet de commande
exemple : 12345

body(obligatoire) : IOrderData
Objet pour mettre à jour une commande
exemple :

{
"formIdentifier": "bar-orders-form",
"paymentAccountIdentifier": "usd-payment",
"formData": {
"marker": "name_1",
"value": "Name",
"type": "string"
},
"products": [
{
"productId": 1,
"quantity": 2
}
],
"currency": "USD"
}

body.formIdentifier(obligatoire) : string
Identifiant textuel de l'objet de formulaire lié au dépôt de commande.
exemple : "bar-orders-form"

body.paymentAccountIdentifier(obligatoire) : string
Identifiant textuel de l'objet de paiement lié au dépôt de commande.
exemple : "payment-1"

body.formData(obligatoire) : IOrdersFormData | IOrdersFormData[]
Données du formulaire liées au dépôt de commande.
exemple :

[
{
"marker": "name_1",
"value": "Name",
"type": "string"
}
]

formData.marker(obligatoire) : string
Marqueur du champ de formulaire.
exemple : "name_1"

formData.type(obligatoire) : string
Type de valeur.
exemple : "string"

formData.value(obligatoire) : string
Valeur.
exemple : "Nom"

body.products(obligatoire) : IOrderProductData[]
Un tableau de produits commandés.
exemple : []

products.productId(obligatoire) : number
Identifiant du produit.
exemple : 1

products.quantity(obligatoire) : number
Quantité du produit.
exemple : 2

body.couponCode : string
Code de coupon.

body.additionalDiscountsMarkers : string[]
Tableau de marqueurs de réduction supplémentaires.

body.bonusAmount : number
Montant du bonus à appliquer.

langCode : string
Code de langue. Par défaut : "en_US"
exemple : "en_US"

Exemples

Exemple minimal


const body = {
"formIdentifier": "orderForm",
"paymentAccountIdentifier": "cash",
"formData": {
{
"marker": "order_name",
"type": "string",
"value": "Ivan"
}
},
"products": [
{
"productId": 2,
"quantity": 2
}
]
};

const response = await Orders.updateOrderByMarkerAndId("my-order", 1, body);

Exemple de réponse

{
"id": 55,
"formIdentifier": "orderForm",
"paymentAccountIdentifier": "cash",
"formData": [
{
"marker": "order_name",
"value": "Ivan",
"type": "string"
}
],
"products": [
{
"productId": 2957,
"quantity": 2
}
],
"currency": "",
"totalSum": 300,
"bonusApplied": 0,
"totalDue": 300,
"discountConfig": {
"orderDiscounts": [],
"productDiscounts": [],
"coupon": null,
"settings": {
"allowStacking": false,
"maxDiscountValue": null,
"allowGiftStacking": false,
"maxBonusPaymentPercent": null,
"minBonusAmount": null,
"minOrderAmountForBonus": null,
"giftRefundPolicy": "KEEP_GIFT"
},
"additionalDiscountsMarkers": [],
"totalRaw": 300,
"totalSumWithDiscount": 300,
"excludedGiftProductIds": [],
"bonus": null,
"bonusApplied": 0,
"totalDue": 300
}
}

Schéma de réponse

Schéma : IBaseOrdersEntity

id : number
Identifiant de l'objet.
exemple : 1

formIdentifier : string
Identifiant textuel du formulaire.
exemple : "bar-orders-form"

paymentAccountIdentifier : string
Identifiant textuel du paiement de la commande.
exemple : "payment-1"

formData : IOrdersFormData[]
Données soumises par le formulaire lié au dépôt de commande.
exemple :

[
{
"marker": "name_1",
"value": "Name",
"type": "string"
}
]

formData.marker : string
Marqueur du champ de formulaire.
exemple : "name_1"

formData.type : string
Type de valeur.
exemple : "string"

formData.value : string
Valeur.
exemple : "Nom"

products : IOrderProductsData[]
Tableau de produits ajoutés à la commande.
exemple :

[
{
"id": 2957,
"title": "Cosmo",
"sku": null,
"previewImage": null,
"price": 150,
"quantity": 2
}
]

products.productId : number
Identifiant du produit.
exemple : 1

products.quantity : number
Quantité du produit.
exemple : 2

currency : string
Monnaie utilisée pour payer la commande.
exemple : "USD"

totalSum : number
Montant total de la commande.
exemple : NaN

createdDate : string
Date de création de la commande.
exemple : "2023-10-01T12:00:00Z"

statusIdentifier : string
Identifiant textuel de l'objet d'état de la commande (si non défini, l'état par défaut sera attribué).
exemple : "status-1"

couponCode : string
**

discountConfig : IOrderDiscountConfig
Configuration de réduction résolue appliquée à la commande.

discountConfig.bonus : IOrderDiscountBonus | null
Résultat du calcul de bonus, ou null lorsque les bonus ne sont pas utilisés.

bonus.availableBalance : number
Solde de bonus de l'utilisateur disponible au moment du calcul.
exemple : 0

bonus.bonusApplied : number
Montant du bonus effectivement appliqué à cette commande.
exemple : 0

bonus.maxBonusDiscount : number
Montant maximum de bonus autorisé à être dépensé sur cette commande.
exemple : 0

bonus.minBonusAmount : number | null
Solde minimum de bonus requis pour utiliser des bonus, ou null s'il n'y a pas de seuil.
exemple : null

bonus.minOrderAmountForBonus : number | null
Montant total minimum requis pour appliquer des bonus, ou null s'il n'y a pas de seuil.
exemple : null

discountConfig.coupon : unknown | null
Coupon résolu, ou null lorsque aucun coupon n'est appliqué.

discountConfig.orderDiscounts : unknown[]
Réductions au niveau de la commande qui ont été correspondantes et appliquées.

discountConfig.productDiscounts : unknown[]
Réductions au niveau du produit qui ont été correspondantes et appliquées.

discountConfig.settings : IOrderDiscountSettings
Paramètres d'accumulation et de plafond utilisés lors du calcul.

settings.allowGiftStacking : boolean
Indique si plusieurs réductions de cadeaux peuvent être combinées.
exemple : false

settings.allowStacking : boolean
Indique si plusieurs réductions non-cadeaux peuvent être combinées.
exemple : false

settings.maxDiscountValue : number | null
Plafond strict sur la valeur totale de la réduction, ou null si sans plafond.
exemple : null

discountConfig.additionalDiscountsMarkers : string[]
Marqueurs de réductions supplémentaires demandées par le client (omises dans les réponses d'aperçu).

discountConfig.bonusApplied : number
Montant du bonus appliqué à la commande (omise dans les réponses d'aperçu).
exemple : 0

discountConfig.excludedGiftProductIds : string[]
Identifiants de produits exclus de la sélection de cadeaux (omises dans les réponses d'aperçu).

discountConfig.totalDue : number
Montant total dû après réductions et bonus (omise dans les réponses d'aperçu).
exemple : 300

discountConfig.totalRaw : number
Montant total avant réductions (omise dans les réponses d'aperçu).
exemple : 300

discountConfig.totalSumWithDiscount : number
Montant total après réductions mais avant bonus (omise dans les réponses d'aperçu).
exemple : 300

bonusAmount : number
Montant du bonus appliqué à la commande.

bonusApplied : number
Bonus appliqué à la commande.

totalDue : number
Total dû après bonus.