Skip to content

Integrations ​

Boxture rarely works alone. Orders come in from web shops and ERP systems, stock levels go back out to sales channels, carriers produce shipping labels, and customers' own systems read and write data through the API. This section explains every way Boxture connects to other systems, what each connection does, and how to set it up and monitor it.

Ways to connect ​

Boxture has four kinds of connection. Which one you use depends on who builds the connection and how much of it is standard.

ConnectionWhat it isWho sets it upTypical use
REST APIA documented JSON API secured with OAuth2A developer on the customer's sideA customer's own system creates orders, reads inventory and follows shipments
Third party integrationsReady-made connectors for specific platformsA Boxture admin fills in credentialsShopify, WooCommerce, NetSuite, Le New Black
Integration flows (Vorto)A configurable message bus: events, schedules, files, HTTPA Boxture admin builds a flowEDI, SFTP file exchange, webhooks to custom endpoints
Carrier integrationLabel creation with a carrier platformA Boxture admin fills in carrier settingsCreating waybills and tracking numbers automatically

Where to find it in Boxture ​

All integration screens are in the sidebar under Admin › Integration. This menu is only visible to users with the Admin role.

Menu itemPurposePage
Integration › FlowsBuild and maintain integration flowsVorto flows
Integration › MessagesSee every message that passed through a flowVorto messages
Integration › CredentialsStore passwords, keys and tokens used by flowsVorto credentials
Integration › OAuth › ApplicationsRegister API client applicationsOAuth
Integration › OAuth › AuthorizedSee and revoke applications that have accessOAuth
Integration › Third partyShopify, WooCommerce, NetSuite and Le New Black connectionsOther integrations
Integration › Third party › Shopify MigrationMove a Shopify store from the custom app to the Boxture appShopify

Carrier integration is not under this menu. It is configured per carrier under Admin › Carriers & Services › Carriers (see Carrier integration).

The building blocks ​

Channels ​

Every order that arrives through an integration is placed on a sales channel: "Shopify", "WooCommerce", "NetSuite" or "Le New Black". The channel matters because several settings can be set per channel, for example the default shipping method, the default business model and the percentage of inventory that is reported to that channel. Product aliases can also be set per channel, so a product can be known under a different SKU in a particular shop. See Channels.

The integration user ​

Every third party integration acts on behalf of a Boxture user that you select on the integration screen. That user determines which account the orders belong to and which locations the integration can use, and it is recorded as the creator of the orders it imports. Use a dedicated user per integration so you can recognise its work in the transaction log.

API clients also act as a user: the user who authorized the application. An API client can see and change exactly what that user can see and change in the user interface. See OAuth.

External IDs ​

When Boxture imports something from another system it remembers the other system's ID for that record: the Shopify variant behind a product, the NetSuite sales order behind an order, the Shopify location behind a Boxture location. These links are used to prevent duplicates (an order that was already imported is skipped) and to send updates back to the right record (tracking numbers to the right Shopify fulfillment order, item fulfillments to the right NetSuite order).

Orders on hold ​

Integrations save an order even if it is incomplete, for example when the address is invalid. Such an order is put on hold with the reason "invalid order details", so it appears in the hold list instead of disappearing. Edit the order to correct it and release the hold. See Holds.

Monitoring integrations ​

Integrations run in the background, so problems are not always visible straight away. Boxture gives you several places to look.

  • Connection status on the Third party list shows a traffic light per integration (green, orange or red) based on the number of errors in the last 24 hours. The same kind of traffic light is shown per flow on the Flows list. See Traffic light.
  • Last order at on the Third party list shows when the integration last created an order, which tells you at a glance whether orders are still coming in.
  • Exceptions collects every failed background job, including integration jobs. See Exceptions.
  • Integration Messages tab on an order or shipment lists the flow messages that were created for it.
  • Carrier waybill requests tab on a shipment shows the exact request sent to the carrier and the response received. See Logged requests.
  • Messaging templates can send an e-mail when something fails, for example when a message fails or a NetSuite fulfillment cannot be created. See Messaging.

TIP

Set up a messaging template for failed flow messages and for integration failures before you go live. Without a template no e-mail is sent, and you only see the problem when you check the screens.

In this section ​

  • REST API: authentication, endpoints, pagination, filtering and examples.
  • OAuth applications: registering API clients and managing access.
  • Integration flows (Vorto): flows, messages, credentials and Liquid templates.
  • Shopify: the Boxture Shopify app and the custom app connection.
  • WooCommerce: orders, products, stock and tracking with WooCommerce.
  • NetSuite: sales, purchase and transfer orders, fulfillments, products and inventory with NetSuite.
  • Other integrations: all third party integration types, Le New Black, inventory reporting percentage and the connection status.
  • Carrier integration: automatic label creation with Skepr and the carrier settings.

Boxture Help