Getting Started with Dubow Integration API

Introduction

Welcome to the Dubow Integration API documentation. This API enables seamless order processing and management through automated systems.

  • Key Benefits:
    • Submit orders in bulk or individually.
    • Minimize manual data entry, saving time and reducing errors.
    • Streamline order tracking and status updates.
  • Methods Supported:
    • Push Method (Recommended): Send order data directly to Dubow’s system.
    • Pull Method: Schedule automated downloads to retrieve orders.

  • Created: April 8, 2016
  • Update: May 2, 2025

If you have any questions that are beyond the scope of this help file, Please feel free to email via Contact Support Page.


Authentication

All requests to the Dubow API must include a valid UserID and Password inside the Authorization block. This is required in JSON format.

Fields

Field Type Required Description
UserID int Yes Your assigned Dubow integration user ID
Password string Yes Your Dubow-provided integration password

JSON Authentication Block

Common Authentication Errors

  • Unauthorized. Please check UserID and Password. – Happens when credentials are missing or incorrect.
  • Make sure Content-Type is set to application/json.
  • Use test credentials only in sandbox environments; live credentials should be kept secure.

Order Creation

Use this endpoint to submit one or more orders to Dubow. Each order requires authentication and must contain at least one manifest with one or more valid decorated line items.

Endpoint

  • URL: https://integration.dubowtextile.com/integration/orderintegrationservice.svc/json/orders/new
  • Method: POST
  • Headers: Content-Type: application/json

Required Fields

  • Authorization: Contains UserID and Password.
  • Orders: Array of IntegrationOrder objects.
  • Each order must include:
    • CustomerID
    • ContactID
    • PoNumber
    • Manifests (must include at least one LineItem)

Optional Fields

  • ReturnAddress
  • ShipmentNotificationUrl
  • OrderStatusNotificationUrl
  • CommitLater
  • IsTestOrder
  • Platform
  • CustomerStore
  • SecondaryPo
  • EndUserPo
  • Notes

Minimal — Existing Design

Minimal — Design via URL

Full — Existing Design

Full — Design via URL


Order Status

Use this endpoint to retrieve the current status of orders submitted to Dubow. Status updates can also be received via webhook if configured.

Status Check Endpoint

  • URL: https://integration.dubowtextile.com/integration/orderintegrationservice.svc/json/orders/status
  • Method: POST
  • Headers: Content-Type: application/json

Response Fields

  • ResponseSummary.IsSuccess: Indicates if the query was successful.
  • OrderResults: An array of order summaries containing:
    • PoNumber
    • OrderStatus
    • TrackingNumber
    • Carrier

Possible OrderStatus Values

  • Received
  • In Production
  • Shipped
  • Canceled
  • Backordered

Webhook Alternative

If you include OrderStatusNotificationUrl in your order request, Dubow will push order status updates automatically to that endpoint.

Sample Order Status Response


Invoice Status

Use this endpoint to retrieve invoicing and billing status for your submitted orders. This is useful for reconciliation, accounts payable, and reporting workflows.

Endpoint

  • URL: https://integration.dubowtextile.com/integration/orderintegrationservice.svc/json/invoices/status
  • Method: POST
  • Headers: Content-Type: application/json

Request Fields

  • Authorization: Contains UserID and Password.
  • PoNumber: The PO to look up billing/invoice details for.

Response Fields

  • OrderID
  • CustomerID
  • IsInvoiced
  • IsCanceled
  • ShippingTotal
  • DecorationTotal
  • GarmentTotal
  • Services
  • Total
  • AmountDue
  • AmountPaid
  • AmountCredited
  • AmountDebited
  • DateInvoiced
  • LineItems (array of invoiced items)

Sample Invoice Status Response


Manifests

A manifest groups one or more line items being shipped to the same address with a shared shipping method. Each order must contain at least one manifest.

Required Fields

  • ShipMethodAbbreviation: e.g., UPSG, FEDEXG, USPS1ST found in our available ship methods
  • ShipToAddress: Full shipping address object
  • LineItems: List of line items included in the shipment

Optional Fields

  • IsResidential: Boolean flag for residential delivery
  • ThirdPartyAccountNumber: For billing shipping to a third-party account
  • PackingSlipUrl: PDF slip to include in the box
  • Notes: Manifest-specific notes for production or packing

