Skip to main content

What is the Remote Store integration?

Connect a sales channel SKULabs does not support natively using JSON/CSV files on your own server

What is a remote store?

A remote store lets you connect a sales channel SKULabs does not support natively. You host your orders and listings as JSON or CSV files on your own server, SKULabs downloads them on each sync, and SKULabs can notify your server when an order ships.

File formats

The files must follow these formats:

Connect a new remote store

  1. Go to Settings > Stores and click Add store.

  2. Choose Remote store.

  3. Fill in the form:

    • Hostname: your server's host name only, without https:// or a path. Example: api.example.com

    • Orders file location and Listings file location: the path to each file on that host. Example: files/orders.json

    • Orders file type and Listings file type: JSON or CSV.

    • Transport type: HTTPS, or HTTPS using Basic Auth (then fill in Username and Password).

    • Mark as shipped location: optional, the path SKULabs sends shipment notifications to (see below).

  4. Click Save & continue.

SKULabs downloads each file from https://{hostname}/{file location}, so the full URL for the example above is https://api.example.com/files/orders.json. Your server must use HTTPS.

How syncing works

  • Orders: downloaded on every order sync, like any other store. Orders already in SKULabs are updated from the file.

  • Listings: downloaded when you run a listings sync. Listings missing from the file are not removed from SKULabs.

  • Stock: SKULabs does not push stock to a remote store.

  • You can also import a file by hand from Imports/Exports > Other > Remote store.

Mark as shipped (shipment notifications)

If you set a Mark as shipped location, SKULabs sends a POST request with a JSON body to https://{hostname}/{mark as shipped location} for each shipment, including partial shipments. Your server should reply with any 2xx status; any other status shows as a failed notification on the order. Main fields in the body:

{
"order_number": "123-185-1241",
"carrier": "USPS",
"service": "Ground Advantage",
"tracking_number": "9400100000000000000000",
"tracking_url": "https://tools.usps.com/...",
"partial": false,
"items": [
{
"line_id": "1",
"sku": "pplspoon",
"quantity": 1
}
]
}

If the order shipped in more than one package, the other tracking numbers are in additional_tracking_numbers.

Did this answer your question?