To help with migration to the eCommerce Orders API, refer to the table below for field changes between the Wix Stores order object and the eCommerce order object.
Note that some fields are accessible via other eCommerce APIs like Order Transactions or Order Fulfillments. In these cases, the way to access the info is described in the third column.
The address object used in the eCommerce APIs is slightly different to the one used in the Stores APIs. For more details, refer to the address object conversion table.
The eCommerce Order Updated event fires when a Stores order and/or an eCommerce order is updated. For more details on webhooks, refer to the Webhook Conversion Table below.
Fields marked with an asterisk (*) signify little to no change in semantics or access.
Stores Order Object | eCommerce Order Object | Notes |
---|---|---|
_id * | _id | |
number * | number | |
dateCreated | createdDate | |
buyerInfo._id | buyerInfo.contactId & buyerInfo.memberId | |
buyerInfo._id and buyerInfo._identityType: "MEMBER" | buyerInfo.memberId | |
buyerInfo._id and buyerInfo._identityType: "CONTACT" | buyerInfo.contactId | |
buyerInfo.firstName | billingInfo.contactDetails.firstName | |
buyerInfo.lastName | billingInfo.contactDetails.lastName | |
buyerInfo.phone | billingInfo.contactDetails.phone | |
buyerInfo.email * | buyerInfo.email | |
currency * | currency | |
weightUnit * | weightUnit | |
totals.subtotal | priceSummary.subtotal.amount | |
totals.shipping | priceSummary.shipping.amount | |
totals.tax | priceSummary.tax.amount | |
totals.discount | priceSummary.discount.amount | |
totals.total | priceSummary.total.amount | |
totals.weight | An order's total weight is equal to (lineItems[0].physicalProperties.weight X lineItems[0].quantity) + (lineItems[1].physicalProperties.weight X lineItems[1].quantity) and so on. | |
totals.quantity | An order's total line item quantity is equal to lineItems[0].quantity + lineItems[1].quantity + lineItems[2].quantity and so on. | |
totals.refund | balanceSummary.refunded.amount | |
totals.giftCard | orderTransactions.payments[i].amount when orderTransactions.payments[i].giftcardPaymentDetails has value. Available via Order Transactions. | Pass the order ID to the List Transactions For Single Order method to retrieve this info. |
billingInfo.paymentMethod | orderTransactions.payments[i].regularPaymentDetails.paymentMethod , available via Order Transactions. | Pass the order ID to the List Transactions For Single Order method to retrieve this info. |
billingInfo.paymentProviderTransactionId | orderTransactions.payments[i].regularPaymentDetails.providerTransactionId , available via Order Transactions. | Pass the order ID to the List Transactions For Single Order method to retrieve this info. |
billingInfo.paymentGatewayTransactionId | orderTransactions.payments[i].regularPaymentDetails.gatewayTransactionId , available via Order Transactions. | Pass the order ID to the List Transactions For Single Order method to retrieve this info. |
billingInfo.paidDate | orderTransactions.payments[i].createdDate , available via Order Transactions. | Pass the order ID to the List Transactions For Single Order method to retrieve this info. |
billingInfo.refundableByPaymentProvider = true | orderTransactions.payments[i].refundDisabled = false , available via Order Transactions. | Pass the order ID to the List Transactions For Single Order method to retrieve this info. |
billingInfo.address * | billingInfo.address | Address object conversion table. |
shippingInfo.code * | shippingInfo.code | |
shippingInfo.deliverByDate | shippingInfo.logistics.deliverByDate | |
shippingInfo.deliveryOption | shippingInfo.title | |
shippingInfo.shippingRegion | shippingInfo.region.name | |
shippingInfo.shippingDetails.address | shippingInfo.logistics.shippingDestination.address | Address object conversion table. |
shippingInfo.shipmentDetails.discount | shippingInfo.cost.discount.amount | |
shippingInfo.shipmentDetails.tax | shippingInfo.cost.taxDetails.totalTax.amount | |
shippingInfo.shipmentDetails.priceData.taxIncludedInPrice | taxIncludedInPrices | |
shippingInfo.shipmentDetails.priceData.price | shippingInfo.cost.totalPriceAfterTax.amount | |
shippingInfo.pickupDetails.pickupAddress | shippingInfo.logistics.pickupDetails.address | Address object conversion table. |
shippingInfo.pickupDetails.pickupInstructions | shippingInfo.logistics.instructions | |
shippingInfo.estimatedDeliveryTime | shippingInfo.logistics.deliveryTime | |
buyerNote * | buyerNote | |
archived * | archived | |
paymentStatus * | paymentStatus | |
paymentStatus: PENDING | status: INITIALIZED | |
fulfillmentStatus * | fulfillmentStatus | For more info, pass an order ID to the List Fulfillments For Single Order method. |
fulfillmentStatus: CANCELED | status: CANCELED | |
lineItems[i].index | lineItems[i]._id | While the lineItems[i].index in Stores Orders was an int32 type, the eCommerce Order's lineItems[i]._id field is of type GUID. |
lineItems[i].quantity * | lineItems[i].quantity | |
lineItems[i].name | lineItems[i].productName.original | |
lineItems[i].translatedName | lineItems[i].productName.translated | |
lineItems[i].productId | lineItems[i].catalogReference.catalogItemId | The catalogReference object links between eCommerce APIs and catalogs like Wix Stores. Learn more about eCommerce integration for Wix Stores. |
lineItems[i].lineItemType: "PHYSICAL" | lineItems[i].itemType.preset: "PHYSICAL" | |
lineItems[i].lineItemType: "DIGITAL" | lineItems[i].itemType.preset: "DIGITAL" | |
lineItems[i].lineItemType: "CUSTOM_AMOUNT_ITEM" | lineItems[i].itemType.custom and lineItems[i].catalogReference is empty. | |
lineItems[i].options | lineItems[i].descriptionLines | |
lineItems[i].customTextFields | lineItems[i].catalogReference.options | Within the catalogReference.options look for the customTextFields key. |
lineItems[i].weight | lineItems[i].physicalProperties.weight | |
lineItems[i].mediaItem.url | lineItems[i].image | |
lineItems[i].mediaItem.height | lineItems[i].image.height | |
lineItems[i].mediaItem.width | lineItems[i].image.width | |
lineItems[i].mediaItem._id | lineItems[i].image._id | |
lineItems[i].mediaItem.altText | lineItems[i].image.altText | |
lineItems[i].sku | lineItems[i].physicalProperties.sku | |
lineItems[i].notes | lineItems[i].descriptionLines[i].plainText.original | |
lineItems[i].variantId | lineItems[i].catalogReference.options | The catalogReference object links between eCommerce APIs and catalogs like Wix Stores. Learn more about eCommerce integration for Wix Stores. |
lineItems[i].fulfillerId * | lineItems[i].fulfillerId | |
lineItems[i].discount | lineItems[i].totalDiscount.amount | |
lineItems[i].tax | lineItems[i].taxDetails.totalTax.amount | |
lineItems[i].priceData.taxIncludedInPrice | taxIncludedInPrices | |
lineItems[i].priceData.price | lineItems[i].price.amount | |
lineItems[i].priceData.totalPrice | lineItems[i].totalPriceAfterTax.amount | |
activities[i].type * | activities[i].type | |
activities[i].TRACKING_LINK_WAS_SET | activities[i].TRACKING_LINK_SET | |
activities[i].INVOICE_WAS_SET | activities[i].INVOICE_ADDED | |
activities[i].INVOICE_WAS_SENT | activities[i].INVOICE_SENT | |
activities[i].author | activities[i].authorEmail | |
activities[i].message | activities[i].merchantComment.message | If activities.type = "MERCHANT_COMMENT" |
activities[i].timestamp | activities[i].createdDate | |
invoiceInfo | Not available in eCommerce order object. | Currently, this information is held in the Stores order object. |
fulfillments | Not available in eCommerce order object. | For more info, pass an order ID to the List Fulfillments For Single Order method. |
discount.appliedCoupon.couponId | appliedDiscounts[i].coupon._id | Search the appliedDiscounts array for the coupon field; couponId is coupon._id |
discount.appliedCoupon.name | appliedDiscounts[i].coupon.name | Search the appliedDiscounts array for the coupon field; name is coupon.name |
discount.appliedCoupon.code | appliedDiscounts[i].coupon.code | Search the appliedDiscounts array for the coupon field; code is coupon.code |
customField.value | customFields[i].value.stringValue | Note: customFields is an array |
customField.title | customFields[i].title | |
customField.translatedTitle | customFields[i].translatedTitle | |
cartId | Not returned in the eCommerce order object. | Replaced by checkoutId |
buyerLanguage * | buyerLanguage | |
channelInfo.type * | channelInfo.type | |
channelInfo.externalOrderId * | channelInfo.externalOrderId | |
channelInfo.externalOrderUrl * | channelInfo.externalOrderUrl | |
enteredBy._id and enteredBy._identityType: "MEMBER" | createdBy.memberId | |
enteredBy._id and enteredBy._identityType: "USER" | createdBy.userId | |
enteredBy._id and enteredBy._identityType: "APP" | createdBy.appId | |
enteredBy._id and enteredBy._identityType: "CONTACT" | createdBy.visitorId | Previously, for a buyer that is not logged in, CONTACT type and ID were returned. in the eCommerce API, visitorId is returned. Note: the ID itself will also be different. |
lastUpdated | updatedDate | |
numericId | - | Removed due to added cursor paging functionality |
refunds | orderTransactions.refunds , available via Order Transactions. | Pass the order ID to the List Transactions For Single Order method to retrieve this info. |
*Fields marked with an asterisk signify little to no change in semantics or access.