Errors — Ecom
Numeric codes follow domain × 10,000 + category × 100 + ordinal ( see defineErrors in the Cognis domain package). The Message key column is the stable key returned in API payloads; the Message column shows the copy for your current locale (same resolution as the product UI).
| Code | Key | HTTP | Category | Message key | Message |
|---|---|---|---|---|---|
| 90001 | ECOM_COLLECTION_NOT_FOUND | 404 | Not Found | general.nothingFound | Nothing found |
| 90003 | ECOM_COLLECTION_IMAGE_NOT_FOUND | 404 | Not Found | general.nothingFound | Nothing found |
| 90006 | ECOM_PRODUCT_IMAGE_NOT_FOUND | 404 | Not Found | general.nothingFound | Nothing found |
| 90016 | DOMAIN_NOT_FOUND | 404 | Not Found | ecom.errors.domainNotFound | Domain not found |
| 90023 | DOMAIN_SET_SERVICE_TARGET_ENDPOINT_REMOVED | 410 | Not Found | ecom.errors.domainSetServiceTargetEndpointRemoved.description | Changing edge routing (web storefront vs LAP) after the domain exists is no longer supported. Create the domain with POST /org/:orgId/ecom/domains and optional body field serviceTarget (webshop or lap). LAP requires org access to LAP overview. If operators corrected database service_target manually, run Verify on the domain so the certificate map and URL map attach to the intended path matcher. |
| 90024 | ECOM_TRANSLATION_NOT_FOUND | 404 | Not Found | general.nothingFound | Nothing found |
| 90040 | ECOM_COMMERCE_ORDER_NOT_FOUND | 404 | Not Found | general.nothingFound | Nothing found |
| 90047 | ECOM_COMMERCE_SHIPMENT_NOT_FOUND | 404 | Not Found | general.nothingFound | Nothing found |
| 90050 | ECOM_COMMERCE_RETURN_NOT_FOUND | 404 | Not Found | general.nothingFound | Nothing found |
| 90061 | ECOM_STOREFRONT_PRODUCT_REVIEW_NOT_FOUND | 404 | Not Found | general.nothingFound | Nothing found |
| 90062 | ECOM_CHECKOUT_INTERCEPT_PIXEL_NOT_FOUND | 404 | Not Found | general.nothingFound | Nothing found |
| 90067 | ECOM_CHECKOUT_ORDER_PUSH_CONFIG_NOT_FOUND | 404 | Not Found | general.nothingFound | Nothing found |
| 90099 | ECOM_COMMERCE_DISCOUNT_RULE_NOT_FOUND | 404 | Not Found | general.nothingFound | Nothing found |
| 90102 | ECOM_COLLECTION_PARENT_INVALID | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90104 | ECOM_COLLECTION_IMAGE_FILE_INVALID | 404 | Validation | general.nothingFound | Nothing found |
| 90105 | ECOM_COLLECTION_IMAGE_BRAND_INVALID | 404 | Validation | general.nothingFound | Nothing found |
| 90107 | ECOM_PRODUCT_IMAGE_FILE_INVALID | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90108 | ECOM_PRODUCT_IMAGE_BRAND_INVALID | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90109 | ECOM_PRODUCT_NOT_SHOPIFY_LINKED | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90110 | ECOM_PRODUCT_SHOPIFY_AMBIGUOUS | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90111 | ECOM_COLLECTION_PRODUCT_INVALID | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90118 | INVALID_DOMAIN | 422 | Validation | ecom.errors.invalidDomain.description | The domain you entered is invalid. Please enter a valid domain. |
| 90119 | DOMAIN_USE_APEX_NOT_WWW | 422 | Validation | ecom.errors.domainUseApexNotWww.description | Enter your root domain (for example example.com), not www.example.com. We add www automatically and redirect it to your root domain. |
| 90125 | ECOM_TRANSLATION_PRIMARY_LOCALE_FORBIDDEN | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90126 | ECOM_TRANSLATION_INVALID_LOCALE | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90127 | ECOM_TRANSLATION_ENTITY_NOT_IN_ORG | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90128 | ECOM_SETTINGS_NOT_CONFIGURED | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90131 | ECOM_COMMERCE_CATALOG_LINK_MISSING | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90132 | ECOM_COMMERCE_CATALOG_VARIANT_DUPLICATE_COMBINATION | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90133 | ECOM_COMMERCE_CATALOG_VARIANT_INVALID_OPTION_VALUE | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90134 | ECOM_COMMERCE_CATALOG_VARIANT_PARTIAL_OPTION_ASSIGNMENT | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90135 | ECOM_COMMERCE_CATALOG_VARIANT_COUNT_INVALID | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90137 | ECOM_COMMERCE_CURRENCY_NOT_ALLOWED_FOR_BRAND | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90141 | ECOM_COMMERCE_ORDER_INVOICE_NOT_ELIGIBLE | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90143 | ECOM_COMMERCE_ORDER_FULFILLMENT_NOT_ALLOWED | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90144 | ECOM_COMMERCE_ORDER_TRACKING_NUMBER_REQUIRED | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90145 | ECOM_COMMERCE_ORDER_LINE_FULFILLMENT_INVALID | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90151 | ECOM_COMMERCE_RETURN_STATUS_TRANSITION_INVALID | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90153 | ECOM_COMMERCE_STRIPE_INTEGRATION_MISSING | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90154 | ECOM_COMMERCE_STRIPE_INTEGRATION_SECRET_MISSING | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90155 | ECOM_COMMERCE_ORDER_REFUND_NOT_ALLOWED | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90156 | ECOM_COMMERCE_ORDER_REFUND_AMOUNT_INVALID | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90157 | ECOM_COMMERCE_ORDER_ALREADY_FULLY_REFUNDED | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90158 | ECOM_COMMERCE_ORDER_PAYMENT_NOT_REFUNDABLE | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90159 | ECOM_COMMERCE_ORDER_REFUND_DUPLICATE_REQUEST | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90160 | ECOM_COMMERCE_ORDER_CANCEL_REQUIRES_REFUND | 422 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90163 | ECOM_CHECKOUT_INTERCEPT_INTEGRATION_NOT_LINKED | 400 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90164 | ECOM_CHECKOUT_INTERCEPT_CHECKOUT_BASE_URL_MISMATCH | 400 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90165 | ECOM_CHECKOUT_INTERCEPT_GATE_INCOMPLETE | 400 | Validation | general.errors.invalidData | Your submission is invalid! |
| 90169 | ECOM_COMMERCE_EXCHANGE_RATE_UNAVAILABLE | 422 | Validation | ecom.errors.commerceCatalogFxMissingRates | Could not load exchange rates for every enabled storefront currency. Try again later, or ensure your FX provider is configured for this environment. |
| 90170 | PRODUCT_DISCOVERY_SOURCING_MODEL_NO_TOOL_CALLS | 422 | Validation | ecom.productDiscovery.errors.sourcingModelNoToolCalls | This AI model does not support gateway tool calls. Choose another model or use Google Custom Search sourcing. |
| 90171 | PRODUCT_DISCOVERY_SOURCING_MCP_NOT_CONFIGURED | 422 | Validation | ecom.productDiscovery.errors.sourcingMcpNotConfigured | AI tool sourcing requires MCP delegation to be configured on the server. |
| 90172 | PRODUCT_DISCOVERY_SOURCING_MCP_TOOLS_UNAVAILABLE | 422 | Validation | ecom.productDiscovery.errors.sourcingMcpToolsUnavailable | The server could not load web tools for this model. Check MCP connectivity or use Google Custom Search sourcing. |
| 90173 | PRODUCT_DISCOVERY_GOOGLE_CSE_ZERO_ALIEXPRESS_URLS | 422 | Validation | ecom.productDiscovery.errors.googleCseZeroAliexpressUrls | Google Custom Search did not return any AliExpress item listings for this run (after retry). Try a more specific niche, different target markets, or AI tool sourcing. |
| 90174 | PRODUCT_DISCOVERY_AI_TOOLS_ZERO_CANDIDATES | 422 | Validation | ecom.productDiscovery.errors.aiToolsZeroCandidates | AI research did not find any valid AliExpress listings for this run. Try a more specific niche, different target markets, or Google Custom Search sourcing. |
| 90175 | PRODUCT_DISCOVERY_NORMALIZE_ZERO_CANDIDATES | 422 | Validation | ecom.productDiscovery.errors.normalizeZeroCandidates | Live listing checks removed every candidate before scoring (delisted links, blocked pages, or missing titles). Try a broader niche or Google Custom Search sourcing. |
| 90176 | PRODUCT_INGEST_UNSUPPORTED_SOURCE_URL | 422 | Validation | ecom.productIngest.errors.unsupportedUrl | Unsupported URL. Pass an AliExpress item URL or a Fyndiq /produkt/ URL. |
| 90177 | PRODUCT_INGEST_SCRAPE_FAILED | 422 | Validation | ecom.productIngest.errors.scrapeFailed | Could not scrape the listing page. The marketplace may be blocking automated access — try again later. |
| 90178 | PRODUCT_INGEST_RUN_NOT_COMPLETED | 422 | Validation | ecom.productIngest.errors.runNotCompleted | This run has not completed yet — wait for the import-ready bundle before inserting. |
| 90180 | PRODUCT_INGEST_MISSING_PRICE | 422 | Validation | ecom.productIngest.errors.missingPrice | Enter a selling price on the import panel before inserting this product. |
| 90182 | PRODUCT_INGEST_INVALID_PRICING | 422 | Validation | ecom.productIngest.errors.invalidPricing | Enter a valid positive COGS and selling price. |
| 90183 | PRODUCT_INGEST_INVALID_CATALOG_DRAFT | 422 | Validation | ecom.productIngest.errors.invalidCatalogDraft | Variant options or prices are invalid — check option names, values, and the 100-variant limit. |
| 90184 | PRODUCT_PAGE_INGEST_UNSUPPORTED_SOURCE_URL | 422 | Validation | ecom.productPageIngest.errors.unsupportedUrl | Enter a valid https product page URL. |
| 90185 | PRODUCT_PAGE_INGEST_SCRAPE_FAILED | 422 | Validation | ecom.productPageIngest.errors.scrapeFailed | Could not scrape the competitor product page. |
| 90186 | PRODUCT_PAGE_INGEST_RUN_NOT_COMPLETED | 422 | Validation | ecom.productPageIngest.errors.runNotCompleted | Wait for the run to complete before importing. |
| 90194 | BRAND_LAUNCH_PREREQUISITES_NOT_MET | 422 | Validation | ecom.automation.brandLaunch.errors.prerequisitesNotMet | Complete all brand launch prerequisites before starting a live run. |
| 90195 | BRAND_LAUNCH_REUSE_CLOUDFLARE_NOT_MANAGED | 422 | Validation | ecom.automation.brandLaunch.errors.reuseCloudflareNotManaged | The selected Cloudflare account cannot manage DNS for this domain. Choose a domain in that account or pick a different Cloudflare integration. |
| 90196 | PRODUCT_PAGE_INGEST_NO_GENERATED_IMAGES | 422 | Validation | ecom.productPageIngest.errors.noGeneratedImages | Select or generate at least one AI image before import. |
| 90198 | ECOM_COMMERCE_DISCOUNT_RULES_COGNIS_CATALOG_ONLY | 422 | Validation | ecom.errors.commerceDiscountRulesCognisCatalogOnly | Cognis discount rules require the organization catalog source to be Cognis-native. |
| 90201 | ECOM_COMMERCE_DISCOUNT_RULE_INVALID_CONFIGURATION | 422 | Conflict | ecom.errors.commerceDiscountRuleInvalidConfiguration | Discount rule configuration is invalid. |
| 90203 | ECOM_COMMERCE_SHIPPING_COGNIS_CATALOG_ONLY | 422 | Conflict | ecom.errors.commerceDiscountRulesCognisCatalogOnly | Cognis discount rules require the organization catalog source to be Cognis-native. |
| 90206 | ECOM_COMMERCE_SHIPPING_INVALID_CONFIGURATION | 422 | Conflict | general.errors.invalidData | Your submission is invalid! |
| 90207 | ECOM_COMMERCE_SHIPPING_DEFAULT_ZONE_PROTECTED | 422 | Conflict | general.errors.invalidData | Your submission is invalid! |
| 90212 | ECOM_COLLECTION_PRODUCT_DUPLICATE | 409 | Conflict | general.errors.invalidData | Your submission is invalid! |
| 90213 | ECOM_COLLECTION_SLUG_DUPLICATE | 409 | Conflict | general.errors.invalidData | Your submission is invalid! |
| 90214 | ECOM_PRODUCT_SLUG_TRANSLATION_DUPLICATE | 409 | Conflict | general.errors.invalidData | Your submission is invalid! |
| 90215 | DOMAIN_ALREADY_EXISTS | 409 | Conflict | ecom.errors.domainAlreadyExists | Domain already exists |
| 90217 | DOMAIN_VERIFICATION_FAILED | 409 | Conflict | ecom.errors.domainVerificationFailed | Domain verification failed |
| 90220 | DOMAIN_ALREADY_ASSIGNED_TO_BRAND | 409 | Conflict | ecom.errors.domainAlreadyAssignedToBrand | Domain already assigned to another brand |
| 90236 | ECOM_COMMERCE_CATALOG_VARIANT_SKU_CONFLICT | 409 | Conflict | general.errors.invalidData | Your submission is invalid! |
| 90279 | PRODUCT_INGEST_ALREADY_IMPORTED | 409 | Conflict | ecom.productIngest.errors.alreadyImported | This run was already imported as a product. |
| 90281 | PRODUCT_INGEST_DUPLICATE_SOURCE_URL | 409 | Conflict | ecom.productIngest.errors.duplicateSourceUrl | An ingest run for this URL already exists in this organization. |
| 90287 | PRODUCT_PAGE_INGEST_ALREADY_IMPORTED | 409 | Conflict | ecom.productPageIngest.errors.alreadyImported | This run was already imported. |
| 90288 | PRODUCT_PAGE_INGEST_DUPLICATE_SOURCE_URL | 409 | Conflict | ecom.productPageIngest.errors.duplicateSourceUrl | A run for this URL already exists in this organization. |
| 90300 | ECOM_COMMERCE_DISCOUNT_RULE_DUPLICATE_CODE | 409 | Unauthorized | ecom.errors.commerceDiscountRuleDuplicateCode | A promo code with this name already exists for this brand. |
| 90308 | ECOM_COMMERCE_SHIPPING_DUPLICATE_RATE_NAME | 409 | Unauthorized | general.errors.invalidData | Your submission is invalid! |
| 90422 | DOMAIN_LAP_NOT_ENTITLED | 403 | Forbidden | ecom.errors.domainLapNotEntitled.description | Your organization does not have access to the Lead Aggregation Platform. Choose the web storefront routing, or ask an admin to grant LAP overview access. |
| 90489 | PRODUCT_PAGE_INGEST_NOT_GRANTED | 403 | Forbidden | ecom.productPageIngest.errors.notGranted | Competitor page ingest is not enabled for this organization. |
| 90490 | BRAND_LAUNCH_EXPERIMENTAL_NOT_ENTITLED | 403 | Forbidden | ecom.automation.brandLaunch.errors.experimentalNotEntitled | Brand launch automation is not enabled for this organization. |
| 90491 | NATIVE_ECOM_EXPERIMENTAL_NOT_ENTITLED | 403 | Forbidden | ecom.errors.nativeEcomExperimentalNotEntitled | Native commerce admin is not enabled for this organization. |
| 90492 | ECOM_CONFIG_BASICS_EXPERIMENTAL_NOT_ENTITLED | 403 | Forbidden | ecom.errors.configBasicsExperimentalNotEntitled | Brand e-com configuration basics is not enabled for this organization. |
| 99921 | DOMAIN_PROVISION_FAILED | 500 | Internal | ecom.errors.domainProvisionFailed.description | The hostname looks valid, but registering it with the edge failed (for example missing configuration, permissions, or a certificate issue). Try again later or contact support if it persists. |
| 99929 | ECOM_COMMERCE_CATALOG_REPO_UNAVAILABLE | 500 | Internal | general.errors.unexpected | Unexpected server error. We've been notified. |
| 99930 | ECOM_COMMERCE_BRAND_CURRENCIES_REPO_UNAVAILABLE | 500 | Internal | general.errors.unexpected | Unexpected server error. We've been notified. |
| 99938 | ECOM_COMMERCE_ORDERS_REPO_UNAVAILABLE | 500 | Internal | general.errors.unexpected | Unexpected server error. We've been notified. |
| 99939 | ECOM_COMMERCE_CHECKOUT_ABANDONMENT_REPO_UNAVAILABLE | 500 | Internal | general.errors.unexpected | Unexpected server error. We've been notified. |
| 99942 | ECOM_COMMERCE_ORDER_INVOICE_RENDER_FAILED | 500 | Internal | general.errors.unexpected | Unexpected server error. We've been notified. |
| 99946 | ECOM_COMMERCE_SHIPMENTS_REPO_UNAVAILABLE | 500 | Internal | general.errors.unexpected | Unexpected server error. We've been notified. |
| 99948 | ECOM_COMMERCE_REFUNDS_REPO_UNAVAILABLE | 500 | Internal | general.errors.unexpected | Unexpected server error. We've been notified. |
| 99949 | ECOM_COMMERCE_RETURNS_REPO_UNAVAILABLE | 500 | Internal | general.errors.unexpected | Unexpected server error. We've been notified. |
| 99952 | ECOM_COMMERCE_STRIPE_REFUND_CLIENT_UNAVAILABLE | 500 | Internal | general.errors.unexpected | Unexpected server error. We've been notified. |
| 99966 | ECOM_CHECKOUT_INTERCEPT_STOREFRONT_TOKEN_MINT_FAILED | 500 | Internal | ecom.errors.checkoutIntercept.storefrontTokenMintFailed | Could not create a Shopify Storefront API token. Reconnect Shopify under Integrations or check app permissions, then try again. |
| 99968 | ECOM_STOREFRONT_REFRESH_FAILED | 500 | Internal | ecom.errors.storefrontRefreshFailed | The slug was saved in Cognis, but the live storefront could not be refreshed. Collection links may stay stale for a few minutes — try saving again or contact support if this persists. |
| 99993 | BRAND_LAUNCH_MAILGUN_NOT_CONFIGURED | 503 | Internal | ecom.automation.brandLaunch.errors.mailgunNotConfigured | Platform Mailgun email delivery is not configured. Brand launch cannot provision or verify sending domains until Mailgun is available. |
| 99997 | ECOM_COMMERCE_DISCOUNT_RULES_REPO_UNAVAILABLE | 503 | Internal | general.errors.unexpected | Unexpected server error. We've been notified. |