Sample Manifest


Transactional Data

Transactional Data provides critical order-level details that ensure accurate processing and tracking.

CustomerID

A unique identifier for the customer associated with the order. This is required for customer-specific data mapping.

  • Type: Integer
  • Example: 12345

PONumber

The primary purchase order number for the transaction. Used to reference orders within the system.

  • Type: String
  • Example: PO123456

SecondaryPO

Additional purchase order numbers for reference. Useful for orders linked to multiple POs.

  • Type: String (optional)
  • Example: PO654321

EndUserPO

A purchase order number provided by the end user, if applicable. This is often used for drop shipping scenarios.

  • Type: String
  • Example: ENDUSER123

ContactID

An identifier for the main contact associated with the order. Ensures direct communication for order issues or clarifications.

  • Type: Integer
  • Example: 4544

CustomerStore

A code used to assign a program or store to the order. This code is defined in the program.

  • Type: String
  • Example: Store123

Platform

The platform from which the order originated, such as OrderDesk or RubikX.

  • Type: String
  • Example: OrderDesk

Order Notes

Freeform text for any special instructions or notes related to the order.

  • Type: String (optional)
  • Example: Full Front needs to be 4 inches down from collar.

Line Items

A line item represents a product being decorated and shipped. Each manifest must contain at least one valid line item.

Required Fields

  • IntegrationProduct: The decorated product definition (explained below)
  • LineItemSizes: Array of quantity and size combinations (explained below)

Optional Fields

  • Name: SKU or unique identifier
  • NoDecoration: Boolean; set to true if this item does not require decoration
  • Notes: Per-line-item notes shown to production
  • RetailPrice: MSRP or end-customer visible price
  • HarmonizedCode: International customs classification
  • Services: Array of additional service codes to apply (e.g., folding)
  • Designs: Array of applied designs (required unless NoDecoration is true)

IntegrationProduct

This object identifies which product is being decorated and how it is sourced.

  • ProductName: Unique product reference, e.g. 2000
  • CustomerProductName: Optional. Customer's product cross-reference code
  • VendorProductName: Optional. Vendor's product style number
  • Mill: Required if using VendorProductName. e.g. Gildan
  • Description: Required. Descriptive label of the item
  • ProcurementType: Required. One of: Contract, Inventory, Custom
  • ProductTypeName: Optional. Product type label, e.g. Apparel, Bag
  • Color: Optional. Product color name
  • ProductID: Optional. Dubow's internal product ID
  • VendorID: Optional. Required for ProcurementType: Custom
  • Notes: Optional. Notes related to this specific product
  • Urls: Optional. Array of image/preview URLs (see IntegrationUrl)

LineItemSizes

This is an array defining how many of each size are being ordered.

  • Quantity: Required. The number of items for this size
  • SizeAsString: Required. A human-readable size label, such as:
    • Compact: S, XL, 2XL, 3XLT, LT, 4XT
    • Hyphenated: 3X-LARGE, 2X-LARGE TALL
    • Verbose: Small, Medium, Extra Large
  • Sizes are case-insensitive and format-flexible. Common formats like 3XL, 3X-LARGE, and 3X-LARGE TALL will all be normalized internally.

Minimal Line Item Example

Full Line Item Example

Designs

A design object defines what decoration to apply to a product. Each line item should include one or more designs unless NoDecoration is set to true.

Required Fields

  • DesignTypeName: e.g. Embroidery, DigitalPrint, ScreenPrint
  • Design identification:
    • Use DesignID and ColorwayID (if referencing an existing design)
    • OR use FilePath and CustomerDesignCode (for submitting new art)
  • IntegrationColorway: Required for all designs. See structure below.

Optional Fields

  • Urls: Array of preview/mockup links with optional descriptions

IntegrationColorway

This object defines where and how the design will be applied. It is always required, even when submitting art via URL.

Required Fields
  • GarmentLocationName: The name of the decoration location (e.g. Left Chest, Full Back)
Optional Fields
  • ColorwayID: Required if using an existing design via DesignID
  • Urls: Optional previews for this specific location
  • Customizations: Optional array of name/number customization entries

Customizations (Personalizations)

