Scenario
On sales order record, Fulfill button is missing and status is Pending Billing.
Solution
To check why a sales order with Non Inventory Items does not have the Fulfill button, we can check the following:
1. On the item line, view the Item record involved in the sales order
2. Go to the Preferences tab
3. Check if the Can Be Fulfilled/Received box is marked
'Can be Fulfilled/Received' preference controls the sales order status to be set to either Pending Fulfillment or Pending Billing. With this preference enabled on a non-inventory item, the sales order status should be set to Pending Fulfillment. Otherwise, it will be set to Pending Billing."