The Fulfil.io Fulfillment Service connector sets up the app as a fulfillment service (3PL) for your Fulfil.io account. The app pulls customer shipments, supplier shipments, and internal shipments from Fulfil.io, and sends fulfillments, receipts, and inventory updates back to Fulfil.io. It uses the Fulfil.io 3PL API and a warehouse access token.
With this connector, you can:
- Pull your Fulfil.io warehouses into the app as locations.
- Pull customer shipments from Fulfil.io as orders, and acknowledge them in Fulfil.io automatically or when they reach a status you choose.
- Send fulfillments with tracking and package details back to Fulfil.io.
- Pull supplier shipments as purchase orders and arrivals, and send receipts back to Fulfil.io.
- Pull inbound and outbound internal shipments as transfers.
- Pull your product catalog from Fulfil.io and send inventory updates to Fulfil.io.
Setup
Before you begin, make sure you have:
- A Fulfil.io account with access to the warehouse that the app will fulfill for.
- Your Fulfil.io portal URL, for example
https://<your-company>.fulfil.io. Don't include/clientat the end. - The warehouse access token for that warehouse. You can find it on the warehouse (stock location) record in your Fulfil.io portal.
To connect Fulfil.io Fulfillment Service:
- Navigate to Integrations in the app.
- Click Add Integration, and then select Fulfil.io Fulfillment Service.
- Enter your portal URL in the Fulfil.io URL field.
- Enter your token in the Warehouse access token field.
- Click Connect.
- After you connect, toggle on the flows you want to use, such as Pull locations from Fulfil.io, Pull orders (customer shipments) from Fulfil.io, and Push fulfillments to Fulfil.io.
Settings
| Setting | Description | Options/Default |
|---|---|---|
| Pull locations from Fulfil.io | Creates a location in the app for each Fulfil.io warehouse. Turn this on before you pull orders or purchase orders, because the app matches each record to a location by its Fulfil.io warehouse. | On/Off. Default: Off |
| Pull orders (customer shipments) from Fulfil.io | Pulls customer shipments that are waiting for the fulfillment service in Fulfil.io and creates them as orders in the app. Also sends order acknowledgements and failures back to Fulfil.io. | On/Off. Default: Off |
| Exclude orders created before this date | Pulls only orders created after this date. If you leave it empty, the app uses the date you created the integration. | Date and time. Default: Now |
| Accept Fulfil.io orders (customer shipments) automatically | Acknowledges each customer shipment in Fulfil.io as soon as the app creates the order. | On/Off. Default: Off |
| Accept Fulfil.io orders (customer shipments) only when order is assigned on of the specified statuses | Acknowledges the customer shipment in Fulfil.io when the order in the app reaches one of these statuses. | new, readyForFulfillment, partialFulfillment, sentToFulfillment, fulfilled. Default: readyForFulfillment, sentToFulfillment, partialFulfillment, fulfilled |
| Mark Fulfil.io order (customer shipment) as Failed when order is assigned one of the specified statuses | Marks the customer shipment as failed in Fulfil.io when the order in the app reaches one of these statuses. | canceled. Default: canceled |
| Push fulfillments to Fulfil.io | Sends fulfillments, including tracking and package details, to Fulfil.io and marks the customer shipment as shipped. | On/Off. Default: Off |
| Group fulfillment packages | Combines fulfillments for the same shipping request that ship within about 10 minutes of each other, and sends them to Fulfil.io as one fulfillment with several packages. | On/Off. Default: Off |
| Pull purchase orders from Fulfil.io | Pulls supplier shipments from Fulfil.io and creates them as purchase orders in the app. | On/Off. Default: Off |
| Exclude supplier shipments created before this date | Pulls only supplier shipments created after this date. If you leave it empty, the app uses the date you created the integration. | Optional |
| Pull only purchase orders with specific Purchase Order IDs | Pulls only the purchase orders you list. Use this while testing. | Optional. Empty pulls all |
| Pull only purchases orders with Supplier shipment IDs | Pulls only the supplier shipments you list. Use this while testing. | Optional. Empty pulls all |
| Create arrival automatically when Purchase order is created | Creates an arrival in the app for each supplier shipment the app pulls. | On/Off. Default: Off |
| Accept Fulfil.io arrivals (supplier shipments) automatically when Purchase order is created | Acknowledges the supplier shipment in Fulfil.io as soon as the app creates the purchase order. | On/Off. Default: Off |
| Accept Fulfil.io arrivals (supplier shipments) when arrival is assigned on of the specified statuses | Acknowledges the supplier shipment in Fulfil.io when the arrival in the app reaches one of these statuses. | draft, shipped, expected, partialReceived, received. Default: expected, partialReceived, received |
| Mark Fulfil.io arrival (supplier shipment) as Failed when arrival is assigned one of the specified statuses | Marks the supplier shipment as failed in Fulfil.io when the arrival in the app reaches one of these statuses. | canceled, failed. Default: canceled |
| Pull transfers (inbound and outbound internal shipments) from Fulfil.io | Pulls inbound and outbound internal shipments from Fulfil.io and creates them as transfers in the app. | On/Off. Default: Off |
| Exclude transfers (internal shipments) created before this date | Pulls only internal shipments created after this date. If you leave it empty, the app uses the date you created the integration. | Optional |
| Pull only transfers (internal shipments) with specific IDs | Pulls only the internal shipments you list. Use this while testing. | Optional. Empty pulls all |
| Create arrival automatically when incoming Transfer is created | Creates an arrival in the app for each inbound internal shipment. | On/Off. Default: Off |
| Accept Fulfil.io incoming transfers (inbound internal shipments) automatically | Acknowledges each inbound internal shipment in Fulfil.io as soon as the app creates the transfer. | On/Off. Default: Off |
| Accept Fulfil.io incoming transfers (inbound internal shipments) only when arrival is assigned on of the specified statuses | Acknowledges the inbound internal shipment in Fulfil.io when its arrival in the app reaches one of these statuses. | draft, shipped, expected, partialReceived, received. Default: expected, partialReceived, received |
| Create Shipping Request automatically when outgoing Transfer is created | Creates a shipping request in the app for each outbound internal shipment. | On/Off. Default: Off |
| Accept Fulfil.io outgoing transfers (outbound internal shipments) automatically | Acknowledges each outbound internal shipment in Fulfil.io as soon as the app creates the transfer. | On/Off. Default: Off |
| Accept Fulfil.io outgoing transfers (outbound internal shipments) only when shipping request is assigned on of the specified statuses | Acknowledges the outbound internal shipment in Fulfil.io when its shipping request in the app reaches one of these statuses. | readyForFulfillment, sentToFulfillment, partialFulfillment, fulfilled, closed. Default: readyForFulfillment, sentToFulfillment, partialFulfillment, fulfilled |
| Push receipts to Fulfil.io | Sends receipts for supplier shipments and inbound internal shipments to Fulfil.io. | On/Off. Default: Off |
| Pull product catalog from Fulfil.io | Pulls products from Fulfil.io into the app. | On/Off. Default: Off |
| Apply product updates only for specific SKUs | Pulls only the products whose SKUs match the values you list. Enter a SKU for an exact match (not case-sensitive), or a pattern wrapped in slashes, such as /^ABC-/. |
Optional. Empty pulls all |
| Force product catalog resync | Pulls the full product catalog from Fulfil.io again. | On/Off. Default: Off |
| Process inventory updates (beta) | Sends inventory changes from the app to Fulfil.io. | On/Off. Default: Off |
| Apply inventory updates only for SKUs matching following patterns | Sends inventory only for SKUs that match the values you list. Uses the same format as the product SKU filter. | Optional. Empty sends all |
| Apply inventory updates only for SKUs not matching following patterns | Stops inventory updates for SKUs that match the values you list. Use this when you want to manage inventory for some products manually, for example during a sale. | Optional |
| Force inventory resync | Sends a full inventory count for all SKUs to Fulfil.io. | On/Off. Default: Off |
Flows
| Flow | Direction | Notes |
|---|---|---|
| Locations | Fulfil.io → Pipe17 | Runs every 5 minutes. Creates a location for each Fulfil.io warehouse that isn't in the app yet. |
| Products | Fulfil.io → Pipe17 | Pulls the full catalog about once a day. Products without a SKU, or that don't match Apply product updates only for specific SKUs, are skipped. |
| Orders (customer shipments) | Fulfil.io → Pipe17 | Runs every 5 minutes. Pulls customer shipments that are waiting for the fulfillment service. The app updates an existing order only while it's in Draft, New, On Hold, To Be Validated, Review Required, or Ready for Fulfillment. |
| Order acknowledgements and failures | Pipe17 → Fulfil.io | Acknowledges the customer shipment in Fulfil.io when the order reaches a status in your accept list. Marks it as failed when the order reaches a status in your failed list, for example when you cancel the order. The app doesn't change customer shipments that are already done in Fulfil.io. |
| Fulfillments | Pipe17 → Fulfil.io | Runs every 5 minutes. Ships the customer shipment in Fulfil.io with tracking, carrier, and package details. Also ships outbound internal shipments. The app sends no more than the quantity on each Fulfil.io line. |
| Purchase orders and arrivals | Fulfil.io → Pipe17 | Runs every 5 minutes. Pulls supplier shipments as purchase orders, and optionally creates arrivals. The app skips a supplier shipment if its warehouse doesn't match a location in the app. It updates an existing purchase order only while it's in Draft. |
| Arrival acknowledgements and failures | Pipe17 → Fulfil.io | Acknowledges the supplier shipment or inbound internal shipment when the arrival reaches a status in your accept list. Marks a supplier shipment as failed when the arrival reaches a status in your failed list. |
| Transfers | Fulfil.io → Pipe17 | Runs every 5 minutes. Pulls inbound and outbound internal shipments as transfers, and optionally creates arrivals for inbound ones and shipping requests for outbound ones. |
| Receipts | Pipe17 → Fulfil.io | Runs every 5 minutes. Receives the supplier shipment or inbound internal shipment in Fulfil.io, including lot numbers and expiration dates. |
| Inventory | Pipe17 → Fulfil.io | Beta. Sends inventory adjustments as quantities change. Force inventory resync sends a full count instead. SKUs that don't exist in Fulfil.io are skipped. |
Troubleshooting
-
The connection fails
The app couldn't reach Fulfil.io with your URL and token. Make sure Fulfil.io URL is your portal URL without/client, and that Warehouse access token is the token for the correct warehouse. Then update them in the connection settings. -
Orders or purchase orders don't appear in the app
Check that Pull locations from Fulfil.io is on and that the Fulfil.io warehouse has an active location in the app. Also check the date settings and any ID filters you added for testing. To learn more, see Getting Started with Locations in Pipe17. -
A fulfillment has the exception "Fulfillment is split and can not be currently reported"
The fulfillment covers only part of a bundle, so the bundle quantity isn't a whole number. Fulfil.io can't receive partial bundles. Fulfill all components of the bundle so the app can send it. -
A fulfillment has the exception "Order can not be fulfilled in Fulfil. There are unfulfillable items"
The SKUs or line IDs in the fulfillment don't match the lines on the Fulfil.io customer shipment. Check that the SKUs in the app match the product codes in Fulfil.io. -
Inventory doesn't update in Fulfil.io for a SKU
The SKU doesn't exist in Fulfil.io, or the inventory SKU filters exclude it. Add the product in Fulfil.io or update the filters.
Need Help?
If you need additional assistance:
- Use Ask Pippen, our AI agent, located at the top of the platform page.
- Submit a support request with as much relevant detail as possible. Learn how to submit a request.
We’re here to help you succeed with your operations.
Comments
0 comments