Ordering Products

Build a robust order automation flow by activating the target company, validating the order inputs, and submitting the final order through the Pax8 API.

Ordering integrations usually depend on more than the final POST /orders call. In most implementations, you need to identify the correct company, confirm the company is active, look up the product, fetch current pricing and dependency data, collect provisioning details, and then submit the order.

Recommended Build Flow

1. Confirm the Company Can Receive an Order

Before you create an order, the company must be in Active status.

When you create a company, it starts as Inactive. To activate it, add one or more contacts that satisfy all required primary contact constraints. A company must have a primary contact for each contact type: Admin, Billing, and Technical.

One contact marked as primary for all three contact types is enough to activate the company.

2. Resolve the Product and Order Inputs at Order Time

For a reliable ordering flow, fetch the current product data each time you prepare an order instead of relying on stale local values. This is especially important for inputs that can change over time, such as pricing, dependencies, and provisioning details.

In most ordering workflows, this means you should:

  • identify the target productId
  • fetch current pricing before presenting or submitting the order
  • check whether the product has dependencies or required parent relationships
  • collect the provisioning details required for that product

3. Build the Order Payload

At a minimum, your order payload needs the target companyId and one or more line items. For each line item, you typically need:

  • productId
  • lineItemNumber
  • quantity
  • billingTerm
  • provisioningDetails when the product requires them

Some products also require parent references or a commitmentTermId. If your workflow supports bundles or add-ons, make sure you resolve those relationships before you submit the order.

4. Submit the Order

Use the Create Order endpoint to submit the final order once your workflow has validated the company, product, pricing, dependencies, and provisioning details.

5. Confirm the Result

After the order is created, store the returned identifiers and confirm that the order was accepted as expected. This gives your integration a reliable handoff point for downstream workflows such as provisioning, ticket creation, or customer notifications.

Optional: Handle Future-Dated Orders in Your System

Future-Dated Scheduled Orders

The Pax8 API does not support future-dated scheduled orders. If you need an order to be placed on a later date, you need to handle that timing in your own system.

Use one of these patterns:

  • Store the requested execution date and trigger the order later with a scheduled job.
  • Place the order immediately if your business process does not require delayed execution.

If your system supports requested activation dates, treat that date as workflow state in your own platform rather than assuming the Pax8 API will schedule the order for you.

Optional: Validate Orders With Mock Calls

Use the isMock query parameter to validate an order without creating billable data. The create order endpoint supports ?isMock=true.

When you use mock mode:

  • invalid orders return an error
  • valid orders return success, but the order will not be placed
  • no production data is created in Pax8

This is useful when you want to test order construction, provisioning detail handling, and dependency validation before you submit a live order.

Design Recommendations

  • Keep company activation checks near the start of the workflow so you do not build a full order for an inactive company.
  • Fetch pricing, dependencies, and provisioning details close to submission time because these values can change.
  • Separate quote, storefront, and order-confirmation logic from the final POST /orders call so each step can be retried safely.
  • Use mock validation in test and pre-production workflows before you send live orders.

Related Integration Guides

If you want a more specific, use-case-driven ordering flow, use these Integration Guides in the Pax8 platform. They include detailed steps for common scenarios and give you a structured flow you can adapt in your own system or push into your preferred AI tool to accelerate implementation.