PrintNowPrintNowDocs

Storefronts

List storefronts, retrieve order statuses, find sales reps, search orders, and query abandoned carts.

The Storefronts endpoints let you discover the storefronts under your license, retrieve their available order statuses and sales representatives, search for orders with pagination and filtering, and query abandoned shopping carts.

Endpoints

MethodEndpointDescription
GET/api/v2/storefront/allList all storefronts
GET/api/v2/storefront/{storefrontId}Get a specific storefront
GET/api/v2/storefront/{storefrontId}/statusesList order statuses for a storefront
GET/api/v2/storefront/{storefrontId}/sales_repsList sales reps for a storefront
GET/api/v2/storefront/{storefrontId}/search_ordersSearch orders in a storefront
GET/api/v2/storefront/{storefrontId}/abandoned_cartsGet abandoned carts for a storefront

List Storefronts

Retrieve all active (non-deleted) storefronts under your license.

GET /api/v2/storefront/all

Example Response

[
  {
    "id": 1,
    "name": "My Print Store",
    "url": "store.example.com",
    "is_retail": true
  },
  {
    "id": 2,
    "name": "Wholesale Portal",
    "url": "wholesale.example.com",
    "is_retail": false
  }
]

Storefront Fields

FieldTypeDescription
idintegerUnique storefront ID. Use this when calling other endpoints that accept a storefrontId.
namestringStorefront display name.
urlstringStorefront domain URL.
is_retailbooleanWhether this is a retail (public) storefront vs. a private/B2B storefront.

Get Storefront

Retrieve a single storefront by ID.

GET /api/v2/storefront/{storefrontId}

Returns the same Storefront object.

Get Status List

Retrieve the list of order statuses configured for a storefront, ordered by their sequence position.

GET /api/v2/storefront/{storefrontId}/statuses

Example Response

[
  { "id": 10, "name": "New Order", "is_production": false, "order": 1 },
  { "id": 11, "name": "In Production", "is_production": true, "order": 2 },
  { "id": 12, "name": "Shipped", "is_production": false, "order": 3 }
]

Status Fields

FieldTypeDescription
idintegerStatus ID. Use the name (not ID) when calling the Update Order Status endpoint.
namestringStatus display name.
is_productionbooleanWhether this status is classified as a production status (status type starts with "production").
orderintegerSequence position for display ordering.

Get Sales Reps

Retrieve customers flagged as sales representatives on a storefront.

GET /api/v2/storefront/{storefrontId}/sales_reps

Returns an array of Customer objects for users marked as sales reps.

Search Orders

Search for orders in a storefront with filtering and pagination. Returns 20 results per page.

GET /api/v2/storefront/{storefrontId}/search_orders

Parameters

NameTypeLocationDescription
storefrontIdintegerpathTarget storefront ID.
querystringqueryFree-text search matching order ID, customer name, PO number, or billing/shipping name. Optional.
fromDatedatequeryStart date filter (inclusive). Format: YYYY-MM-DD. Optional.
toDatedatequeryEnd date filter (inclusive). Format: YYYY-MM-DD. Optional.
statusstringqueryComma-separated list of status IDs to filter by. Optional.
sales_repstringqueryComma-separated list of sales rep customer IDs to filter by. Optional.
pageintegerqueryPage number (1-based). Defaults to 1.
viewstringqueryOrder view: active (default), archived, or deleted.

Example Request

curl -X GET "https://api.printnow.com/api/v2/storefront/1/search_orders?fromDate=2026-01-01&toDate=2026-01-31&status=10,11&page=1" \
  -u "YOUR_TOKEN:YOUR_KEY"

Example Response

{
  "total_results": 47,
  "page": 1,
  "total_pages": 3,
  "orders": [
    {
      "id": 5001,
      "storefront": "My Print Store",
      "status": "New Order",
      "customer": { },
      "items": [ ]
    }
  ]
}

Search Results Fields

FieldTypeDescription
total_resultsintegerTotal number of matching orders across all pages.
pageintegerCurrent page number.
total_pagesintegerTotal number of pages (20 results per page).
ordersarrayArray of full Order objects for the current page.

Get Abandoned Carts

Retrieve abandoned shopping carts for logged-in (non-temporary) users on a storefront. Only returns carts that contain items.

GET /api/v2/storefront/{storefrontId}/abandoned_carts

Parameters

NameTypeLocationDescription
storefrontIdintegerpathTarget storefront ID.
fromDatedatequeryStart date filter. Format: YYYY-MM-DD. Optional (use either date range or recentSpan).
toDatedatequeryEnd date filter. Format: YYYY-MM-DD. Optional.
recentSpanstringqueryRelative time span. Format: number + unit (d=days, w=weeks, m=months). Examples: 7d, 2w, 3m. Defaults to 7d if no dates provided.

The from date cannot be more than 180 days in the past.

Example Request

curl -X GET "https://api.printnow.com/api/v2/storefront/1/abandoned_carts?recentSpan=2w" \
  -u "YOUR_TOKEN:YOUR_KEY"

Example Response

[
  {
    "created_on": "2026-01-18T14:30:00",
    "customer_id": 12345,
    "first_name": "Jane",
    "last_name": "Smith",
    "email": "jane@example.com",
    "items": [
      {
        "name": "Business Cards",
        "quantity": 500,
        "thumbnail": "/thumbnails/p/42",
        "options": [
          { "name": "Paper Stock", "value": "14pt Matte" },
          { "name": "Size", "value": "3.5 x 2" }
        ]
      }
    ]
  }
]

Abandoned Cart Fields

FieldTypeDescription
created_ondatetimeWhen the cart was created.
customer_idintegerCustomer ID of the cart owner.
first_namestringCustomer first name.
last_namestringCustomer last name.
emailstringCustomer email address.
itemsarrayArray of cart items.

Abandoned Cart Item Fields

FieldTypeDescription
namestringProduct name.
quantityintegerQuantity in cart.
thumbnailstringRelative URL to the product thumbnail image.
optionsarrayArray of selected options as name/value pairs. Includes pricing options, size, color, turnaround, and parametric variables.

Error Responses

CodeMessageCause
404Storefront not found.No active storefront with this ID exists under your license.
400From date can't be more than 180 days in the past.The fromDate parameter exceeds the 180-day lookback limit for abandoned carts.
  • Orders — retrieve full order details returned by the search endpoint
  • Customers — manage customer accounts discovered through abandoned carts or sales reps
  • Reports — run business reports using storefront IDs from this endpoint

On this page