The Shopify POS API’s Customer object does not include phone numbers by default, exposing only fields like ID, name, and email. This limitation stems from Shopify’s privacy and security policies.
Available workarounds:
Shopify Admin API (Customers endpoint): Fetch full customer details including phone number using the customer ID. Requires read_customers permission.
Shopify Orders API: Retrieve phone numbers from order details if provided during checkout.
Manual collection: Add custom notes/tags during POS checkout to capture phone numbers, then store in customer metafields for later API access.
Current status: The discussion remains open with no direct POS API solution available. The Admin API approach is recommended as the most reliable method for accessing customer phone numbers.
Summarized with AI on November 1.
AI used: claude-sonnet-4-5-20250929.
I’m currently working on integrating our Shopify app to Shopify POS with and I noticed that the Customer object in the POS API only provides the email field but doesn’t seem to include the customer’s phone number.
Is there a way to access the customer’s phone number through the Customer object in Shopify POS? If not, are there any workarounds or API endpoints that would allow us to fetch this information for customers associated with orders in the POS?
I’ve thoroughly reviewed your question, and the main issue here is that the Shopify POS API does not expose the customer’s phone number within the Customer object by default. This can be a limitation when trying to integrate customer details seamlessly into your app.
Why is the Phone Number Missing in the POS API?
Shopify’s POS API restricts certain customer information due to privacy and security policies. The Customer object in POS typically includes fields like id, first_name, last_name, and email, but not the phone number.
Workarounds to Fetch Customer Phone Number in Shopify POS
Although the POS API does not provide direct access to the phone number, here are a couple of ways you can retrieve it:
1. Use the Shopify Admin API (/customers/{customer_id}.json)- If you have the customer ID, you can make a request to the Shopify Admin API to fetch the full customer details, including their phone number.
Example API Request:
GET https://{store-name}.myshopify.com/admin/api/2024-01/customers/{customer_id}.json
Required Access Scope: Ensure your app has read_customers permissions in the Shopify Admin API.
This method works only if the customer has a saved phone number in their Shopify profile.
2. Pull Phone Number from the Order Object (/orders/{order_id}.json)- If the customer has made a purchase through POS, you can fetch the phone number from the order details using the Shopify Orders API.
Example API Request:
GET https://{store-name}.myshopify.com/admin/api/2024-01/orders/{order_id}.json
The response will contain customer details, including the phone number (if provided at checkout).
3. Ask Customers for Phone Numbers During POS Checkout- If your business requires phone numbers for future interactions, you can add a custom note or tag during checkout in Shopify POS to collect customer phone numbers manually.
You can then store these numbers in customer metafields and access them via the Shopify API later.
Final Thoughts
At the moment, there is no direct way to access phone numbers from the POS Customer object itself, but using the Admin API (Customer or Order endpoints) is the most reliable approach. If your use case involves customer communication, consider collecting phone numbers explicitly during checkout.
If you need any other assistance, feel free to reply and I will try my best to help. Best regards,
Daisy