Get user authorized with PIN using App Bridge inside Shopify POS

Topic summary

Issue: After updates to Shopify POS/App Bridge, retrieving the PIN-authorized POS user via app.getState(‘pos.user’) no longer behaves as before. iOS often returns the store’s admin user instead of the active PIN user, while Android sometimes returns nothing.

Shopify response: A staff member tested a fresh Android setup (shopify_app Ruby gem) and confirmed the documented App Bridge POS Actions for fetching the current POS user ID work as expected. They requested detailed bug reports on the App Bridge GitHub if discrepancies persist.

Follow-up: Another developer using Shopify Flow reports inconsistent results for returns—sometimes the PIN user is shown, other times the admin user—with no clear pattern. They considered using device ID to disambiguate but noted it isn’t accessible in Flow.

Context: App Bridge is Shopify’s framework for embedded app integrations; POS is the point-of-sale app; Flow is Shopify’s automation tool.

Status: Unresolved/inconsistent. Action items: consult the POS Actions docs and file a thorough bug report with reproducible steps and environment details.

Summarized with AI on December 22. AI used: gpt-5.

So we used to do this with v1 of App Bridge with app.getState('pos.user'), but it doesn’t work any more - now it returns the admin user, the one who set up POS. It got “broken” with the new version of Shopify POS app.

We need to get the PIN-authorized user id, how can we do that now?

It gets even better, for iOS app the behaviour is as described above, but for Android it doesn’t even return anything on app.getState(‘pos.user’)

Hi Sling,

Thanks for your post. We’ve tested in a fresh test app scaffolded with the shopify_app Ruby gem running in POS on Android with App Bridge and have confirmed that the instructions for getting the POS current user id at the following doc page are working for showing a POS only userid for the currently active user: [App Bridge POS Actions - Shopify Dev Docs]

If you’ve found a situation where the most recent version of App Bridge isn’t functioning as documented please file a detailed bug report in the official public GitHub repository for App Bridge including as much info as possible so our teams can investigate in more depth:

https://github.com/Shopify/shopify-app-bridge/issues

Thanks and hope you have a great day,

Did this ever get fixed? We have something similar, but we are using Flow and we need the POS user from a return. Sometimes it shows the name of who logged in with the pin but then sometimes it shows admin user. Haven’t figured out any rhyme or reason to it and I thought I could just use the device ID but doesn’t look like that is accessible in flow.