This article explains how to use the Pipe17 API to manage products, orders, inventory, and fulfillments when Flexport (formerly Deliverr) is your fulfillment provider.
Flexport uses a pull model integration. This means:
You interact only with the Pipe17 API.
Flexport retrieves products and shipping requests from Pipe17 on a schedule.
Pipe17 retrieves inventory and fulfillment updates from Flexport.
Understanding this model is critical for setting correct expectations around timing and order processing.
Before You Begin
Make sure you have:
An active Pipe17 account
An active Flexport account
The Flexport connector enabled in Pipe17
Familiarity with REST APIs
Important:
Flexport does not support automated inbound ASNs or receipts via this API workflow. These must be handled manually in the Flexport portal.
Order cancellations must be managed in Pipe17 (API or portal).
Products must exist in Pipe17 before Flexport can fulfill orders containing those SKUs.
How the Flexport Pull Model Works
Flexport does not receive pushed data from Pipe17.
Instead, Flexport polls Pipe17 on a schedule:
Data Type |
Retrieved By |
Frequency |
|---|---|---|
Products |
Flexport |
Every 4 hours |
Shipping Requests (Orders) |
Flexport |
Every 15–30 minutes |
Inventory |
Pipe17 |
Regular schedule |
Fulfillments |
Pipe17 |
Regular schedule |
What This Means for You
Orders will not appear in Flexport immediately after creation.
Expect up to 15–30 minutes before Flexport retrieves new shipping requests.
Expect up to 4 hours before newly created products appear in Flexport.
You never make API calls directly to Flexport — all calls go through Pipe17.
Step 1: Connect Flexport to Pipe17
In Pipe17
Go to Integrations.
Click Add Integration.
Select Flexport.
Click Connect.
Copy the API key displayed in the Flexport integration settings.
In Flexport
Log in to the Flexport portal.
Go to Channels → Listing Tools.
Select Pipe17.
Paste the API key from Pipe17.
Save the connection.
Within approximately one hour:
A Flexport location appears under Inventory → Locations in Pipe17.
Products begin syncing to Flexport.
Inventory records appear for SKUs with stock.
Step 2: Create a Pipe17 API Key
To interact programmatically with Pipe17:
Click your profile icon.
Go to Settings.
Copy your Authorization Token.
Use that token to create an API key.
Example request:
curl --location --request POST 'https://api-v3.pipe17.com/api/v3/apikey' \
--header 'Content-Type: application/json' \
--header 'X-Pipe17-Key: YOUR_AUTHORIZATION_TOKEN' \
--data-raw '{
"name": "Flexport Integration API Key",
"tier": "enterprise",
"environment": "prod",
"description": "API key for managing orders and products with Flexport",
"allowedIPs": ["0.0.0.0/0"],
"methods": {
"fulfillments": "rl",
"inventory": "rl",
"locations": "rl",
"orders": "crudl",
"products": "crudl",
"shipments": "rl"
}
Save the returned API key securely. It is shown only once.
Managing Products
Products must exist in Pipe17 before Flexport can fulfill them.
Create a Product
POST https://api-v3.pipe17.com/api/v3/products
Key fields:
sku
name
status
types
weight
Allow up to 4 hours for Flexport to pull new products.
You can also:
Import via CSV
Sync from a connected sales channel
Managing Orders
Create an Order
POST https://api-v3.pipe17.com/api/v3/orders
Critical fields include:
extOrderId
orderSource
lineItems
shippingAddress
totals
Important: orderSource
The orderSource field is required for Fast Tags and marketplace logic.
Common values:
SHOPIFY
AMAZON
WALMART
EBAY
BIGCOMMERCE
MAGENTO
Routing Orders to Flexport
Orders do not automatically route to Flexport.
You must either:
Option 1: Configure Order Routing Rules
Go to Organization → Order Routing.
Create a rule that assigns orders to the Flexport location.
Option 2: Route via API
Update the order:
PUT https://api-v3.pipe17.com/api/v3/orders/{ORDER_ID}
Set:
status = readyForFulfillment
locationId = Flexport location ID
You can find the Flexport location ID under Inventory → Locations.
Order Lifecycle
Order created (
new)Marked ready (
readyForFulfillment)Shipping request created
Flexport pulls order (15–30 min)
Order marked
sentToFulfillmentFlexport ships order
Fulfillment syncs back (
fulfilled)
Retrieving Fulfillments
Poll the fulfillments endpoint:
GET https://api-v3.pipe17.com/api/v3/fulfillments?updatedSince=TIMESTAMP
Best practices:
Poll every 15–30 minutes.
Store your last successful sync timestamp.
Handle pagination.
Update your source system using fulfillment data.
Monitoring Inventory
Retrieve inventory:
GET https://api-v3.pipe17.com/api/v3/inventory?locationId=YOUR_FLEXPORT_LOCATION_ID
Inventory fields:
available
onHand
committed
incoming
Important:
Flexport displays inventory by fulfillment center in its portal, but only aggregate totals are sent to Pipe17.
Testing Your Integration
Recommended: Use Pipe17 Mock 3PL
Before sending live orders to Flexport:
Add Pipe17 Mock 3PL integration.
Create a routing rule to the test location.
Create test orders via API.
Verify fulfillment and inventory behavior.
Testing with Real Flexport
Flexport does not provide a sandbox.
Recommendations:
Use SKUs with no stock initially.
Ship to your own address.
Start with low-value items.
Confirm products exist in Flexport before creating orders.
Troubleshooting/FAQ
Why isn’t my order appearing in Flexport?
Check:
Inventory exists in Flexport.
Product exists (allow 4 hours).
Order is routed to Flexport.
Address format is valid.
15–30 minutes have passed.
How are cancellations handled?
If Flexport cancels a shipping request, Pipe17 updates the status and restocks committed inventory.
How does available inventory work?
The available field already subtracts committed inventory.
Do product dimensions sync?
No. Dimensions are set during inbound processing in Flexport.
How do Fast Tags work?
To support Fast Tags:
Ensure
orderSourcecontains the original marketplace name.Pass the original order ID.
-
Create two connections in Flexport:
Pipe17 connection
Fast Tag connection to the source channel
Route Fast Tag orders by:
Routing all orders to Flexport, or
Creating routing rules based on shipping method (Free NextDay Delivery, Free 2-Day Delivery, etc.)
Need Help?
If you need additional assistance:
Use Ask Pippen, our AI agent, located at the top of the app page.
Submit a support request with as much relevant detail as possible. Learn how to submit a request.
For urgent issues, email us directly at support@pipe17.com.
We're here to help you succeed with your operations.
Comments
0 comments