We have a developer account that we use to test and develop a custom fulfillment app. In the original App Store, Apps had full access to the fulfillment order. In the Dev Dashboard, all attempts to accept a fulfillment requests yield this response:
Go to your app in the Shopify Partners Dashboard, then navigate to API access (or “App setup” depending on your dashboard version). Look for the “Protected customer data access” section. You need to submit a request there explaining why your app needs access to customer data, specifically fulfillment-related fields. For a fulfillment app, the justification is straightforward since you literally need the shipping address to fulfill orders.
You also need to make sure your app has the read_merchant_managed_fulfillment_orders and write_merchant_managed_fulfillment_orders scopes (or the corresponding read_assigned_fulfillment_orders / write_assigned_fulfillment_orders scopes if you’re acting as an assigned fulfillment service). These are separate from the protected customer data request but both are needed.
The old app creation flow in the legacy dashboard granted broader default access, which is why your original app worked without this step. The new dashboard is more locked down by default and requires you to opt in to protected data access explicitly.
Once you submit the protected customer data access request and it’s approved, your fulfillment order queries and mutations should work as expected again.
Thank you for your response and pointing out the process for applying for the data access, but the question was more about why developer accounts no longer have that access by default.