---
title: "Get order by ID"
method: GET
path: "/stores/{storeId}/orders/{orderId}"
tags: ["Order"]
---

# Get order by ID

`GET /stores/{storeId}/orders/{orderId}`

Retrieve order details by ID in the given store.
Requires the `stores.orders.view` permission.

## Path parameters

- `storeId` string, uuid, required
- `orderId` string, uuid, required

## Response `200`

The object was successfully returned.

- OrderResponseResponse — Represents a default generic response for API endpoints.
  - `success` boolean, required — Indicates whether the operation or response was successful.
  - `message` string, nullable — A descriptive message providing additional context or information about the response.
  - `code` string, nullable — The error code (if there was an error) to use when referencing the error
  - `data` OrderResponse — Represents the response details for an order.
    - `order` Order, required — Represents an order entity with details about the customer, products, payment, and optional features like warranty and discounts
      - `id` string, uuid, required — The unique identifier of the entity
      - `dateCreated` string, date-time, required — The date the entity was created in the database
      - `items` LineItem[], required — The list of items the customer has ordered
        - `id` string, uuid, required — The unique identifier of the entity
        - `dateCreated` string, date-time, required — The date the entity was created in the database
        - `productName` string, required — The name of the product
        - `productId` string, uuid, required — The ID of the product
        - `variantId` string, uuid, required — The ID of the variant they purchased
        - `variantName` string, required — The name of the variant they purchased
        - `amount` number, double, required — The unit cost, how much one unit of the product costs
        - `lineTotal` number, double, required — The total cost for the line item (Amount * Quantity)
        - `additionalFeePercentage` number, double, required — An additional fee percentage applied to the line item, if any.
        - `additionalFeeAmount` number, double, required — The total amount of any additional percentage fees applied to the line item.
        - `additionalFixedFeeAmount` number, double, required — The total amount of any additional fixed fees applied to the line item.
        - `volumeDiscountAmount` number, double, required — The volume discount amount applied to this line item.
        - `volumeDiscountType` 0 | 1 | 2 — Specifies the type of discount to apply for volume pricing tiers.
        - `volumeDiscountValue` number, double, nullable — The discount value from the applied tier (e.g., 10 for 10% or $10).
        - `volumeDiscountTierQuantity` integer, nullable — The quantity threshold of the tier that was applied (e.g., 10 for "Buy 10+").
        - `storeId` string, uuid, required — The ID of the store the product belongs to
        - `orderId` string, uuid, required — The ID of the order associated with the item
        - `quantity` integer, required — The amount of product that was purchased
        - `billingInterval` 0 | 1 | 2 | 3 | 4 — The billing interval for a subscription product
        - `customIntervalDays` integer, nullable — Custom interval in days when Komerza.Database.Entities.Payment.LineItem.BillingInterval is !:Products.BillingInterval.Custom.
      - `gatewayMetadata` GatewayMetadata, required — The metadata for a specific payment gateway
        - `id` string, uuid, required — The unique identifier of the entity
        - `dateCreated` string, date-time, required — The date the entity was created in the database
        - `transactionId` string, nullable — The transaction ID associated with the gateway
        - `clientSecret` string, nullable — The client secret used by card gateways to facilitate payments down to the browser
        - `note` string, nullable — The note for PayPal Friends and Family or Cash App payments
        - `cryptocurrencyAddress` string, nullable — The address for a cryptocurrency payment
        - `cryptocurrencyAmount` number, double, nullable — The amount of cryptocurrency converted at the time for a cryptocurrency payment
        - `cryptocurrencyExpiration` string, date-time, nullable — The date the cryptocurrency payment expires
        - `gatewaySubscriptionId` string, nullable — The ID of the subscription created at checkout time (e.g. Stripe sub_xxx). When set, the delivery handler should skip remote subscription creation.
      - `customer` CustomerDetails, required — Represents a snapshot of the customer details at the time of the order
        - `id` string, uuid, required — The unique identifier of the entity
        - `dateCreated` string, date-time, required — The date the entity was created in the database
        - `externalLogins` ExternalLogin[], nullable — The list of external logins the customer used to sign in with
          - `id` string, uuid, required — The unique identifier of the entity
          - `dateCreated` string, date-time, required — The date the entity was created in the database
          - `application` string, required — The name of the application the customer authorized with
          - `userId` string, required — The ID of the customer on the respective application
          - `displayName` string, required — The display name of the customer on the respective application
          - `emailAddress` string, required — The email address of the customer on the respective application
        - `countryCode` string, required — The country code of the customer
        - `emailAddress` string, required — The email address of the customer
        - `customerId` string, uuid, required — The ID of the customer profile in the database
      - `coupon` OrderCoupon — Represents a coupon code used on an order
        - `id` string, uuid, required — The unique identifier of the entity
        - `dateCreated` string, date-time, required — The date the entity was created in the database
        - `percentageDecrease` number, double, nullable — The percentage the coupon cut off the order, this is null if the coupon was a fixed amount instead which the net decrease is below
        - `netDecrease` number, double, required — The net amount the coupon decreased the order by
        - `code` string, required — The code of the coupon
        - `couponId` string, uuid, required — The ID of the coupon
      - `affiliateDiscount` OrderDiscount — Represents a discount used on an order
        - `id` string, uuid, required — The unique identifier of the entity
        - `dateCreated` string, date-time, required — The date the entity was created in the database
        - `percentageDecrease` number, double, nullable — The percentage the coupon cut off the order, this is null if the coupon was a fixed amount instead which the net decrease is below
        - `netDecrease` number, double, required — The net amount the coupon decreased the order by
      - `tax` OrderTax — Snapshot of the tax applied to an order at the time of purchase.
        - `id` string, uuid, required — The unique identifier of the entity
        - `dateCreated` string, date-time, required — The date the entity was created in the database
        - `taxAmount` number, double, required — The tax amount charged on this order.
        - `taxRate` number, double, required — The tax rate applied as a percentage (e.g. 20 for 20%).
        - `taxName` string, required — The display name of the tax (e.g. "VAT", "Sales Tax").
        - `isReverseCharge` boolean, required — Whether reverse charge was applied (B2B cross-border EU).
        - `customerVatId` string, nullable — The customer's VAT/tax ID if provided.
        - `preTaxAmount` number, double, required — The order subtotal before tax was applied.
        - `taxBehavior` string, required — Tax behavior at time of order: "exclusive" or "inclusive".
      - `refund` Refund — Represents a refund associated with a specific user, order, and reason for payment adjustment.
        - `id` string, uuid, required — The unique identifier of the entity
        - `dateCreated` string, date-time, required — The date the entity was created in the database
        - `userId` string, required — Represents the ID of the user associated with the refund.
        - `ipAddress` string, required — Represents the IP address associated with the refund transaction.
        - `reason` 0 | 1 | 2 | 3, required — Indicates a duplicate transaction or order as the reason for a refund.
        - `amount` number, double, required — Gets or sets the amount of the refund.
        - `orderId` string, uuid, required — Represents the unique identifier for the associated order in the refund process.
      - `chargeback` Chargeback — Represents a dispute entity in the payment system. A dispute is associated with a specific order and contains information about its status and reason.
        - `id` string, uuid, required — The unique identifier of the entity
        - `dateCreated` string, date-time, required — The date the entity was created in the database
        - `status` string, required — Represents the current state of the dispute.
        - `reason` string, required — Represents the reason associated with a dispute.
        - `orderId` string, uuid, required — Represents the unique identifier for the associated order in the context of a dispute.
      - `discordAccount` OrderDiscordAccount — Represents the Discord account details associated with an order at the time of purchase.
        - `id` string, uuid, required — The unique identifier of the entity
        - `dateCreated` string, date-time, required — The date the entity was created in the database
        - `orderId` string, uuid, required — The ID of the order this Discord account is associated with.
        - `discordUserId` string, required — The Discord user ID (snowflake).
        - `username` string, required — The Discord username at the time of the order.
        - `displayName` string, nullable — The Discord display name at the time of the order.
        - `avatarUrl` string, nullable — The Discord avatar URL at the time of the order.
        - `accessToken` string, required — The OAuth2 access token used for server membership actions.
      - `storeId` string, uuid, required — The ID of the store the order was created for
      - `userId` string, required — The ID of the user who owns the store the order was created for
      - `deliveredItems` DeliveredItem[], required — The collection of items that have been delivered as part of an order.
        - `id` string, uuid, required — The unique identifier of the entity
        - `dateCreated` string, date-time, required — The date the entity was created in the database
        - `orderId` string, uuid, required — The unique identifier for the order associated with the delivered item.
        - `storeId` string, uuid, required — The unique identifier for the store associated with the delivered item.
        - `productId` string, uuid, required — The identifier of the related product, if applicable.
        - `variantId` string, uuid, required — The identifier for the variant of the delivered item, if applicable.
        - `customerId` string, uuid, required — The optional identifier for the customer associated with the delivered item (and order)
        - `type` string, required — The type that categorizes the delivered item.
        - `source` string, required — The source of the delivered item, indicates its origin or context.
        - `textContent` string, nullable — The text content associated with the delivered item. Used for LicenseKey, Plaintext, or Dynamic types.
        - `fileId` string, uuid, nullable — The identifier of the file associated with the delivered item, if applicable.
        - `webhookExecutionLogId` string, uuid, nullable — The ID of the webhook/dynamic delivery request associated with this delivered item.
        - `file` StoredFile — A file stored on a product for delivery
          - `id` string, uuid, required — The unique identifier of the entity
          - `dateCreated` string, date-time, required — The date the entity was created in the database
          - `friendlyName` string, required — The friendly name of the file
          - `ipAddress` string, required — The IP address which uploaded the file
          - `userId` string, required — The ID of the user who uploaded the file
        - `webhookExecutionLog` WebhookExecutionLog — A log for a webhook execution.
          - `id` string, uuid, required — The unique identifier of the entity
          - `dateCreated` string, date-time, required — The date the entity was created in the database
          - `url` string, required — The URL associated with the webhook execution log.
          - `signature` string, required — The signature of the webhook execution, used for validation and security purposes.
          - `requestBody` string, required — The body of the request sent in a webhook execution.
          - `responseCode` integer, nullable — The HTTP response code resulting from executing the webhook.
          - `responseBody` string, nullable — The response body returned by a webhook execution log.
          - `webhookId` string, uuid, nullable — The unique identifier of the webhook associated with this log.
          - `userId` string, nullable — The ID of the user who owns the webhook. Nullable for backwards compatibility with existing logs that predate this field.
          - `retryCount` integer, required — The number of times this webhook has been dispatched (initial + retries via Hangfire requeue). Starts at 1 for the first attempt and increments on each resend.
          - `userAgent` string, nullable — The user agent header sent to the merchant's endpoint.
          - `orderId` string, uuid, nullable — The unique identifier for the order associated with the webhook execution log.
        - `variant` Variant — Represents a configurable variant associated with a product, containing various properties such as pricing, stock, delivery options, and custom fields.
          - `id` string, uuid, required — The unique identifier of the entity
          - `dateCreated` string, date-time, required — The date the entity was created in the database
          - `name` string, required — The name of the variant.
          - `productId` string, uuid, required — Represents the unique identifier of the product associated with the variant.
          - `storeId` string, uuid, required — The unique identifier for the store associated with the variant.
          - `cost` number, double, required — The cost of the variant.
          - `deliveryTypes` string[], required — A list of delivery methods associated with the variant.
          - `files` StoredFile[], required — A collection of stored files associated with this variant.
            - `id` string, uuid, required — The unique identifier of the entity
            - `dateCreated` string, date-time, required — The date the entity was created in the database
            - `friendlyName` string, required — The friendly name of the file
            - `ipAddress` string, required — The IP address which uploaded the file
            - `userId` string, required — The ID of the user who uploaded the file
          - `dynamicUrl` string, nullable — Represents a dynamically generated or configurable URL associated with a variant.
          - `deliveryMessage` string, nullable — An optional message associated with the delivery of this variant.
          - `minimumQuantity` integer, required — The minimum quantity of the product variant required for a single order.
          - `maximumQuantity` integer, required — The maximum quantity of the variant that can be purchased in a single order. A value of -1 indicates no limit.
          - `order` integer, required — Indicates the display order of the variant in a sequence.
          - `imageNames` string[], required — A list of image file names associated with the variant.
          - `stock` integer, required — Represents the quantity of items available for sale.
          - `stockMode` 0 | 1 | 2, required — The stock calculation modes that are used
          - `customFields` CustomField[], required — Represents the collection of custom fields associated with the variant. Each custom field provides additional configuration or metadata related to the variant, such as labels, identifiers, or placeholders.
            - `id` string, uuid, required — The unique identifier of the entity
            - `dateCreated` string, date-time, required — The date the entity was created in the database
            - `variantId` string, uuid, required — FK back to the parent Variant.
            - `label` string, required — The display label for this custom field.
            - `identifier` string, required — A machine-friendly identifier used in forms and storage.
            - `placeholder` string, nullable — Placeholder text shown when the field is empty (for text/textarea).
            - `type` string, required — The type of the field: "text", "textarea", "select", "checkbox", "radio", or "number".
            - `isRequired` boolean, required — Whether filling out this field is mandatory.
            - `hint` string, nullable — Help text displayed under the field.
            - `options` CustomFieldOption[], required — The list of allowed options (only for select or radio fields).
              - …
          - `volumeDiscounts` VolumeDiscount[], required — Represents the collection of volume discount tiers associated with the variant. Each tier defines a quantity threshold and the corresponding discount.
            - `id` string, uuid, required — The unique identifier of the entity
            - `dateCreated` string, date-time, required — The date the entity was created in the database
            - `variantId` string, uuid, required — The unique identifier of the variant this volume discount belongs to.
            - `quantity` integer, required — The minimum quantity required to activate this discount tier.
            - `discountType` 0 | 1 | 2, required — Specifies the type of discount to apply for volume pricing tiers.
            - `discountValue` number, double, required — The discount value. Interpretation depends on Komerza.Database.Entities.Products.VolumeDiscount.DiscountType: - Percentage: A percentage off (e.g., 10 = 10% off) - FixedAmount: Amount deducted per unit (e.g., 5 = $5 off per unit) - FixedPrice: The new unit price (e.g., 8 = $8 per unit)
          - `disableVolumeDiscountOnCoupon` boolean, required — When true, volume discounts are disabled if a coupon is applied to the order.
          - `metadata` string, nullable — Miscellaneous metadata associated with the variant, this is used in migration to tie reviews/products
          - `billingInterval` 0 | 1 | 2 | 3 | 4 — The billing interval for a subscription product
          - `customIntervalDays` integer, nullable — Custom interval in days when Komerza.Database.Entities.Products.Variant.BillingInterval is !:Products.BillingInterval.Custom.
      - `status` string, required — Represents the current status of the order, indicating the completion state of the payment process.
      - `gateway` string, required — The payment gateway used for processing the transaction.
      - `amount` number, double, required — Represents the monetary value associated with an order.
      - `amountPaid` number, double, nullable — Represents the amount that has been paid for an order.
      - `gatewayFee` number, double, nullable — The fee charged by the payment gateway for processing a transaction
      - `platformFee` number, double, required — The fee collected by the platform from the order's total amount
      - `globalGatewayFeePercentage` number, double, required — The global gateway fee percentage that was configured (e.g., 2.5 for 2.5%).
      - `globalGatewayFeeAmount` number, double, required — The calculated amount from the global gateway fee percentage.
      - `globalGatewayFixedFee` number, double, required — The global gateway fixed fee that was configured.
      - `globalGatewayFixedFeeAmount` number, double, required — The global gateway fixed fee amount actually applied (0 if product-level overrides exist).
      - `affiliateId` string, uuid, nullable — Unique identifier for the affiliate who referred this order
      - `realCustomerId` string, uuid, required — The ID of the customer who made the order
      - `currencyCode` string, required — The fiat currency code used for the order, defaults to USD
      - `userAgent` string, required — The user agent used to create the order
      - `ipAddress` string, required — The IP address used to create the order
      - `customFieldAnswers` object, nullable — The answers to the custom fields for the order
      - `isDeliveredManually` boolean, required — Whether the order was delivered manually or not
      - `isDeliveryItemsLocked` boolean, required — Whether the delivery items are locked or not, if this is true then the unauthenticated get order items will return an access denied error
      - `deliveredByUserId` string, nullable — The ID of the user who manually delivered the order, null if the order was not manually delivered
      - `isCustomerAuthenticated` boolean, required — Whether the customer has been authenticated by the create order endpoint, this makes the "Pay with customer balance" button not require auth
      - `isMigrated` boolean, required — Whether the order is migrated or not from another platform, these orders are not
      - `returnUrl` string, nullable — The URL to redirect the customer to after payment completion. If not set, falls back to the store's default return URL.
      - `sendReceipt` boolean, required — Whether to send a receipt email to the customer after the order is completed. Defaults to true.
      - `metadata` object, nullable — Custom key-value metadata attached to the order for merchant tracking purposes.
      - `source` string, required — The source of the order: "store" (marketplace), "embed" (embeds), "api" (dashboard/API).
      - `isSubscriptionOrder` boolean, required — Whether this order contains subscription products with recurring billing.
      - `cartRecoverySentAt` string, date-time, nullable — When the cart recovery email was sent for this order, null if not sent.
      - `renewalForSubscriptionId` string, uuid, nullable — If this order is a renewal for an existing subscription, the ID of that subscription. Null for initial subscription orders and non-subscription orders.
    - `billingInformation` CustomerBillingInformation — Represents customer billing information with address and tax details.
      - `legalEntityType` string, nullable — The legal entity type of the merchant.
      - `taxId` string, nullable — Tax Identification Number or VAT number.
      - `fullName` string, nullable — The full name of the individual or entity associated with merchant account.
      - `addressLine1` string, nullable — The primary address line. Typically, includes house number, street name, or building name.
      - `addressLine2` string, nullable — The secondary address line, if applicable. May include apartment, suite, unit, or floor details. Optional field.
      - `city` string, nullable — The city or locality associated with the address.
      - `region` string, nullable — The region associated with the address. Represents state, province, or other administrative division.
      - `postalCode` string, nullable — The postal or ZIP code for the address.
      - `countryCode` string, required — The ISO 3166-1 alpha-2 country code associated with the address. Examples: "US" for the United States, "CA" for Canada.
    - `logs` WebhookExecutionLog[], required — A collection of logs associated with webhook executions.
      - `id` string, uuid, required — The unique identifier of the entity
      - `dateCreated` string, date-time, required — The date the entity was created in the database
      - `url` string, required — The URL associated with the webhook execution log.
      - `signature` string, required — The signature of the webhook execution, used for validation and security purposes.
      - `requestBody` string, required — The body of the request sent in a webhook execution.
      - `responseCode` integer, nullable — The HTTP response code resulting from executing the webhook.
      - `responseBody` string, nullable — The response body returned by a webhook execution log.
      - `webhookId` string, uuid, nullable — The unique identifier of the webhook associated with this log.
      - `userId` string, nullable — The ID of the user who owns the webhook. Nullable for backwards compatibility with existing logs that predate this field.
      - `retryCount` integer, required — The number of times this webhook has been dispatched (initial + retries via Hangfire requeue). Starts at 1 for the first attempt and increments on each resend.
      - `userAgent` string, nullable — The user agent header sent to the merchant's endpoint.
      - `orderId` string, uuid, nullable — The unique identifier for the order associated with the webhook execution log.
    - `ipInfo` IpAddressDetails, required — Details about an IP address such as the registration location and the owner
      - `status` string, required — The status of the operation, either success or error
      - `proxy` boolean, required — Whether the IP address was detected as a proxy
      - `hosting` boolean, required — Whether the IP address is used by a hosting company
      - `mobile` boolean, required — Whether the IP address belongs to a mobile network (3G, 4G (LTE), 5G, etc.)
      - `regionName` string, required — The region the IP was registered in
      - `country` string, required — The country the IP was registered in
      - `city` string, required — The city the IP was registered in
      - `isp` string, required — The ISP that owns the IP address
    - `storeId` string, uuid, required — Represents the identifier of the store associated with the order.
    - `storeName` string, required — Gets or sets the name of the store associated with the order.

## Other responses

- `400` — The provided form information is not valid, check that the provided data is valid. You can use the 'invalidFields' field to get the list of invalid fields or just use the 'message' field.
- `401` — You are not authorized, check your API key and try again.
- `403` — You are not authorized to access this endpoint, you may be missing an API key scope or be requesting a privileged endpoint.
- `404` — One of the objects referenced by the ID given in the URL or form was not found, check the ID and try again.

---

[API](https://skmtc.dev/komerza/apis/komerza-api.md) · [All operations](https://skmtc.dev/komerza/apis/komerza-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/komerza/komerza-api/revisions/060e78bc7f80/schema)