Use this array inside IntegrationColorway to define individual name/number customizations.

  • Font: Optional. Preferred font name to be used for personalization.
  • Color: Optional. Requested thread or ink color.
  • Position: Optional. Location reference on garment (e.g. Left Chest).
  • Width: Optional. Suggested maximum width in inches.
  • Height: Optional. Suggested maximum height in inches.
  • Notes: Optional. Any special handling instructions.
  • Urls: Optional. Array of preview images or mockups related to the customization.
  • TextLines: Required for name/number decorations. Array of text line objects.
TextLines Format:
  • LineNumber: Required. Sequence of the text line (1, 2, etc).
  • Text: Required. Text to be rendered on the garment.

Personalization Example – Existing Design

Minimal Design Example – Existing Design

Minimal Design Example – Using FilePath

Full Design Example – Existing Design

Full Design Example – Using FilePath


Manifests/Shipping Information

Shipping details are defined within the Manifests array of each order. Each order must include at least one manifest, and each manifest must include a complete ShipToAddress and at least one line item.

Required Fields

  • ShipMethodAbbreviation: The shipping method code (e.g. UPSG, USPS1ST) found in our available ship methods
  • ShipToAddress: Destination address object (see below)
  • LineItems: At least one decorated product

Optional Fields

  • ShipperReference: Internal reference for tracking or invoice reconciliation
  • TaxID: May be required for international shipping depending on destination
  • IsResidential: Boolean flag for residential address (affects rates)
  • PackingSlipUrl: Link to a PDF packing slip to include in the box
  • ThirdPartyAccountNumber: For third-party billing by carrier account
  • Notes: Manifest-specific instructions for packing or shipping
  • DateToShip: Requested ship date (if not shipping immediately)
  • DateDropDead: Latest acceptable shipping date (e.g. event deadline)
  • NriNumber: Customs number used for Canadian shipments

ShipToAddress Fields

This is a nested object required inside each manifest. The more complete the address, the more accurate the label and delivery rate.

Required Fields
  • Address1: Name or ATTN line (e.g. John Smith)
  • Address3: Pirmary Address (e.g. 123 1st Street)
  • City: Destination city
  • State: Two-letter US state abbreviation or province
  • Zip: Postal/ZIP code
  • Country: Country code (e.g. USA)
Optional Fields
  • Address2,Address4, and Address5: Additional address lines (e.g. company name, department, floor)
  • PhoneNumber: Used on shipping label and for courier delivery
  • EmailAddress: Recipient’s contact email (used for notification)

Sample Shipping Block (Manifest + Address)


Order Tracking

Tracking information is provided once an order has shipped. Tracking numbers are returned in status responses and optionally emailed to end users.

Where to Find Tracking and Order Info

  • DOTS (Dubow Order Tracking System): Our customer portal provides real-time order visibility including estimated ship dates, status history, and tracking numbers.
  • Status Endpoint: Use the order status API to retrieve current order details including tracking, estimated ship dates (when available), and fulfillment stage.
  • Webhook: Optionally receive status updates automatically when an order changes state or ships (see Webhooks section).

Other Order Info Available

  • EstimatedShipDate: Optional date returned when a projected ship date is known
  • IsBackordered: Boolean flag indicating backorder status
  • ShipMethodAbbreviation: The carrier/method selected for the order
  • IsInvoiced: True once the order is fully invoiced

Tracking Fields (From Order Status Response)

  • PoNumber: The purchase order being referenced
  • OrderStatus: Current stage of the order (e.g. Received, In Production, Shipped)
  • TrackingNumber: Shipment tracking code
  • Carrier: Carrier name (e.g. UPS, FedEx, USPS)
  • DateShipped: The actual shipment date

Sample POST Request for Order Status

Sample Status Response with Shipping and Invoice Info


Webhooks

Webhooks allow you to receive real-time updates about your orders without polling the API. Simply include a webhook URL in your order submission to be notified when key events occur.

How to Use

  • Include the field OrderStatusNotificationUrl in your IntegrationOrder
  • Must be a valid HTTPS URL that can accept JSON POST payloads
  • Dubow will send an update any time the order status changes

Webhook Triggers

  • Received: Order has been received and acknowledged
  • In Production: Production has started
  • Shipped: The order has been shipped and tracking is available
  • Canceled: The order was canceled
  • Backordered: One or more items are backordered

Webhook Payload

