Skip to main content
Version: 7.6.x

Structured Messages Returned by Cortex

Cortex returns the following types of Structured Messages:

  • NeedInfo Messages
  • Field Validation Errors
  • Business State Errors

NeedInfo Messages​

NeedInfo messages are returned on GET operations with Status Code 200 OK, or on POST operations with Status Code 409 Conflict. Messages optionally contain a link to an advised resource type for resolution of the message.

Message IDMessage FieldsAdvised resourcesDefault debug message
bundle.does.not. contain.min. constituentsitem-code, min-quantity, current-quantityBundle does not contain the minimum number of required bundle constituents.
cart.emptyShopping cart is empty.
need.billing.addressorders. billingaddress-infoBilling address must be specified.
need.datapolicy. consentdata-policyNeed user consent for data policy data-policy.
need.emailorders.email-infoCustomer email address must be specified.
need.payment.methodpaymentmethods. paymentmethod-infoPayment method must be specified.
need.shipping.addressshipmentdetails. destination-infoShipping address must be specified.
need.shipping.optionshipmentdetails .shipping-option-infoShipping option must be chosen.

Warning Messages​

Warning messages are returned on GET operations with Status Code 200 OK.

Message IDDefault debug message
cart.is.not.emptyShopping cart already contains <#> item(s). Please consider clearing your shopping cart before continuing or you may continue and additional item(s) will be added or updated with the existing cart item(s).

Field Validation Errors​

Field validation errors can occur on POST and PUT operations. Errors are returned as Structured Messages with Status 400 Invalid Request.

Message IDMessage FieldsExample Message Template
field.requiredfield-name{field-name} value is required.
field.invalid.sizefield-name, min-size, max-size{field-name} value must contain between {min-size} and {max-size} characters.
field.invalid.formatfield-name, invalid-value, reg-exp{field-name} value '{invalid-value}' must match the following regular expression: {reg-exp}.
field.invalid.email.formatfield-name, invalid-value{field-name} value {invalid-value} must be a valid email format.
field.invalid.boolean.formatfield-name, invalid-value{field-name} value {invalid-value} must be a boolean (true or false).
field.invalid.decimal.formatfield-name, invalid-value{field-name} value {invalid-value} must be a decimal.
field.invalid.integer.formatfield-name ,invalid-value{field-name} value {invalid-value} must be an integer.
field.invalid.datetime.formatfield-name, invalid-value{field-name} value {invalid-value} must be in ISO8601 date time format (YYYY-MM-DDThh:mm:ssTZD).
field.invalid.date.formatfield-name, invalid-value{field-name} value {invalid-value} must be in ISO8601 date format (YYYY-MM-DD).
field.invalid.option.valuefield-name, invalid-value{field-name} value {invalid-value} must match a valid option.
field.invalid.minimum.valuefield-name, min-value, invalid-value{field-name} value {invalid-value} must be greater than or equal to {min-value}.
field.invalid.minimum.valuefield-nameQuantity field is missing or has invalid value.
field.invalid.minimum.valuefield-namequantity value must be greater than or equal to 1.
field.invalid.integer.formatfield-namequantity value must be an integer.

Request Entity Too Large Errors​

Request entity too large errors can occur on POST and PUT operations. Errors are returned as Structured Messages with Status 413 Request Entity Too Large.

Message IDMessage FieldsExample Message Template
cart.request.too.largemaximum-number-of-itemsThe request is too large. The maximum number of items that can be added to a cart in a single request is {maximum-number-of-items}. To add more items, create another request.

Business State Errors​

Business state errors can occur on POST, PUT and DELETE operations. Errors are returned as Structured Messages with the HTTP status code 409 Conflict.

Message IDMessage FieldsDefault debug message
bundle.exceeds.max.constituentsitem-code,max-quantity,requested-quantityBundle contains more than the maximum number of allowed bundle constituents.
cart.gift.certificate.insufficient.balancegift-certificate-code, gc-payment-required, gc-balanceGift certificate {GC_CODE} does not have sufficient balance to process the payment.
cart.gift.certificate.not.foundgift-certificate-codeGift certificate {GC_CODE} not found.
coupon.no.longer.availablecoupon-codeCoupon {coupon-code} is no longer available.
coupon.email.requiredSKU_CODEEmail address is required for the coupon-code coupon.
coupon.not.validcoupon-codeCoupon {coupon-code} is not valid.
item.insufficient.inventorySKU_CODEItem {SKU_CODE} does not have sufficient inventory.
item.insufficient.inventorySKU_CODE, quantity-requested, inventory-availableItem {SKU_CODE} only has {inventory-available} available but {quantity-requested} were requested.
item.invalid.bundle.structureSKU_CODERequested item configuration does not have a valid bundle structure.
item.is.configurablefield-name,field-valueItem {field-value} is a configurable product. Please add it individually using additemtocart form.
item.is.duplicatefield-name, field-valueItem {field-value} has multiple entries. Please combine duplicate items into one entry.
item.missing.priceSKU_CODEItem {SKU_CODE} does not have a price.
item.no.longer.availableSKU_CODE,available-dateItem {SKU_CODE} is no longer available for purchase.
item.not.availablefield-nameMissing required request body.
item.not.availablefield-nameCode field is either missing or missing a value.
item.not.availablefield-name,field-valueItem with code {field-value} does not exist.
item.not.in.store.catalogSKU_CODEItem {SKU_CODE} is not part of the current store’s catalog.
item.not.in.store.catalogfield-name, field-value{field-value} is not part of the current store’s catalog.
item.not.sold.separatelySKU_CODEItem {SKU_CODE} is not sold separately.
item.not.visibleSKU_CODEItem {SKU_CODE} is not visible.
item.not.yet.availableSKU_CODE, expiry-dateItem {SKU_CODE} is not yet available for purchase.
order.already.submittedOrder has already been submitted and can’t be resubmitted.
payment.currency.not.supportedPayment currency is not supported by the store.
payment.declinedPayment was declined.
payment.failedError occurred when processing payment.
payment.insufficient.fundsInsufficient funds to process payment.
payment.method.expiredPayment method has expired.
payment.method.invalidPayment method is invalid.
profile.userid.already.existsuser-idUser account with the user id {user-id} already exists.
purchase.cart.is.emptyShopping cart is empty.
purchase.cart.not.purchasableShopping cart cannot be purchased because one or more items are unavailable.
purchase.item.insufficient.inventoryitem-codeInsufficient inventory for item {item-code}.
purchase.item.minimum.quantity.requireditem-code, minimum-quantityA minimum quantity of {minimum-quantity} must be purchased for item {item-code}.
purchase.item.not.availableitem-codeItem {item-code} is not available for purchase.
purchase.missing.shipping.addressA shipping address is required.
purchase.shipping.service.level.invalidshipping-levelInvalid or missing shipping service level {shipping-level}.
purchase.user.account.not.activeuser-idUser account {user-id} is not active.