Troubleshooting missing login codes and IP blocks
If customers are not receiving login codes, the cause is usually one of three things:
Delivery issues in the customer’s inbox (spam, promotions, filtering)
Security checks on repeated requests or risky network patterns
Setup gaps in your login configuration
Use this guide to quickly identify what is happening and what to do next.
Quick checks first
Before deeper troubleshooting, ask the customer to do these checks:
Confirm they entered the correct email address.
Check spam, junk, and promotions folders.
Request only one new code, then wait a minute before trying again.
Use the newest code only (older codes may be expired).
Turn off VPN/proxy tools and retry from a normal network.
Why login codes may not arrive
1) Email delivery filtering
Some mailbox providers may filter login emails into spam or promotions tabs.
What to try:
Ask the customer to search for your store name in their inbox.
Ask them to check all folders, not only Primary.
Ask them to retry from a different email address when possible.
2) Repeated requests from one email
If a customer requests too many codes in a short period, security protections can delay or suppress new code delivery.
What to try:
Stop repeated attempts for a while.
Submit one fresh request only.
Enter that code immediately after it arrives.
3) IP or network risk checks
Rivo applies automated protection for suspicious network patterns, including high-risk traffic and repeated unverified attempts from the same connection.
What to try:
Turn off VPNs, proxies, and private relay tools.
Switch to a different network (for example, mobile data instead of public Wi-Fi).
Retry from a familiar device and stable network.
4) Verification code timing
Login codes expire after a short window. If the customer waits too long or enters an older code, verification can fail.
What to try:
Request a new code.
Use the newest code right away.
Avoid requesting multiple codes back-to-back.
Same-IP and repeated-request examples
Example: Same-IP pattern
A household, office, or shared Wi-Fi network has several failed or incomplete login attempts. Later attempts from that same network may not receive new codes until risk checks clear.
Best next step: ask the customer to retry from a different network and avoid repeated requests.
Example: Repeated-code pattern
A customer clicks “Get login code” many times in a row, then tries older emails. Security protections can hold back additional codes, and older codes may already be invalid.
Best next step: wait briefly, request one new code, and use only that latest code.
What merchants can check in Rivo
Confirm passwordless login is fully set up and active.
Confirm your Multipass setup is complete and saved.
Confirm login copy and flow settings are still configured as expected.
Confirm customers are using the intended login entry point on your storefront.
For full setup steps, see Passwordless login and sign-up using Shopify Multipass.
When to contact Rivo support
Contact support when:
A customer still cannot receive codes after the quick checks above
Multiple customers are affected from the same region or network
You suspect a legitimate customer was blocked by security protections
To speed up resolution, include:
Customer email address
Approximate time of the latest attempts
Whether they used VPN/proxy or shared/public Wi-Fi
Any error message shown during code entry
Support can investigate security-related blocks and help with next steps.
FAQ
Can I turn off IP and abuse protections completely?
No. Security protections are built in to protect customer accounts and reduce abuse.
Can merchants manually unblock IP-related login blocks in the dashboard?
Not today. If you believe a legitimate customer is blocked, contact Rivo support for review.
Why does a customer see the login flow but no code arrives?
This is usually caused by inbox filtering, repeated attempts, or network risk protections.
How can I reduce login-code complaints?
Add clear on-page instructions: check spam/promotions, request one code at a time, and avoid VPN/proxy connections during login.