The payload sent to your webhook endpoint will match the structure of a standard order status response. Not all fields are guaranteed for every trigger type. Below are common fields that may be included:

Payload Field Reference
  • PoNumber (string): Your original purchase order number
  • OrderID (int): Internal Dubow Order ID
  • CustomerID (string or int): Customer account identifier
  • OrderStatus (string): Current order status (e.g. Received, Shipped)
  • EstimatedShipDate (string - yyyy-mm-dd): Projected ship date
  • DateShipped (string - yyyy-mm-dd): Actual ship date
  • TrackingNumber (string): Carrier tracking code
  • Carrier (string): Carrier service (UPS, FedEx, etc.)
  • ShipMethodAbbreviation (string): Internal ship method reference (e.g. UPSG)
  • IsBackordered (bool): Whether items are delayed due to backorder
  • IsInvoiced (bool): Whether the order has been invoiced
  • InvoiceNumber (string): Invoice identifier
  • InvoiceDate (string - yyyy-mm-dd): Date of invoice generation
  • AmountPaid (decimal): Total paid toward the order
  • AmountDue (decimal): Amount outstanding (if any)
  • TrackingUrl (string, optional): Direct link to carrier tracking (if enabled)

Sample Order with Webhook Notification URL

Sample Webhook Notification Payload

Best Practices

  • Return HTTP 200 OK to acknowledge receipt
  • Log payloads and timestamps for reconciliation
  • Implement retry logic on your end in case of delays or duplicate messages

Optional Services

You can request optional add-on services at the line item level using the Services array. These services support finishing, packaging, and branding enhancements.

How to Apply Services

  • Services are applied per line item using the Services array
  • Each entry should be a recognized Dubow service code
  • Multiple services can be combined where compatible

Available Service Codes

    BAG2 - POLY BAGFold garment and polybag it HANGTAGAttach hang tag to garment INSERTInsert custom flyer or packing slip NAME1Personalization on order PICNPACSpecial sorting before shipping

Sample Line Item with Services


Error Handling

If your request contains invalid or incomplete data, Dubow’s API will return a structured response containing helpful error messages to aid troubleshooting.

Response Structure

All error responses follow this format:

{
  "ResponseSummary": {
    "IsSuccess": false,
    "Errors": [
      {
        "Message": "Description of the problem."
      },
      ...
    ]
  }
}

Common Error Messages and How to Fix Them

Error Message How to Fix
ProductName was given without a Mill and no match or multiple was found Include the Mill value or use a unique ProductName that Dubow can match directly.
Each IntegrationProduct must unambiguously specify a Product Ensure at least one of ProductName, VendorProductName, or CustomerProductName is provided with required context (e.g., Mill).
No IntegrationDesigns included with LineItem X but NoDecoration does not equal true Include a Designs array or set NoDecoration to true.
DesignTypeName is required Set DesignTypeName in every design block (e.g., "Embroidery").
ColorwayID not found or not associated with DesignID Verify the ColorwayID exists and belongs to the specified DesignID.
DesignID not found or not valid for account Use a valid, assigned DesignID that your account has access to.
FilePath is not a valid URL Use a properly formatted and publicly accessible https:// link.
CustomerDesignCode already used on another design Ensure uniqueness of CustomerDesignCode per customer.
ShipMethodAbbreviation is required Include a valid ShipMethodAbbreviation such as UPSG or USPS1ST found in our available ship methods
Missing Address1 or Zip on ShipToAddress Verify Address1 and Zip are provided and valid.
SizeAsString value is not recognized Use a supported size format such as "XL", "2XLT", or "Medium".
Quantity must be greater than 0 Ensure all LineItemSizes[].Quantity values are positive integers.
Unauthorized. Please check UserID and Password. Check your Authorization block credentials.
Unable to parse payload Ensure your JSON is valid and Content-Type is application/json.
One or more required fields are missing or invalid Check all required fields are present and spelled correctly.
A service code was provided that is not supported Use only valid service codes listed in the Services section.
Design FilePath and DesignID cannot be used together Choose either to use an existing design by ID or submit new art via FilePath, not both.
TEST URL! This error will only appear on test requests. Ignore this in test mode; it confirms you're not hitting production.
TrackingNumber cannot be blank when OrderStatus is Shipped Provide a valid TrackingNumber when sending a Shipped update.
Duplicate PONumber for CustomerID Use a unique PoNumber or contact Dubow if resending is intentional.

