Custom Order Request Filters Using FulfillmentStatus

Hello. I’m attempting to retrieve a list of orders through the Shopify Admin API with a fulfillment_status of “unfulfilled”, but am getting a return of all orders in the store within my set limit, but not filtered. I’ve tried adding a custom order filter when searching as well to no avail. When inspecting fulfillment_status on the orders returned I notice that most are equal to null, if that helps.

public class CustomerOrderListFilter : OrderListFilter
    {
        [JsonProperty("fulfillment_status")]
        public string CustomFulfillmentStatus { get; set; }
    }

Note: I am using the latest version of ShopifySharp for C# implementation.

var service = new OrderService(_shopUrl, _accessToken);
            var page = await service.ListAsync(new CustomerOrderListFilter()
            {
                Limit = 250,
                CustomFulfillmentStatus = "unfulfilled"
            });

Searching on a non-custom filter like FinancialStatus works fine so I at least have a baseline for filters working correctly. Is the fulfillment_status field blocked or ignored similar to how order name was dropped at one point?

Can anyone offer any guidance?

Hi @MMIDev

“unfulfilled” is not a fulfillment status. The valid values are:

  • fulfilled: Every line item in the order has been fulfilled.
  • null: None of the line items in the order have been fulfilled.
  • partial: At least one line item in the order has been fulfilled.
  • restocked: Every line item in the order has been restocked and the order canceled.

Hope this helps!

Sorry to dig up an old issue but I’m experiencing the same problem. I was supplying “Unfulfilled” on the FulfillmentStatus and it seemed to be working fine in other stores I’ve worked on, but this one particular store it is not. I just found this article, so I’ve changed it to a C# null value, but I’m still getting “fulfilled” orders. I’ve tried a C# string value of “null”, but I’m still getting “fulfilled” orders. What do I need to do to get this filter working?

-shnar