Is customer email always included in the order object?

Topic summary

Core Issue:
A developer questions whether customer email is guaranteed in Shopify’s orders_create webhook payload.

Key Findings:

  • Email is not a required field in order objects (confirmed with screenshot)
  • Customer field also not guaranteed in all orders
  • However, when shoppers provide phone/email at checkout (even without login), Shopify automatically creates a customer record and links it to the order

Recommended Approach:

  • Use customer ID from the webhook response to link orders to customers
  • This method simplifies tracking and improves order management efficiency

Access Requirements:

  • read_orders scope alone is insufficient for full customer data
  • Must add read_customers scope to access complete customer fields

Unresolved Challenge:
The developer is stuck updating access scopes during development—their app hasn’t been approved for network access yet, and deploying config changes creates new versions requiring app review. They need a method to update scopes without triggering the network access approval process.

Summarized with AI on November 12. AI used: claude-sonnet-4-5-20250929.

@EricH2

In my experience, using the customer ID is an effective method to link orders. By extracting the customer ID from the orders_create webhook response, you can seamlessly connect each order to its respective customer in your system. This approach simplifies tracking and enhances the overall efficiency of order management.

1 Like