Best Practices

  • Always inspect ResponseSummary.IsSuccess before processing
  • Log errors with ResponseSummary.Errors[].Message
  • Validate your payload against field requirements before submission
  • Use test mode with realistic payloads before sending live orders

Sample Error Response


Sandbox & Test Mode

Dubow’s integration environment supports full-featured testing without affecting live orders or production. You can validate payloads, test error handling, and preview responses using all the exact same information in this documentation.

How to Use Test Mode

  • Contact your CSR to request Test Credentials
  • Use the test enviornment endpoint noted in the Web Service URLs
  • Test orders are accepted and validated but are never routed to the production enviornment
  • Some responses will contain the message: TEST URL! This error will only appear on test requests.
  • You can simulate real orders with full data, including designs and manifests

What You Can Test

  • Validation errors for missing fields
  • Design handling (FilePath and DesignID logic)
  • Webhook callbacks (with your own test URL)
  • OrderStatus API behavior and responses

Best Practices

  • Use unique PoNumbers (prefixed with TEST- or similar) to avoid conflicts
  • Do not mix test orders with live artwork or production POs as they will not be processed
  • Use OrderStatusNotificationUrl pointing to a test endpoint to verify webhook behavior

Full Order Examples

These examples show complete, valid orders using different design submission types and multiple manifests.

Minimal – Existing Design

Minimal – New Art via URL

Full – Existing Design with 2 Manifests, 2 Products

Full – URL Design with 2 Manifests, 2 Products


Field Glossary / Schema Index

This glossary summarizes the primary fields used throughout the Dubow API, grouped by context. Use this as a quick reference for data types, required status, and brief definitions.

Authorization

Field Type Required Description
UserID int Yes Your Dubow integration user ID
Password string Yes Your integration password

Order Header

Field Type Required Description
CustomerID int Yes Your customer account number
ContactID int Yes Account contact to associate with order
PoNumber string Yes Your purchase order number
OrderStatusNotificationUrl string (url) No Optional webhook endpoint for order updates

IntegrationProduct

Field Type Required Description
ProductName string Yes* Product identifier (e.g. 2000)
Mill string Yes* Garment manufacturer
Description string Yes Text description of the product
ProcurementType string Yes Contract, Inventory, or Custom
CustomerProductName string No Your internal product reference
VendorProductName string No Vendor style number
ProductTypeName string No Category name (e.g. Apparel, Tote)
Color string No Color description
ProductID int No Internal Dubow ID
VendorID int No Required for Custom procurement type
Notes string No Internal product notes
Urls array No Array of preview or mockup images

Design

Field Type Required Description
StitchCount int Yes* Required if DesignTypeName = Embroidery and FilePath is used
Width float No Preferred width of the decoration (in inches)
Height float No Preferred height of the decoration (in inches)
DesignTypeName string Yes Type of decoration (e.g. Embroidery, DigitalPrint)
DesignID int Yes* ID for an existing design in Dubow’s system
FilePath string Yes* URL to downloadable art file
CustomerDesignCode string Yes* Unique code for uploaded artwork
Urls array No Array of mockup image previews
IntegrationColorway object Yes Placement and personalization info

IntegrationColorway

Field Type Required Description
CustomerColorwayCode string No Custom reference for this colorway
Colors array Yes* Required if using DesignID. Describes thread/ink colors used
Font string No Font for personalization text
TextColor string No Color of personalized text
Position string No Where on the garment the decoration is applied
Width float No Optional width constraint in inches
Height float No Optional height constraint in inches
Notes string No Freeform instruction notes
GarmentLocationName string Yes Print or stitch location on the garment
ColorwayID int Yes* Required if using DesignID
Urls array No Visual previews for the location
Customizations array No Array of name/number customization lines

LineItemSizes

Field Type Required Description
SizeIndex int No Optional alternative to SizeAsString
Quantity int Yes Quantity of garments in this size
SizeAsString string Yes Readable size label (e.g. "M", "3XLT")

ShipToAddress

