Skip to main content

Order Import

Shopify orders are actively retrieved by Flowlyze.

The information retrieved about orders includes:

  • the sales channel (Channel).
  • basic order information (for example name, identifier, etc.).
  • taxes and prices associated with the order.
  • discounts present in the order.
  • the associated customer (Customer): information about the customer associated with the order.
  • shipping and billing addresses (ShippingAddress and BillingAddress): details of the order's shipping and billing addresses.
  • executed transactions (Transactions): data on payment transactions.
  • fulfillments (Fulfillments and FulfillmentOrders): information regarding order fulfillments.
  • items present (LineItems): details about items included in the order.
  • shipping (ShippingLines): information about shipping costs.
  • assigned locations (AssignedLocations): specifies which SKUs and quantities must be picked from each location.
  • metadata (Metadata): a field containing additional Shopify order-specific data, including details such as the fulfillment status (displayed exactly as shown on Shopify, without any transformation).
  • the order operator (OrderOperator): staff member who executed the order (e.g. Shopify POS), available if the x-include-staff-member-info header is true. Requires the read_users access scope. The app must be a finance embedded app or installed on a Shopify Plus or Advanced store. Contact Shopify Support to enable this scope for your app.

The Adapter adds a tag to the order to verify its export (EXPORT) and avoid duplicate sends towards the destination, but only if the unique synchronization header is set to true. This behavior allows synchronizing an order only once, ignoring any subsequent updates (optional behavior, configurable via header). If the header is not set, the tag is not added and the order can be exported multiple times.

warning

Compatibility with Shopify plans​

Using this endpoint with a Shopify store on Basic plan, only limited information will be available on the customer within order data, due to Shopify API restrictions.

Active Order Flow Configuration​

After creating the destination, which in the case of an active flow can be a database or an endpoint, it is necessary to configure the flow by enabling scheduling (Schedulation Enabled) and setting it as follows:

CampoValoreNote
Namee.g. active-flow-orderScheduling name
Cron Expression*/5 * * * *How often to retrieve orders (e.g. */5 * * * * -> every 5 minutes)
Source TypehttpSource type to use
Urlhttps://adapter.flowlyze.io/api/adp/shopify/ingress/get-orders-updated-afterEndpoint URL to call (see note at end of table)
MethodGETMethod to call the endpoint
Headers :: x-api-key**********API key for endpoint interaction verification
Headers :: x-shopify-graphql-urlhttps://SHOPIFYURL.myshopify.com/Shopify shop URL to connect to
Headers :: x-shopify-access-tokenshpat_CODICEALFANUMERICOSecret of the custom app created for integration
Headers :: x-last-order-updated-processed"e.g. 2024-11-15T12:00:00ZDate to start retrieving orders from
Headers :: x-sync-order-oncetrueBoolean to insert the order only once, does not propagate updates (default false)
Headers :: channel-code"Your Shopify StoreYour Shopify shop name or code
Headers :: x-number-of-orders10Number of orders to retrieve per call (default 10)
Headers :: x-include-merchant-infotrue/falseBoolean to retrieve merchant information (default false)
Headers :: x-include-company-infotrue/falseBoolean to retrieve B2B company information (default false)
Headers :: x-include-staff-member-infotrue/falseBoolean to retrieve the operator who executed the order, e.g. with Shopify POS (default false).
info

Two distinct endpoints are available, which differ only in output:

  1. Standard:
    • URL : https://adapter.flowlyze.io/api/adp/shopify/ingress/get-orders-updated-after
    • The output of order information is simplified, without nodes (nodes) and pagination information (pageInfo).
  2. Legacy:
    • URL : https://adapter.flowlyze.io/api/adp/shopify/ingress/get-orders-updated-after-legacy
    • The output includes more detailed structures, with nodes (nodes) and pagination information (pageInfo).

Example of retrieved information - Standard behavior​

The standard output provides simplified order data. For complete detailed examples with all fields, see the original documentation in the Italian version.

When x-include-staff-member-info is true, the payload includes orderOperator:

{
"orderOperator": {
"id": "gid://shopify/StaffMember/123456789",
"name": "Mario Rossi",
"email": "[email protected]",
"phone": "+39 333 1234567"
}
}