# Cancel order
Source: https://nocnoc.mintlify.app/api/api-reference/orders/cancel-order
POST https://live.nocnocstore.com/api/v2/orders/{order_id}/cancellation
Submits a cancellation request for a specific order.
## Path parameters
The ID of the order to cancel.
## Returns
A confirmation that the cancellation request was submitted.
## Example request
```bash theme={null}
curl -X POST https://live.nocnocstore.com/api/v2/orders/ORD-123456/cancellation \
-H "X-Api-Key: YOUR_SELLER_KEY"
```
```json 201 theme={null}
{}
```
```json 400 theme={null}
{
"code": 400,
"message": "An order issue already exists for order: order_id and type: cancellation_request and status: open"
}
```
```json 401 theme={null}
{
"code": 401,
"message": "Unauthorized"
}
```
```json 404 theme={null}
{
"code": 404,
"message": "Order not found"
}
```
```json 409 theme={null}
{
"message": "Invalid Request"
}
```
# List orders
Source: https://nocnoc.mintlify.app/api/api-reference/orders/list-orders
GET https://live.nocnocstore.com/api/v2/orders
Returns all orders associated with your account. Supports filtering by status, date range, and order ID.
## Query parameters
Page number. Pagination starts at index zero.
Number of results per page.
Filter by order status. Possible values: `in_process`, `cancelled`.
Filter orders created from this date.
Filter orders created up to this date.
Filter to retrieve a specific order by ID.
## Returns
A paginated list of orders associated with your account, including order ID, status, items, and shipping details.
## Example request
```bash theme={null}
curl "https://live.nocnocstore.com/api/v2/orders?page=0&size=10&statuses=in_process" \
-H "X-Api-Key: YOUR_SELLER_KEY"
```
```json 200 theme={null}
{
"orders": [
{
"tracking_id": "NC2202936",
"label_url": "https://www.live.nocnocstore.com/token/OL2342342.234234",
"created_at": "2025-05-16 08:39:29",
"status": "in_process",
"status_date": "2025-05-16 08:45:39",
"status_description": null,
"customer": {
"full_name": "Joe Doe",
"tax_id": "01564525295"
},
"products": [
{
"sku": "6291107456058",
"quantity": 1,
"fob_price": "20.00"
}
],
"delivery_address": {
"contact_name": "Nocnoc",
"belongs_to": "NOCNOC",
"contact_phone": "3055134548 Ext 70129",
"street": "13150 NW 25TH ST",
"street_2": "",
"zipcode": "33182-1532",
"region": "Florida",
"city": "Miami",
"country": "US",
"deadline": "2025-05-18"
}
}
]
}
```
```json 401 theme={null}
{
"code": 401,
"message": "Unauthorized"
}
```
# Overview
Source: https://nocnoc.mintlify.app/api/api-reference/overview
The nocnoc API v2 — base URL, versioning, request format, and authentication.
The nocnoc API gives sellers programmatic access to products, orders, and packages.
## Base URL
All requests go to the live environment:
```
https://live.nocnocstore.com/api/v2
```
## Versioning
The current version is **v2**. The version is included in the base URL.
## Request format
* All request bodies must be sent as JSON with the `Content-Type: application/json` header. Requests without it will return a `415 Unsupported Media Type` error.
* All responses are returned as JSON.
## Authentication
Every request requires two headers:
| Header | Value |
| -------------- | ------------------- |
| `X-Api-Key` | Your seller API key |
| `Content-Type` | `application/json` |
```bash theme={null}
curl https://live.nocnocstore.com/api/v2/products \
-H "X-Api-Key: YOUR_SELLER_KEY" \
-H "Content-Type: application/json"
```
A missing or invalid key returns a `401 Unauthorized` response. See [Response codes](/api/api-reference/responses) for the full list of error codes.
No IP allowlist is required. The API accepts requests from any origin IP address.
# Create Father package
Source: https://nocnoc.mintlify.app/api/api-reference/packages/create-father-package
POST https://live.nocnocstore.com/api/v2/packages
Creates a Father package by consolidating multiple Son packages for bulk first-mile shipping.
nocnoc manages two types of packages: **Son** and **Father**. You must first create individual [Son packages](/api/api-reference/packages/create-son-package) before grouping them into a Father package.
## Body parameters
Array of Son package IDs to include in this Father package.
Array of label objects for the consolidated shipment. Minimum 1, maximum 10. Each object contains:
* `tracking_code` (string, required) — tracking code of the consolidated package
* `carrier` (string, required) — first-mile carrier (e.g. `"FedEx"`, `"UPS"`)
* `url` (string, required) — URL to track the shipment
## Returns
The created Father package object confirming the consolidated shipment.
## Example request
```bash theme={null}
curl -X POST https://live.nocnocstore.com/api/v2/packages \
-H "X-Api-Key: YOUR_SELLER_KEY" \
-H "Content-Type: application/json" \
-d '{
"labels": [
{
"tracking_code": "FX2021",
"carrier": "FedEx",
"url": "https://www.fedex.com/tracking/FX2021"
}
],
"subpackages": ["PK1", "PK2", "PK3"]
}'
```
```json 201 theme={null}
{
"package_id": "PK111"
}
```
# Create Son package
Source: https://nocnoc.mintlify.app/api/api-reference/packages/create-son-package
POST https://live.nocnocstore.com/api/v2/packages
Creates a Son package for a single order. Each order requires its own Son package.
nocnoc manages two types of packages: **Son** and **Father**. Create a Son package per order, then group multiple Son packages into a [Father package](/api/api-reference/packages/create-father-package) for consolidated first-mile shipping.
## Body parameters
The reference ID of the order included in this package.
Array of label objects. Minimum 1, maximum 10. Each object contains:
* `tracking_code` (string) — tracking code of the package
* `carrier` (string) — first-mile carrier (e.g. `"FedEx"`, `"UPS"`). Use `"nocnoc"` for a nocnoc label
* `url` (string) — URL to track the order
Array of item objects inside the package. Minimum 1, maximum 10. Each object contains:
* `sku` (string) — item SKU, between 1 and 45 characters
* `quantity` (integer) — quantity of the item, between 0 and 9999
## Returns
The created Son package object with its package ID, which you'll need to create a Father package.
## Example request
```bash theme={null}
curl -X POST https://live.nocnocstore.com/api/v2/packages \
-H "X-Api-Key: YOUR_SELLER_KEY" \
-H "Content-Type: application/json" \
-d '{
"order_reference_id": "NC0000",
"labels": [
{
"tracking_code": "1234",
"carrier": "nocnoc",
"url": "https://tracking.example.com/1234"
}
],
"items": [
{
"sku": "SKU00000000",
"quantity": 1
}
]
}'
```
```json 201 theme={null}
{
"package_id": "PK111"
}
```
# Create product
Source: https://nocnoc.mintlify.app/api/api-reference/products/create-product
POST https://live.nocnocstore.com/api/v2/products
Creates a new product and adds it to your catalog. Requires full product data.
If you have an Amazon ASIN, use [Create product by ASIN](/api/api-reference/products/create-product-asin) instead — it auto-populates product data automatically.
## Body parameters
Alphanumeric unique code for the product. Between 1 and 45 characters.
Brand of the product. Between 1 and 45 characters.
Stock quantity. Between 0 and 9999.
Price of the product. Up to 10 integer digits and 2 decimal places.
Currency code (ISO). Currently only `USD` is supported.
Product title to be published.
Product description to be published.
Language of the description. Currently only `en` is supported.
Product condition. One of: `NEW`, `USED`, `OPEN_BOX`, `REFURBISHED_A`, `REFURBISHED_B`, `REFURBISHED_C`, `REFURBISHED_D`. Defaults to `NEW`.
Dimensions of the package. Contains `size` (object with `unit`, `length`, `width`, `height`) and `weight` (object with `unit`, `value`). Size units: `cm`, `inch`, `inches`, `mm`. Weight units: `kg`, `lb`, `gram`, `kilogram`, `pound`.
Dimensions of the product itself. Same structure as `package_dimensions`.
Array of image objects, each with a `source_url` field. Minimum 1, maximum 10.
International identifiers. Contains `gtin` (array of strings — Global Trade Item Number, e.g. EAN, UPC).
Additional product attributes. Each object has `type` (one of: `COLOR`, `SIZE`) and `value` (string).
## Returns
The created product object with all submitted fields confirmed.
## Example request
```bash theme={null}
curl -X POST https://live.nocnocstore.com/api/v2/products \
-H "X-Api-Key: YOUR_SELLER_KEY" \
-H "Content-Type: application/json" \
-d '{
"sku": "SKU-001",
"international_ids": { "gtin": ["4901234567890"] },
"brand": "BRAND",
"available_quantity": 20,
"price": 23,
"currency_code": "USD",
"package_dimensions": {
"size": { "unit": "cm", "length": 46, "width": 28, "height": 15 },
"weight": { "unit": "kg", "value": 3 }
},
"product_dimensions": {
"size": { "unit": "cm", "length": 42, "width": 26, "height": 13 },
"weight": { "unit": "kg", "value": 2 }
},
"images": [{ "source_url": "https://example.com/image.jpg" }],
"condition": "NEW",
"title": "Product Title",
"description_language": "en",
"description": "Product description",
"attributes": [
{ "type": "COLOR", "value": "Red" },
{ "type": "SIZE", "value": "Large" }
]
}'
```
```json 201 theme={null}
{
"sku": "SKU-001",
"brand": "BRAND",
"available_quantity": 20,
"price": 23,
"currency_code": "USD",
"package_dimensions": {
"size": { "unit": "cm", "width": 28, "height": 15, "length": 46 },
"weight": { "value": 3, "unit": "kg" }
},
"product_dimensions": {
"size": { "unit": "cm", "width": 26, "height": 13, "length": 42 },
"weight": { "value": 2, "unit": "kg" }
},
"images": [{ "source_url": "https://example.com/image.jpg" }],
"condition": "NEW",
"title": "Product Title",
"description_language": "en",
"description": "Product description",
"attributes": [
{ "type": "COLOR", "value": "Red" },
{ "type": "SIZE", "value": "Large" }
]
}
```
```json 400 theme={null}
{
"code": 400,
"message": "Invalid Request Payload.",
"errors": [
"Sku should be between 1 character minimum and 45 characters maximum.",
"Brand should be between 1 character minimum and 45 characters maximum."
]
}
```
```json 400 theme={null}
{
"code": 400,
"message": "Sku already exists."
}
```
```json 401 theme={null}
{
"code": 401,
"message": "Unauthorized"
}
```
# Create product by ASIN
Source: https://nocnoc.mintlify.app/api/api-reference/products/create-product-asin
POST https://live.nocnocstore.com/api/v2/products/
Creates a new product using an Amazon ASIN to auto-populate product data.
## Body parameters
Alphanumeric unique code for the product. Between 1 and 45 characters.
Must include `asin` as an array of strings. Example: `{"asin": ["B00QAIV7V2"]}`.
Stock quantity. Between 0 and 9999.
Price of the product. Up to 10 integer digits and 2 decimal places.
Currency code (ISO). Required if `price` is provided. Currently only `USD` is supported.
## Returns
The created product object with data populated from the Amazon ASIN.
## Example request
```bash theme={null}
curl -X POST https://live.nocnocstore.com/api/v2/products/ \
-H "X-Api-Key: YOUR_SELLER_KEY" \
-H "Content-Type: application/json" \
-d '{
"sku": "SKU123",
"international_ids": { "asin": ["B00QAIV7V2"] },
"available_quantity": 10,
"price": 100,
"currency_code": "USD"
}'
```
```json 200 theme={null}
{
"sku": "MY-SKU-002",
"title": "Product title from Amazon",
"brand": "Brand from Amazon",
"price": 49.99,
"currency_code": "USD",
"available_quantity": 50,
"status": "active"
}
```
```json 400 theme={null}
{
"code": 400,
"message": "Sku already exists."
}
```
```json 401 theme={null}
{
"code": 401,
"message": "Unauthorized"
}
```
# Get product by SKU
Source: https://nocnoc.mintlify.app/api/api-reference/products/get-product
GET https://live.nocnocstore.com/api/v2/products/sku/{sku}
Returns the complete information for a single product identified by its SKU.
## Path parameters
The unique SKU of the product.
## Returns
The complete product data for the given SKU, including price, stock, dimensions, images, and attributes.
## Example request
```bash theme={null}
curl https://live.nocnocstore.com/api/v2/products/sku/MY-SKU-001 \
-H "X-Api-Key: YOUR_SELLER_KEY"
```
```json 200 theme={null}
{
"sku": "TEST1",
"created_at": "2023-06-21 18:35:14",
"updated_at": "2023-06-23 18:35:14",
"international_ids": {
"asin": "BTEST1",
"gtin": ["123123TEST1"]
},
"brand": "MyBrand",
"available_quantity": 100,
"price": 19.99,
"currency_code": "USD",
"status": "SUCCESS",
"package_dimensions": {
"size": {
"unit": "inches",
"width": 5.0,
"height": 5.0,
"length": 3.0
},
"weight": {
"value": 1.5,
"unit": "kg"
}
},
"product_dimensions": {
"size": {
"unit": "inches",
"width": 20.0,
"height": 10.0,
"length": 5.0
},
"weight": {
"value": 2.0,
"unit": "kg"
}
},
"images": [
{ "source_url": "https://example.com/image.jpg" }
],
"title": "Product Title",
"description_language": "en",
"description": "Product description",
"description_html": "Product description in HTML
",
"attributes": [
{ "type": "COLOR", "value": "Red" },
{ "type": "SIZE", "value": "Large" }
]
}
```
```json 401 theme={null}
{
"code": 401,
"message": "Unauthorized"
}
```
```json 404 theme={null}
{
"code": 404,
"message": "Sku not found"
}
```
# Get products
Source: https://nocnoc.mintlify.app/api/api-reference/products/list-products
GET https://live.nocnocstore.com/api/v2/products
Returns all your published products. Supports filtering by date and pagination.
## Query parameters
Filter products updated from this date. Format: `yyyy-MM-dd'T'HH:mm:ss.SS'Z'`
Filter products updated up to this date. Format: `yyyy-MM-dd'T'HH:mm:ss.SS'Z'`
Page number for pagination.
Number of results per page.
## Returns
A paginated list of your published products, including SKU, title, price, stock, dimensions, images, and attributes.
## Example request
```bash theme={null}
curl https://live.nocnocstore.com/api/v2/products?page=1&size=10 \
-H "X-Api-Key: YOUR_SELLER_KEY"
```
```json 200 theme={null}
{
"products": [
{
"sku": "TEST1",
"created_at": "2023-06-21 18:35:14",
"updated_at": "2023-06-23 18:35:14",
"international_ids": {
"asin": "BTEST1",
"gtin": ["123123TEST1"]
},
"brand": "MyBrand",
"available_quantity": 100,
"price": 19.99,
"currency_code": "USD",
"status": "SUCCESS",
"package_dimensions": {
"size": {
"unit": "inches",
"width": 5.0,
"height": 5.0,
"length": 3.0
},
"weight": {
"value": 1.5,
"unit": "kg"
}
},
"product_dimensions": {
"size": {
"unit": "inches",
"width": 20.0,
"height": 10.0,
"length": 5.0
},
"weight": {
"value": 2.0,
"unit": "kg"
}
},
"images": [
{ "source_url": "https://example.com/image.jpg" }
],
"title": "Product Title",
"description_language": "en",
"description": "Product description",
"description_html": "Product description in HTML
",
"attributes": [
{ "type": "COLOR", "value": "Red" },
{ "type": "SIZE", "value": "Large" }
]
}
]
}
```
```json 400 theme={null}
{
"code": 400,
"message": "Invalid query parameter format."
}
```
```json 401 theme={null}
{
"code": 401,
"message": "Unauthorized"
}
```
# Update stock and price
Source: https://nocnoc.mintlify.app/api/api-reference/products/update-stock-price
PATCH https://live.nocnocstore.com/api/v2/products/sku/{sku}
Updates the stock quantity and/or price of an existing product.
At least one of `available_quantity` or `price` must be provided. If `price` is provided, `currency_code` is required.
## Path parameters
The SKU of the product to update.
## Body parameters
New stock quantity. Between 0 and 9999. Required if `price` is not provided.
New price. Required if `available_quantity` is not provided.
Currency code (ISO). Required if `price` is provided. Currently only `USD` is supported.
## Returns
The updated product object reflecting the new stock and/or price.
```json 200 theme={null}
{
"sku": "MY-SKU-001",
"available_quantity": 75,
"price": 24.99,
"currency_code": "USD"
}
```
```json 400 theme={null}
{
"code": 400,
"message": "Invalid Request Payload.",
"errors": [
"available_quantity or price is required."
]
}
```
```json 401 theme={null}
{
"code": 401,
"message": "Unauthorized"
}
```
```json 404 theme={null}
{
"code": 404,
"message": "Sku not found"
}
```
# Response codes
Source: https://nocnoc.mintlify.app/api/api-reference/responses
HTTP status codes and error structures returned by the nocnoc API.
The nocnoc API uses standard HTTP status codes to indicate the result of every request.
## Status codes
| Code | Meaning | When it happens |
| ----- | ---------------------- | ------------------------------------------------------------- |
| `200` | OK | Request succeeded. |
| `201` | Created | Resource created successfully. |
| `400` | Bad Request | Invalid payload, missing required fields, or duplicate SKU. |
| `401` | Unauthorized | Missing or invalid API key. |
| `404` | Not Found | The requested resource does not exist. |
| `409` | Conflict | The request conflicts with the current state of the resource. |
| `415` | Unsupported Media Type | Missing `Content-Type: application/json` header. |
| `500` | Internal Server Error | An unexpected error occurred on nocnoc's side. |
## Error response structure
All errors return a consistent JSON structure:
```json theme={null}
{
"code": 401,
"message": "Unauthorized"
}
```
Validation errors (400) may include an additional `errors` array with field-level details:
```json theme={null}
{
"code": 400,
"message": "Invalid Request Payload.",
"errors": [
"Sku should be between 1 character minimum and 45 characters maximum.",
"Brand should be between 1 character minimum and 45 characters maximum."
]
}
```
# Sending packages
Source: https://nocnoc.mintlify.app/api/guides/sending-packages
Learn how nocnoc's two-tier package model works and how to register shipments.
nocnoc manages shipments using two types of packages: **Son** and **Father**.
* A **Son package** represents a single order ready to ship.
* A **Father package** consolidates multiple Son packages into one bulk first-mile shipment.
## Individual shipment
When you have a single order to ship, create one Son package for it.
## Consolidated shipment
When you have multiple orders ready to ship together, create a Son package per order and then group them into a single Father package.
## How it works
For each order you're ready to ship, call [Create Son package](/api/api-reference/packages/create-son-package) with the order reference ID, labels, and items.
If you're shipping multiple orders together, call [Create Father package](/api/api-reference/packages/create-father-package) with the Son package IDs. Skip this step for individual shipments.
# Introduction
Source: https://nocnoc.mintlify.app/api/introduction
nocnoc gives marketplace sellers a single API to publish products, handle orders, and manage shipments — all from `live.nocnocstore.com`.
## What you can do
Create listings manually or from an Amazon ASIN.
Update your products' stock and pricing in real time across all your channels.
Fetch incoming orders with filters for status and date range. Cancel orders when needed.
Send individual or consolidated packages and handle first-mile shipping.
## Base URL
All requests go to the live environment:
```
https://live.nocnocstore.com/api/v2
```
nocnoc currently operates a single live environment. A sandbox is under development — contact your Account Manager to arrange testing with fake orders and products in the meantime.
# Quick Start
Source: https://nocnoc.mintlify.app/api/quickstart
Get authenticated and make your first API call.
This guide gets you set up with the nocnoc API — from understanding the environment to making your first authenticated request.
## Environment
nocnoc runs a single live environment. Every request you make is processed as a real transaction against real data.
| Property | Value |
| -------- | ------------------------------------- |
| Base URL | `https://live.nocnocstore.com/api/v2` |
| Status | Active |
All requests are live. Any products you create or orders you place affect real customers. Coordinate with your Account Manager before running volume tests.
## Authentication
nocnoc uses API keys. Include your `SELLER_KEY` in the `X-Api-Key` header on every request. Your key is provided by the nocnoc team — contact your Account Manager if you don't have one yet.
Every request must also include the `Content-Type: application/json` header. Requests without it will return a `415 Unsupported Media Type` error.
| Header | Value |
| -------------- | ------------------- |
| `X-Api-Key` | Your seller API key |
| `Content-Type` | `application/json` |
No IP allowlist configuration is required. The API accepts requests from any origin IP address.
## Your first request
```bash theme={null}
curl https://live.nocnocstore.com/api/v2/products \
-H "X-Api-Key: YOUR_SELLER_KEY" \
-H "Content-Type: application/json"
```
A `200` response confirms your key is valid. A `401` indicates the key is missing or incorrect.
# Create new products in nocnoc from GoFlow
Source: https://nocnoc.mintlify.app/goflow/create-listings
How to create new nocnoc products directly from GoFlow using Amazon ASINs.
If you have products that don't exist yet in nocnoc, you can create them directly from GoFlow using Amazon ASINs. GoFlow looks up the listing details on Amazon and uses them to build your nocnoc catalog automatically — you only need to provide minimal data.
## Creating listings in bulk
From the sidebar, go to **Directory → Stores** and open your nocnoc store.
In the upper-right corner, click the **Upload** icon and select **Create Listings**.
Upload your file — the only required column is **Item Number**.
GoFlow will automatically fill in any missing fields (ASIN, price, SKU, unit of measure) by looking them up from your mapped Amazon listings.
### Example file
| Item Number | ASIN | Price | SKU | Unit of Measure |
| ----------- | ---------- | ----- | ------- | --------------- |
| ITEM-001 | B08N5WRWNW | 29.99 | SKU-001 | CS |
| ITEM-002 | | | | |
In the example above, **ITEM-002** only requires the Item Number — GoFlow handles the rest by pulling the data from your mapped Amazon listings.
# Link existing nocnoc products to GoFlow
Source: https://nocnoc.mintlify.app/goflow/enable-listings-import
How to import your existing nocnoc products into GoFlow automatically.
If you already have products created in nocnoc — whether through your account manager or directly in Seller Center — you can have GoFlow automatically import them. When listings import is enabled, GoFlow periodically checks nocnoc for new products and pulls them into your GoFlow nocnoc store.
This is a one-way sync: GoFlow looks for products that exist in nocnoc but aren't yet in GoFlow, and imports them. It does **not** push products from GoFlow to nocnoc — for that, see [Create new products in nocnoc](/goflow/create-listings).
## To enable listings import
From the left sidebar, go to **Directory → Stores** and open your nocnoc store.
On the **Status** card, find the **Listings Import** setting and click the pencil icon to edit.
Set Listings Import to **Enabled** and click **Save**.
Once enabled, GoFlow will check nocnoc for new products every few hours and import any that aren't already in GoFlow. This means whenever you or your account manager create new products on the nocnoc side, they'll automatically appear in GoFlow during the next sync.
# Consolidate orders
Source: https://nocnoc.mintlify.app/goflow/how-to-consolidate
How to consolidate multiple nocnoc orders into a single master package in GoFlow.
When shipping multiple nocnoc orders together, you can consolidate them into a single master package with one tracking number. This reduces shipping costs and simplifies your operation.
## How consolidation works
1. Download all the nocnoc labels (store carton labels) for the orders you want to consolidate
2. Print and attach each label to its corresponding individual package
3. Place all individual packages inside a single master box
4. Ship the master box and assign the same tracking number to every order in the consolidation
## Download nocnoc labels in bulk
Go to the **Orders** section and select all the orders you want to consolidate.
Click **Actions** in the toolbar.
Click the three dots next to **Download Order Documents**, select **Store Carton Labels**, and click **Download**.
## Assign the tracking number
Once your master box is shipped, assign the same tracking number to every order in the consolidation.
Bulk tracking upload is currently in development. For now, you need to open each order individually in GoFlow and set the tracking number manually.
# Introduction
Source: https://nocnoc.mintlify.app/goflow/introduction
How the GoFlow integration works, what syncs automatically, and how to get started.
The GoFlow integration lets you connect your existing GoFlow account to nocnoc, enabling automated order management between both platforms. Once connected, nocnoc orders flow directly into GoFlow so you can manage fulfillment from a single place.
## How it works
The integration works by adding **nocnoc as a store** inside your GoFlow account — just like any other sales channel. This means nocnoc gets its own dedicated space where you control:
* **Which products** to list on nocnoc
* **What prices** to set — independently from your other channels
* **How much inventory** to allocate — you choose the percentage or quantity reserved for nocnoc
* **Order fulfillment** — nocnoc orders appear under this store, ready to pick and ship
Because nocnoc is just another store in GoFlow, you manage it with the same tools and workflows you already use for your other channels.
The setup involves two main steps: connecting your nocnoc store to GoFlow, and then enabling and creating your nocnoc listings.
## What syncs automatically
Once the integration is live:
nocnoc orders appear in GoFlow for fulfillment.
Stock levels sync between GoFlow and nocnoc.
Pricing set in GoFlow for your nocnoc store is reflected in nocnoc.
Once fulfilled in GoFlow, tracking info is sent back to nocnoc automatically.
# Managing nocnoc orders
Source: https://nocnoc.mintlify.app/goflow/managing-orders
How nocnoc orders work in GoFlow — inner boxes, outer boxes, and labels.
nocnoc shipments use two boxes: an **inner box** and an **outer box**.
* The **inner box** contains the product and is delivered to the end customer in Latin America
* The **outer box** contains one or more inner boxes and ships to a nocnoc consolidation facility in the United States
The shipping address in GoFlow is the U.S. nocnoc facility address — **not** the end customer's address.
## Labels
GoFlow imports a **store carton label** from nocnoc, which you affix to the inner box for last-mile delivery. You then create a **small parcel label** for the first-mile shipment to the consolidation facility, which goes on the outer box.
You can either ship each inner box in its own outer box, or consolidate multiple inner boxes into a single outer box with one shipping label.
| | Inner Box | Outer Box |
| -------------------- | ----------------------------- | -------------------- |
| **Shipment leg** | Last mile | First mile |
| **Contents** | Product | Inner boxes |
| **Ships to** | End customer in Latin America | U.S. nocnoc facility |
| **Label** | Store carton label | Small parcel label |
| **Label created by** | nocnoc, imported to GoFlow | Seller |
# Set nocnoc specific pricing
Source: https://nocnoc.mintlify.app/goflow/nocnoc-pricing
How to set custom prices for your nocnoc listings in GoFlow, independent from your other channels.
The GoFlow integration allows you to set specific prices for your products on nocnoc, different from the prices you use on your other sales channels. This is done by importing a pricing file directly into your nocnoc store listings.
## How to update nocnoc prices
From the left sidebar, navigate to the **Listings** section.
In the upper-right corner, click the **Import** button.
From the dropdown, select **Import Listing Prices**.
Select the **nocnoc** store from the store dropdown.
Download the CSV template — it contains two columns: **SKU** and **List Price**. Fill it in with the prices you want to set for each product.
If you need a list of all your store SKUs, you can export them first using **Export Listings** from your nocnoc store.
Click **Upload** to apply the new prices to your nocnoc listings.
# Integration setup
Source: https://nocnoc.mintlify.app/goflow/setup
Step-by-step guide to connect your GoFlow account with nocnoc.
Access the left sidebar on the GoFlow dashboard and go to **Directory → Stores**.
Click **New Store** in the upper-right corner.
Search for `nocnoc` in the search bar and select it as the channel.
Enter `nocnoc` as the store name, select at least one warehouse for order fulfillment, and click **Save**.
On the store page, go to the **Connection** card (lower right side) and click **Connect**.
Enter your API key — contact your nocnoc Account Manager to obtain it.
Click **Save** to connect the store to your nocnoc account.
**Shipping** — In the **Shipping** card, click **Manage Shipping** to configure your shipping settings.
**Inventory** — In the **Inventory Allocation** card, click **Add Inventory Allocation Settings** to configure inventory allocation.
**Orders Import** — In the **Status** card, find **Orders Import**, click the pencil icon, set it to **Enabled**, and click **Save**. This allows GoFlow to periodically import all orders received through nocnoc.
**Listings Import** — In the same **Status** card, find **Listings Import**, click the pencil icon, set it to **Enabled**, and click **Save**. This allows GoFlow to periodically import all products created on your nocnoc account.
Order and listing imports run on scheduled intervals. If you notice any missing orders or products right after setup, they should appear shortly once the next sync runs.
Once these steps are completed, your GoFlow account will be fully connected to nocnoc.
# nocnoc Developer Hub
Source: https://nocnoc.mintlify.app/index
Everything you need to integrate with nocnoc and start selling across Latin America.
DEVELOPER HUB
One integration for your
entire nocnoc operation
Connect your system to nocnoc using the method that works best for you — API, Shopify, SFTP, or your existing tools.
# Sellercloud setup
Source: https://nocnoc.mintlify.app/sellercloud/setup
Step-by-step guide to connect your Sellercloud account with nocnoc via FTP.
You need to have a seller account with nocnoc and discuss setting up an FTP connection. nocnoc will provide you with the necessary credentials for the setup.
We strongly recommend you create a new designated company for this integration where you will set up the scheduled tasks and receive the orders.
This integration requires creating two **Export Profiles** and one **Import Profile**, which will then be configured on three separate Scheduled Tasks, plus two Saved Searches (for Products and for Orders).
## Download templates
Download the nocnoc templates before starting:
* [Template Tracking](https://drive.google.com/file/d/13aqKOZlI1s3G381sywyGCN4sn93btwtp/view?usp=drive_link)
* [Template Inventory](https://drive.google.com/file/d/1cci6GOf124PKUUpTQ1SsHZka3vW8SgKd/view?usp=drive_link)
* [Template Orders](https://drive.google.com/file/d/1w5mOTyl0XzOAZDQ6rlvUmbYlPz0kxw-H/view?usp=drive_link)
## Create profiles
### Export profiles (×2)
1. Navigate to **Settings → Mapping Tools → Manage Export Mapping Profiles**.
2. Click the blue **Actions** icon in the bottom right corner → **Create**.
3. Fill in the required fields:
* **Profile Name** — e.g. `nocnoc Inventory Feed` and `nocnoc Tracking Export`
* **Profile Type** — set the first to `Product` and the second to `Order`
* For the `Order` type: set **Export Type** to `Tracking` and enable **Export fully shipped orders only**. The Vendor field can remain empty.
* **Export File Type** — set to `CSV`
* Check **Export File with Headers**
4. Click **Template File**, find and select the downloaded template from your device.
5. Click **Add**.
### Import profile
1. Navigate to **Settings → Mapping Tools → Manage Import Mapping Profiles**.
2. Click the blue **Actions** icon in the bottom right corner → **Create**.
3. Fill in the required fields:
* **Profile Name** — e.g. `nocnoc Orders`
* **Import type** — set to `Order`
* **Skip First Rows** — set to `0`
* Check **Order is Paid** and **Order is Authorized**
* **Order Source** — set to `Website`
* **Company** — choose the nocnoc-designated company you created
* **Warehouse** — select the warehouse from which you will fulfill nocnoc orders
* Check **File contain headers**
4. Click **Template File**, find and select the downloaded template from your device.
5. Click **Create**.
## Map profile fields
### Inventory export profile
Go to **Settings → Mapping Tools → Manage Export Profiles → nocnoc Inventory Export → Edit** and map the following fields:
| Field | Maps to |
| ------- | -------------------------- |
| `sku` | `bvc_Product.ID` |
| `price` | `bvc_Product.SitePrice` |
| `stock` | `bvc_Product.AggregateQty` |
If you don't want to use the Site Price for your nocnoc listings, you can request a Product [Custom Column](https://sellercloud.com/help/omnichannel-ecommerce/custom-columns-overview/) and map that instead. Contact [Sellercloud Support](https://sellercloud.com/help/omnichannel-ecommerce/seller-cloud-support/) to set this up.
### Tracking export profile
Go to **Settings → Mapping Tools → Manage Export Profiles → nocnoc Tracking Export → Edit** and map the following fields:
| Field | Maps to |
| -------------- | ---------------------------------- |
| `OrderID` | `bvc_Order.OrderSourceOrderID` |
| `TrackingCode` | `bvc_Order.TrackingNumberProvided` |
| `Carrier` | `bvc_Order.ShippingCarrier` |
| `SKU` | `bvc_OrderItem.ProductID` |
| `Quantity` | `bvc_OrderItem.Qty` |
If your catalog uses parent/child SKU relationships and you want to send tracking for a child SKU, map `SKU` to `bvc_orderitem.productIDOriginal` instead of `bvc_orderitem.productID`.
### Order import profile
Go to **Settings → Mapping Tools → Manage Import Profiles → nocnoc Orders → Edit** and map the following fields:
| Field | Maps to |
| --------------------- | --------------------------- |
| `OrderID` | `Order_OrderSourceOrderID` |
| `SKU` | `Order_Item_ProductID` |
| `Quantity` | `Order_Item_Qty` |
| `Price` | `Order_Item_SalePrice` |
| `CreatedAt` | `Order_TimeOfOrder` |
| `ShippingFirstName` | `Order_ShippingFirstName` |
| `ShippingLastName` | `Order_ShippingLastName` |
| `ShippingAddress1` | `Order_ShippingStreetLine1` |
| `ShippingAddress2` | `Order_ShippingStreetLine2` |
| `ShippingCity` | `Order_ShippingCity` |
| `ShippingPhone` | `Order_ShippingPhoneNumber` |
| `ShippingStateCode` | `Order_ShippingStateCode` |
| `ShippingPostalCode` | `Order_ShippingPostalCode` |
| `ShippingCountryCode` | `Order_ShippingCountryCode` |
## Create scheduled tasks
### Inventory export task
Exports inventory and price feeds to nocnoc on a regular schedule. Requires a [Saved View](https://sellercloud.com/help/omnichannel-ecommerce/saved-searches/) for products.
If you don't sell your entire catalog on nocnoc, you can filter by a custom column called `nocnocEnabled`. Contact [Sellercloud Support](https://sellercloud.com/help/omnichannel-ecommerce/seller-cloud-support/) to set up custom columns.
1. Navigate to **Settings → Scheduled Tasks** and click **Create**.
2. Fill in:
* **Company** — select the nocnoc-designated company
* **Task Type** — `Export Products`
* **Task Name** — e.g. `nocnoc Export Inventory`
* **Start Date** — the first date the task will run automatically
3. Click **Create**, then open the task and click **Edit**:
* **Frequency** — set to run every 30 min to 1 hour
* **User ID** — select your username
* **Saved Search** — select your Product Saved View
* **Export Via** — `Export Mapping Profile: nocnoc Inventory Export`
* **File Name** — must be `inventory.csv` (must end with `.csv`)
* **Export To** — `FTP`
* Fill in the FTP credentials provided by nocnoc
* Enable **Use Passive** and **Use Secure FTP**
4. In the **General** panel, toggle the task to **Enabled**.
5. Click **Save**.
### Tracking export task
Sends fulfilled order tracking information to nocnoc. Requires a [Saved View](https://sellercloud.com/help/omnichannel-ecommerce/saved-searches/) for orders filtered by **Company**, **Order Status: In Process or Completed**, and **Shipping Status: Shipped**.
1. Navigate to **Settings → Scheduled Tasks** and click **Create**.
2. Fill in:
* **Company** — select the nocnoc-designated company
* **Task Type** — `Export Orders`
* **Task Name** — e.g. `nocnoc Tracking Export`
* **Start Date** — the first date the task will run automatically
3. Click **Create**, then open the task and click **Edit**:
* **Frequency** — every 12 hours (tracking doesn't need to be real-time)
* **User ID** — select your username
* **Saved Search** — select your Order Saved View
* **Export Via** — `Export Mapping Profile: nocnoc Tracking Export`
* **File Name** — must be `tracking` (must NOT end with `.csv`)
* Enable **Mark Orders As Exported** and **This Is Tracking Export**
* **Export To** — `FTP`
* Fill in the FTP credentials provided by nocnoc
* Enable **Use Passive** and **Use Secure FTP**
4. In the **General** panel, toggle the task to **Enabled**.
5. Click **Save**.
### Order import task
Imports new nocnoc orders into Sellercloud on a regular schedule.
1. Navigate to **Settings → Scheduled Tasks** and click **Create**.
2. Fill in:
* **Company** — select the nocnoc-designated company
* **Task Type** — `Import Orders`
* **Task Name** — e.g. `nocnoc Order Import`
* **Start Date** — the first date the task will run automatically
3. Click **Create**, then open the task and click **Edit**:
* **Frequency** — every 30 minutes
* **Create Orders for Company** — choose the nocnoc-designated company
* **Plugin** — `Profile: nocnoc Orders`
* **Import From** — `FTP`
* Fill in the FTP credentials provided by nocnoc
* Enable **Use Passive** and **Use Secure FTP**
* **File name** — `orders.csv` (must end with `.csv`)
4. In the **General** panel, toggle the task to **Enabled**.
5. Click **Save**.
***
A video tutorial is available here: [Watch on Loom](https://www.loom.com/share/2149ad44adc84847ad3ea48cf44e0f65?sid=8ce9ba96-3761-40a8-8539-bbc1b6fdc6f8)
# Introduction
Source: https://nocnoc.mintlify.app/shopify/introduction
How the Shopify integration works, what syncs automatically, and how prices are managed.
The Shopify integration lets you connect your existing Shopify store to nocnoc in just a few minutes — no custom development needed. Once connected, nocnoc syncs your catalog and your nocnoc orders flow directly into Shopify, so you can manage everything from a single place you already know.
## How it works
To set it up, you create a **custom app** inside your Shopify store which grants nocnoc access to your store. nocnoc handles the rest from its side.
Once the integration is live, you can choose to import all your active Shopify products or select a specific subset. This catalog import doesn't happen automatically — once your integration is set up, just let your account manager know and they'll kick off the import for you. The same applies whenever you add new products and want them reflected in nocnoc.
## What syncs automatically
After your catalog is imported, the following stays in sync in real time via webhooks — no manual updates needed:
Always reflects what's available in your Shopify store.
Synced from Shopify, with flexible pricing options (see below).
nocnoc orders appear directly in your Shopify dashboard.
Upload the tracking number in Shopify and nocnoc gets notified automatically.
New products are **not** synced automatically. If you add new products to your Shopify store and want them imported to nocnoc, contact your account manager and they'll run the import for you.
## Price management
You choose how nocnoc handles your prices — three options:
| Option | Description |
| ---------------------- | ------------------------------------------------------------------ |
| **Use Shopify prices** | Your Shopify prices are used as-is in nocnoc. |
| **Apply a discount** | A percentage discount is applied across your entire catalog. |
| **Manual pricing** | Ignore Shopify prices and manage them manually from Seller Center. |
Shopify is always the **source of truth** for stock and prices. Any manual changes made in Seller Center will be overwritten the next time Shopify sends an update.
# Add nocnoc barcode to packing slip
Source: https://nocnoc.mintlify.app/shopify/packing-slip
How to add nocnoc's barcode to your Shopify order template for shipping labels.
nocnoc requires a barcode on shipping labels to process your orders. Choose the method that works best for your setup.
Requires the [Order Printer Pro](https://apps.shopify.com/order-printer-pro) app from the Shopify App Store.
Uses Shopify's built-in packing slip template. No additional apps needed.
We recommend **Option 1 (Order Printer Pro)** whenever possible. It's easier to set up and provides a more reliable barcode rendering.
***
## Option 1: Order Printer Pro
### Step 1: Open the template editor
Access the **Manage Templates** section of the Order Printer Pro plugin. Select the template you use for nocnoc orders and click **Edit Template**.
### Step 2: Add the barcode code
Insert the following two code blocks into your template.
**Code 1** — Captures the nocnoc Order ID. Add this at the **beginning** of the template.
```liquid theme={null}
{% if order.note contains "NocNoc Order Id:" %}
{% capture nocnoc_order_id %}{{ order.note | split: ":" | last | strip }}{% endcapture %}
{% endif %}
```
**Code 2** — Adds the barcode and the `nocnoc OrderID: NCXXXXX` label. Add this **wherever you want** in your template. It only displays for nocnoc orders and won't affect the rest of your operation.
```liquid theme={null}
{% if nocnoc_order_id != blank %}
nocnoc Order Id: {{ nocnoc_order_id }}
{% endif %}
```
Once you've made both changes, click **Save**.
***
## Option 2: Native packing slips
### Step 1: Download and upload the barcode font
Download the Barcode 39 Text font from Google Fonts:
[https://fonts.google.com/specimen/Libre+Barcode+39+Text](https://fonts.google.com/specimen/Libre+Barcode+39+Text)
Extract the `.zip` file and upload the `.ttf` file to your Shopify store. Go to **Content → Files** and click **Upload Files**.
Copy and save the URL that Shopify generates for your uploaded file — you'll need it in the next step.
### Step 2: Modify the packing slip template
Go to **Settings → Shipping and Delivery → Packing Slips Template** and add the following three code blocks.
**Code 1** — Loads the barcode font. Add this at the **beginning** of the template. Replace `URL_OF_YOUR_FONT_FILE` with the URL from Step 1.
```html theme={null}
```
**Code 2** — Captures the nocnoc Order ID. Add this at the **beginning** of the template.
```liquid theme={null}
{%- assign nocnoc_order_id = '' -%}
{%- if order.note contains "NocNoc Order Id:" -%}
{%- assign nocnoc_order_id = order.note | split: ":" | last | strip | upcase -%}
{%- endif -%}
```
**Code 3** — Adds the barcode and the `nocnoc OrderID: NCXXXXX` label. Add this **wherever you want** in your template. It only displays for nocnoc orders and won't affect the rest of your operation.
```liquid theme={null}
{%- if nocnoc_order_id != blank -%}
*{{- nocnoc_order_id -}}*
nocnoc Order Id: {{ nocnoc_order_id }}
{%- endif -%}
```
Once you've made all changes, click **Save**.
# Shopify setup
Source: https://nocnoc.mintlify.app/shopify/setup
Step-by-step guide to connect your Shopify store with nocnoc.
Go to the **Settings** section inside your Shopify Admin panel.
Inside Settings, navigate to **Apps → Develop Apps**.
Save your store's domain URL (visible in the upper left corner) — you'll need to share it with nocnoc later.
Click on **Build apps from Dev Dashboard**.
Inside the Dev Dashboard, go to the **Apps** section and click **Create App**.
Fill in the **App name** (we suggest using `nocnoc`) and click **Create**.
In the **Create a version** section, fill in the following fields:
* **App name** — same as the one you chose above.
* **App URL** — `http://nocnocstore.com`
* Uncheck **Embed app in Shopify admin**.
* **Webhooks API Version** — select the latest available version.
Scroll down and click **Select Scopes**.
Search for and enable the following scopes:
| Scope | Required |
| ----------------- | ------------------------------------------------------------- |
| `read_products` | Required |
| `read_orders` | Required |
| `write_orders` | Required |
| `read_customer` | Required |
| `write_customers` | Required |
| `read_inventory` | Required |
| `read_locations` | Optional — only if stock is managed across multiple locations |
Click **Done** to save the configuration.
Confirm all required scopes are selected, then set the **Redirect URL** to:
```
https://live.nocnocstore.com/shopify/oauth/callback
```
No action is required for the POS or App proxy sections.
Click **Release** to create the version.
Set the **Version name** to `onboarding_version` and click **Release**.
In the **Settings** section of the nocnoc app, save the following — you'll need to share them with your Account Manager:
* **Client ID**
* **Secret**
Go to the **Home** section of the nocnoc app and click **Install app**.
In the window that opens, select the active Shopify store you want to connect to nocnoc.
Review the access permissions requested and click **Install**.
After clicking Install, you'll be redirected to nocnoc's website — no action is needed there. Close that page and return to your Shopify Admin to continue.
Close the Dev Dashboard and return to **Settings** in your Shopify Admin panel.
Navigate to **Notifications → Webhooks**.
Create the following two webhooks:
**Webhook 1 — Product updates**
| Field | Value |
| ------- | -------------------------------------------------------- |
| Event | Product Update |
| Format | JSON |
| URL | `https://live.nocnocstore.com/shopify/webhooks/products` |
| Version | Latest |
**Webhook 2 — Fulfillment creation**
| Field | Value |
| ------- | ------------------------------------------------------------------- |
| Event | Fulfillment Creation |
| Format | JSON |
| URL | `https://live.nocnocstore.com/shopify/webhooks/orders/fulfillments` |
| Version | Latest |
Once all previous steps are complete, email your Account Manager with the following information to finish the integration setup:
* **Store domain URL** (from Step 2) — the URL ending in `.myshopify.com` (e.g. `yourstore.myshopify.com`). Find it in **Settings → Domains**.
* **Client ID** (from Step 9)
* **Secret** (from Step 9)
Send your `.myshopify.com` URL, not your public website URL (e.g. `www.mystore.com`) — the public URL cannot be used for the integration.
# Shipping your orders
Source: https://nocnoc.mintlify.app/shopify/shipping-orders
How to ship nocnoc orders from Shopify — consolidated shipments vs. individual orders.
When selling on nocnoc via Shopify, you have two ways to ship your orders: **consolidated shipments** (multiple orders in a single master box) or **individual orders** (one package per order). We recommend consolidating whenever possible — it significantly reduces shipping costs and makes your operation easier to scale. Individual shipping is available for specific cases where consolidation isn't practical.
***
## Scenario 1: Consolidated shipments
This is the **recommended** approach. Consolidating multiple orders into a single master box reduces your shipping costs and is the best way to scale your nocnoc operation.
Since nocnoc's internal label isn't sent through the Shopify integration, you'll need to configure a custom packing slip in Shopify to identify each individual package inside the consolidation.
Once your packing slip is configured:
Print the packing slip from Shopify for each individual order.
Attach the packing slip to each individual package.
Place all packages inside the master box.
Generate a single carrier label for the master box.
Upload that tracking number to each individual order in Shopify.
This way nocnoc can correctly identify every package inside the consolidation and match it to its tracking.
See **Add nocnoc barcode to packing slip** →
***
## Scenario 2: Individual orders
For cases where consolidation isn't possible, you can ship each order separately. No extra setup is needed — nocnoc doesn't require its internal label for individual shipments.
Pack the product for shipping.
Generate a carrier label (UPS, FedEx, USPS, etc.).
Ship the package.
Upload the tracking number in Shopify.
Once the tracking is added, Shopify automatically notifies nocnoc and the order is marked as shipped.