Field Type Required Description
Address1 string Yes Main name line
Address3 string Yes Primary address line
City string Yes City name
State string Yes 2-letter state or province code
Zip string Yes Postal/ZIP code
Country string Yes 3-letter country code (e.g. USA)
Address2 to Address5 string No Optional address lines
PhoneNumber string No Contact number for delivery
EmailAddress string No Contact email

Manifest

Field Type Required Description
ShipMethodAbbreviation string Yes e.g. UPSG, USPS1ST
ShipToAddress object Yes See address block above
LineItems array Yes One or more decorated items
IsResidential bool No Residential address flag
PackingSlipUrl string No Link to packing slip PDF
ThirdPartyAccountNumber string No For third-party shipping
DateToShip string No Scheduled ship date
DateDropDead string No Hard delivery deadline
NriNumber string No Used for Canadian customs
TaxID string No Used for international shipments
ShipperReference string No Customer's shipping reference

Note: Required status may vary based on usage context. See full documentation sections for detailed rules.


Web Service URLs

This section lists the available web service endpoints for test and production environments. Ensure you use the correct environment and JSON format for your integration.

Test Environment

  • JSON Endpoint:
    • Submit Orders: https://test-integration.dubowtextile.com/integration/orderintegrationservice.svc/json/orders/new
    • Check Status: https://test-integration.dubowtextile.com/integration/orderintegrationservice.svc/json/orders/status
    • Get Invoice: https://test-integration.dubowtextile.com/integration/orderintegrationservice.svc/json/orders/invoice
    • Get Scheduled Date: https://test-integration.dubowtextile.com/integration/orderintegrationservice.svc/json/orders/schedule

Production Environment

  • JSON Endpoint:
    • Submit Orders: https://integration.dubowtextile.com/integration/orderintegrationservice.svc/json/orders/new
    • Check Status: https://integration.dubowtextile.com/integration/orderintegrationservice.svc/json/orders/status
    • Get Invoice: https://integration.dubowtextile.com/integration/orderintegrationservice.svc/json/orders/invoice
    • Get Scheduled Date: https://integration.dubowtextile.com/integration/orderintegrationservice.svc/json/orders/schedule

Backup Cloud Integration

  • Cloud JSON Endpoint:
  • https://io.dubowtextile.com/v1/orders
    • Customer Token: Required for use of cloud API and placed in header. See account rep for info on obtaining your key.

Supporting Resources


Frequently Asked Questions

Below are some common questions and answers to assist with your integration.

General

  • How do I get access to the API? Contact your Dubow account manager to request API credentials for the test and production environments.
  • What formats are supported? The API supports JSON format.

Order Integration

  • How do I test an order submission? Use the test environment endpoints listed in the Web Service URLs section with your test credentials.
  • What happens if my order fails? The API will return an error code and message. Refer to the Error Handling section for details on common errors and resolutions.

Designs

  • What file formats are supported for design uploads? Common formats include .png, .jpg, and .dst.
  • Can I use custom design codes? Yes, you can use CustomerDesignCode to reference your internal design identifiers.

Shipping

  • How do I track a shipment? Provide a ShipmentNotificationUrl in your order request to receive tracking updates.
  • Can I specify a residential address? Yes, use the IsResidential field in your manifest to indicate residential shipping.

Changelog

See what's new added, changed, fixed, improved or updated in the latest versions.

Version 1.1 (May 2, 2025)

  • Added Full Order Examples section including minimal and full payloads for both existing and URL-based designs.
  • Added Sandbox/Test Mode section for validating payloads and simulating responses.
  • Added Web Service URLs section with internal anchor links and endpoint breakdown.
  • Added Field Glossary/Schema Index covering all major models and fields.
  • Added Webhook payload documentation with example POST and response format.
  • Added Error message table with explanations and recommended resolutions.
  • Added Integration Services list with all valid service codes and formats.
  • Updated All example payloads to use "Name" for services instead of plain strings or ServiceCode.
  • Updated Design payloads to include required fields for both existing and URL-based uploads.
  • Updated IntegrationColorway structure to include full field listing and formatting examples.
  • Updated Clarified required vs optional fields throughout Field Glossary section.
  • Updated Linked all service function names in the Web Service URLs table to relevant documentation sections.

Version 1.01 (Mar 24, 2025)

  • Added Scheduled ship date API info.

Version 1.0 (Jan 1, 2025)

  • Added Web based API documentation.