POS Hanging at loading screen 86% when log in

Explanation

Error when fetching POS config from the server via API (Error code: 500 or 503)

Handling

1. Your website is enabling maintenance mode

Sample

  • Error response should look like this 

 

Reason

  • Maintenance mode is on.

Solution

  • Contact your developer or the guy in charge to turn maintenance mode off.

2. You're using Cloudflare

Sample

 

Reason

  • After login into POS, it makes so many requests for static content (image, CSS), and API calls which will reach the rate limit of your Cloudflare rate limit setting.

Solution

  • Go to the Cloudflare panel and white list requests from POS or increase the rate limit for requests from POS on your Cloudflare setting.

3. You're using Redis cache for session storage

Sample

  • The error should look like this 

 

Reason

  • You reach the max_concurency setting for Redis. POS includes session data in all API calls after login, and it sends so many requests in a second that the server can not server at once. It means that every request send later will move into the queue, once the queue run out of the number set in max_concurrency, it will return error 503: Service Unavailable.

Solution

  • Increase max_concurency in the Redis setting by running the following command

    php bin/magento setup:config:set --session-save-redis-max-concurrency=20

See also

4. An internal error occurs in the API itself

Reason

  • There is an unhandled exception in API calls due to conflicting with other extensions or code logic when executing the code.

Solution

  • Contact Magestore support team to check