This article walks you through connecting TikTok Shop and OSA so the app can route TikTok Shop orders to OSA for fulfillment, sync inventory back to TikTok Shop, and propagate fulfillment, returns, and receipt data through the app.
OSA is a fulfillment provider, not a sales channel.
Two OSA connectors appear in the catalog:
- OSA UC3 - this article covers UC3.
- OSA WMS - connection flow and supported flows may differ. If you're connecting OSA WMS, confirm the differences with OSA or Pipe17 support before following these steps.
What syncs
| Data | Direction | Notes |
|---|---|---|
| Shipping requests | App → OSA | TikTok Shop orders routed to OSA for fulfillment. |
| Shipment cancellations | OSA → App | Cancellations from OSA flow back; the app applies a status you configure. |
| Fulfillments | OSA → App | Pulled in after OSA ships. Pushed back to TikTok Shop. |
| Returns (RMAs) | App ↔ OSA | Bidirectional. |
| Inventory | OSA → App | Pulled in once per day and synced to TikTok Shop. OSA reports Fulfillable quantities, not On-hand. |
| Products | App → OSA | Push the catalog when OSA doesn't already have your products. Updates require an additional toggle. |
| Locations | OSA → App | Required. OSA locations are pulled into the app and linked to TikTok Shop. |
| Arrivals and receipts | App ↔ OSA | Push arrivals (inbound shipments and POs) to OSA, pull receipts back. Optional. |
Before you begin
- Connect TikTok Shop first. See Connect TikTok to Pipe17.
- Get your OSA API Key, API Secret, and OSA Domain identifier from OSA support. The secret is sensitive - store it like a password.
- Confirm which OSA environment you're connecting to (Production, Stage, or UAT).
- Decide which shipping methods Pipe17 will request from OSA. You'll map these in Step 2.
Step 1: Connect OSA
- Add the OSA UC3 connector from the connector catalog if it isn't already under Integrations.
- On the initial setup screen, enter:
- API Key
- API Secret
- OSA Domain - the OSA domain identifier provided by OSA support.
- Under Select OSA environment, choose OSA Production, OSA Stage, or OSA UAT.
- Click Next. The app tests the credentials with OSA. If the connection fails, an error appears next to the connector name in Integrations - verify the credentials with OSA support and re-enter them.
Step 2: Map shipping methods
In OSA, define the shipping methods you expect to come from Pipe17. Then use the Shipping Method Mapping feature on the connector to align Pipe17's shipping outputs with what OSA expects. Without this mapping, shipping requests can be rejected or fulfilled with the wrong service.
Step 3: Match products and SKUs
OSA needs product information to fulfill orders. How you provide it depends on whether the catalog already exists in OSA.
- Catalog isn't in OSA yet. Enable Push product catalog information to OSA. The app pushes products to OSA. If you also want existing OSA products to update when product data changes in the app, enable Allow updating products in OSA - without this, the app only creates new products.
- Catalog is already in OSA and SKUs match TikTok Shop. No push needed. The app sends product information with each shipping request, and OSA matches by SKU.
-
Catalog is already in OSA but SKUs differ. Don't push the catalog. Map the SKUs in the app instead:
- Open the product in Products.
- Scroll to Channel Options.
- In the OSA row, enter the OSA SKU in the Channel SKU column.
- Save.
- The TikTok Shop row has no Channel SKU column. TikTok SKUs must match the master SKU in the app directly.
- The Channel SKU column is hidden on parent products with no channel SKUs set. Open a child or variant to set values.
For non-standard product properties OSA doesn't support natively, contact support about custom mapping.
Step 4: Link locations
OSA locations must be pulled into the app before inventory and fulfillment can flow correctly.
- On the OSA connector, enable Pull locations from OSA. OSA locations appear under Inventory → Locations.
- Open each OSA location and link it to the matching TikTok Shop location.
See Using Locations for more on linking.
Step 5: Enable sync and configure routing
On the OSA connector, enable the settings you need:
- Push shipping requests to OSA - sends TikTok Shop orders to OSA for fulfillment.
- Pull fulfillment information from OSA - pulls fulfillment data after OSA ships.
- Pull inventory information from OSA - pulls inventory and syncs it to linked TikTok Shop locations.
Make sure Push fulfillments is enabled on the TikTok Shop connector so fulfillment data flows back to TikTok Shop.
Configure how routing and cancellations behave:
- Force OSA managed routing - when on, OSA determines the fulfillment warehouse instead of Pipe17. Enable this if OSA decides which warehouse fulfills each order. Leave it off to let the Order Routing Engine decide based on linked locations.
- When shipping request is canceled in OSA, apply the following status to Pipe17 - pick the status the app should apply when OSA cancels a shipping request: Review required, Canceled, Canceled Restock, or Failed.
Warning: As soon as you enable a sync entity such as Push shipping requests to OSA, the app starts processing live orders using your routing rules. Confirm your setup is correct before enabling.
Step 6: Optional - returns, arrivals, and receipts
Enable these settings if your operation needs them:
- Push returns (RMAs) to OSA - sends return records from the app to OSA.
- Pull returns (RMAs) updates from OSA - pulls return status updates back from OSA.
- Push arrivals to OSA - pushes inbound shipment or PO data to OSA.
- Pull receipts from OSA - pulls OSA receipt records (what OSA physically received) back into the app.
Useful scoping settings
- Process only shipping requests with specific order IDs - restricts which orders are sent to OSA (useful for testing).
- Process only products with specific product SKUs patterns - limits which products are pushed to OSA.
- Process inventory information only for products with specific SKU patterns - limits inventory updates to a SKU pattern list.
- Process inventory information only for these locations types - restricts inventory updates by location type: OSA warehouse locations, OSA managed location only, or OSA managed location & warehouse locations.
- Process only arrivals for specific order IDs - limits which arrivals are pushed to OSA.
What to expect from OSA
A few timing and data behaviors to keep in mind:
- Status delay: An order or fulfillment status in OSA can take up to 24 hours to move from Waiting to Success.
- Inventory cadence: The app syncs inventory with OSA once every 24 hours.
- Fulfillable, not On-hand: OSA inventory reflects Fulfillable quantities. On-hand totals are not pushed to TikTok Shop.
- Order ID prefix: OSA prefaces orders with the store ID number.
- Inventory types: OSA only accepts predefined values for inventory types - custom values are not supported.
- ASIN weights: Weight is not inherited for ASINs. Modifying the weight may create an exception because OSA uses the default values only.
Best practices
- Get the API Key, API Secret, and OSA Domain from OSA support before starting.
- Connect to OSA Stage or OSA UAT first to test, then switch to OSA Production.
- Map shipping methods between Pipe17 and OSA before enabling shipping request sync.
- Decide whether you'll push the catalog or rely on existing OSA products before connecting. If you push, decide whether updates should also flow by enabling Allow updating products in OSA.
- Audit SKUs on both platforms for uniqueness. The same SKU used for two different products causes silent mismatches.
- Link OSA locations before enabling inventory sync. Inventory without a linked location cannot flow to TikTok Shop.
- Use Process only shipping requests with specific order IDs to route a small test set to OSA before opening the full volume.
- Decide whether OSA or Pipe17 owns warehouse routing before enabling sync, and configure Force OSA managed routing accordingly.
Troubleshooting
-
OSA connection fails after entering credentials
An error appears next to the connector name in Integrations if the credentials are rejected. Verify the API Key, API Secret, and OSA Domain with OSA support. Confirm the right environment is selected in Select OSA environment. -
Shipping requests are failing because OSA doesn't recognize the product
Either enable Push product catalog information to OSA, or confirm the SKU in OSA matches the master SKU in the app. If the OSA SKU differs, map it in the OSA row of Channel Options. -
Product updates aren't reflecting in OSA
Confirm Allow updating products in OSA is enabled. Without it, the connector only creates new products, not updates. If updates still don't reflect, enable Force product catalog resync to refresh. -
The Channel SKU column is missing on the TikTok Shop row
Expected. TikTok Shop doesn't support per-channel SKU mapping. -
The Channel SKU column is hidden on a parent product
Open a child or variant to set channel SKUs. -
OSA inventory totals look low compared to OSA's portal
OSA reports Fulfillable inventory to the app, not On-hand. The difference is expected. -
Inventory hasn't updated recently
Inventory syncs once per day. Expect up to a 24-hour delay between OSA inventory changes and TikTok Shop updates. If totals still look wrong after that, enable Force inventory resync on the OSA connector to refresh. -
OSA inventory is only updating for some locations
Check the Process inventory information only for these locations types setting. If it's scoped to a specific location type, inventory in other location types is excluded. -
An OSA order status is stuck in Waiting
Status can take up to 24 hours to move to Success. If it remains in Waiting beyond that, contact support. -
OSA isn't receiving shipping requests
Confirm Push shipping requests to OSA is enabled and that TikTok Shop orders are being ingested into the app. If routing is managed by Pipe17, verify the Order Routing Engine is sending orders to OSA based on the linked location. If Force OSA managed routing is on, OSA controls the warehouse selection instead. -
Shipping method mismatches in OSA fulfillments
Re-check the Shipping Method Mapping between Pipe17 and OSA. Without the mapping, OSA may select the wrong method or reject the request. -
Fulfillment data isn't appearing in the app or on TikTok Shop
Confirm Pull fulfillment information from OSA is enabled on the OSA connector and Push fulfillments is enabled on the TikTok Shop connector. -
An OSA order canceled but the status in Pipe17 doesn't match expectations
Check the When shipping request is canceled in OSA, apply the following status to Pipe17 setting. The status applied (Review required, Canceled, Canceled Restock, or Failed) depends on what you chose. -
OSA locations aren't appearing under Inventory → Locations
Confirm Pull locations from OSA is enabled. Location pull is required for inventory and fulfillment to flow correctly. -
A weight-related exception appeared on an ASIN order
The app uses default weight values for ASINs - modifying the weight can cause an exception. Restore the default or contact support.
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