---
title: "fDaemon"
description: "fDaemon (short for Fulfillment Daemon) is a standalone utility for 3rd-party fulfillers to download and process orders."
---

> **For AI agents:** the complete documentation index is at [llms.txt](/llms.txt). Append `.md` to any page URL for its markdown version.

fDaemon (short for Fulfillment Daemon) is a standalone utility for 3rd-party fulfillers to download and process orders.

It's designed to require minimally-attended operation, can handle high order volumes, and can handle the workload for multiple fulfillers.

### 

### General Info

For additional information or to be set up with fDaemon for your fulfillment lab, please contact your sales rep. or account manager.

### 

### Order Status Updates

fDaemon can be used to post order status updates to the platform by creating simple JSON text files dropped into a hotfolder than fDaemon monitors.

#### Filenames

Status Update JSON files should have the following naming scheme:

<Note>
&lt;order\_id>.&lt;fulfiller\_code>.&lt;dealer\_code>.json
</Note>

For example, if Mugs 'r Us (8600) is fulfilling order #23051234 placed on the ABC Photo (6301) site, the filename would be:

**23051234.8600.6301.json**

#### JSON Text File Content

The contents of the JSON file are the same payload as would be sent to the Photo Finale API3 UpdateOrders endpoint.

```java
{
 "DealerCode": "9071",
 "Status": "Complete",
 "OrderLineItemList": [ id, id, id, ... ],
 "ProductList": [ id, id, id, ... ],
 "StationLocation": id
 "TrackingInfo": {
   "CarrierName": "UPS",
   "TrackingNumber": "12345",
   "TrackingURL": "https://ups.com/track/12345"
 }
}
```

##### Notes

- The following fields and nodes are optional:
  - OrderLineItemList
  - ProductList
  - StationLocation
  - TrackingInfo
- The DealerCode in the text file is your fulfiller dealer code.
- If either the OrderLineItemList or ProductList fields is not included, the status update will apply to all products in the order to be fulfilled by the fulfilling dealer.
- The optional ProductList node allows the status update to be applied to only those line items which match the specified list of products.
- The optional OrderLineItemList allows the status update to be applied to only those individual line items specified in the list by ID number.  Each line item has a unique ID number provided in the original order metadata xml.
- TrackingInfo is should only be sent when sending Status "Complete" or "InTransitToStore".
- Within the TrackingInfo node, the TrackingURL field is optional.

##### Status Values

The following are the valid values for the Status field.  Many of these statuses are optional.  Most fulfillment orders only go through the basic, highlighted statuses.

|    **ID**  |  **Value**                 |  **Description**                        |
|-----------:|:---------------------------|:----------------------------------------|
|        12  | "OrderSubmitted"           | Order Placed [internal PF status]       |
|        13  | "Queued"                   | Order Processing [internal PF status]   |
|         0  | "New"                      | Order Available for Fulfillment Lab     |
|        20  | "PreparingOrder"           | Preparing for Production                |
|        25  | "PreparationComplete"      | Order Ready for Production              |
|        30  | "ImageCorrection"          | Color Correction In Progress            |
|        35  | "Printing"                 | Order in Production                     |
|         1  | "Printed"                  | Order Produced                          |
|        40  | "ProductionComplete"       | Order Produced, Ready for Quality Check |
|        45  | "QualityAssurance"         | Quality Review In Progress              |
|        50  | "QualityAssuranceComplete" | Quality Review Passed                   |
|        55  | "InTransitToStore"         | In Transit to Pickup Store              |
|         3  | "Complete"                 | Order Ready for Pickup / Order Shipped  |
|         2  | "Cancelled"                | Order Cancelled                         |

##### Shipping Carriers

These are the valid values for the optional "CarrierName" field:

- USPS
- UPS
- UPS Mail Innovations
- Canada Post
- DHL
- FedEx
- FedEx SmartPost
- GLS
- Intelcom
- LSO
- OnTrac
- OSM Worldwide
- Purolator
- Spring GDS
- AustPost (AU)
- Express Post (AU)
- Fastway Couriers (AU)
- Interparcel (AU)
- TNT (AU)
- MRW España (ES)
- InPost Paczkomaty (PL)
- 99 Minutos (MX)
- AMPM (MX)
- Carssa (MX)
- PaqueteExpress (MX)
- Redpack (MX)
- Estafeta (MX)
- NZ Couriers (NZ)
- NZ Post (NZ)
- Post Haste (NZ)
- DPD (UK)
- Royal Mail (UK)
- (Other)

Additional carriers can be added by request.
