Wherever I go, I explore the local apps. In India, the necessity of having a local number hindered it. Even though I could use the local QR payments, I couldn't use many other apps. That's because app developers over-rely on one type of mobile number.

Thanks to the 4G rollout in 2016 majority of Indians have smartphones with cheap mobile Internet. The second-order effect is that they skipped card payments and embraced UPI (QR payments). This second-order effect also applies to user identification.

When a smartphone is the only computer for most of the population, the phone number becomes the primary ID. The problem is that plenty of apps now assume that every user has an Indian mobile number.

What apps require an Indian mobile number?

I downloaded:

The other popular food delivery app, Swiggy, wasn't available in the Polish App Store, which is a separate issue. Still, if I got the three mentioned apps, I should be able to use them, right?

In fact, I could browse and select products. Only at the last step before payment did the Indian phone number field show up. Most apps allow you to pick your country code, type the number, and verify it with the SMS code.

Unfortunately, many Indian apps don't allow you to select a non-Indian country code. Urban Company was even more confusing. It allowed selecting a country code from Saudi Arabia, UAE, India, or Singapore. One friend had a Singaporean number and signed up. Yet at the checkout, the transaction was rejected, as the app required an Indian number for services in India.

No Indian number = no Wi-Fi

During our two-week trip to India, we visited a few Starbucks and airports. You could assume that a global coffee shop chain and international flight hubs are places where Wi-Fi works okay. It works, provided you have an Indian number.

Silly assumption. Under my posts on Threads, Indian users suggested that strict government regulations are the cause. But there needed to be a different authorization method. Only the Bangalore airport had a kiosk that issued Wi-Fi vouchers for travelers. Everywhere else the Wi-Fi sign-up screen required an Indian mobile number.

Why is it bad to rely solely on an Indian mobile number?

  1. India hosts roughly 20 million international visitors each year, and most forgo getting a local Indian number for their visit.
  2. Many Indians abroad hold local numbers. Visiting their home country is harder when they need to get/maintain an Indian number.
  3. Travel eSIMs or roaming plans covering India are affordable and accessible. So when nomads can get mobile data and keep their current number, they don't need to get an Indian one.
  4. SMS verification codes in India, often called One Time Passwords (OTP) are easy to use but are also easy to intercept and hack.
  5. Besides the sign-up verification SMS, apps send codes that need to be passed to the delivery person when picking up the order. Sending this in-app increases security.
  6. SIM cards (including eSIMs) can be swapped, stolen, duplicated, etc. Without other identifiers, legitimate users may not recover their accounts.
  7. As Rohan commented under my post on Threads, a government ID is also tied to a mobile number. Which is a much more serious cyber security issue. Especially now that AI is weaponized to perform both social engineering and actual hacking.
rohan (@_framedlife) on Threads
you got bigger problems than Spotify in India for that. our entire identity and government services backend relies on phone number for everything

What are the proven alternatives?

Identifying users is a challenge that predates the Internet. It's a dynamic intersection of legal and technical fields. Yet this simplification applies everywhere. Identification can be done with:

  • what the user knows (password, birthday, mother's maiden name, etc.)
  • biometrics (Face ID, Touch ID, selfie, etc.)
  • what the user has (passport, payment card, phone number, etc.)

Unfortunately, Indian apps appear to only use the last factor. They don't even ask to provide email + password + phone number. It's just the Indian phone number with SMS codes that work as passwords.

Lack of in-app VoIP calls

In the end, we ordered food via Swiggy. My international friend downloaded it via their App Store and checked out with their non-Indian mobile numbers. However, contacting the delivery person was a feat.

The in-app chat worked fine, but due to imprecise GPS coordinates, the delivery staff were attempting to call us. Swiggy didn't have built-in VoIP to make calls in the app. Instead, they rely on Indian virtual phone numbers. They couldn't reach us because their Indian mobile plans did not cover our international numbers. And even using Yolla, we couldn't reach them because Swiggy's system rejected outside calls.

Ultimately, asking the driver for their WhatsApp number was the only way to make a call.

Your Indian friend is (not) the solution

Many Indians recommended signing up for an app by asking a local friend for the OTP. I understand that's part of India's renowned hospitality. Yet the issue is how much these apps rely on SMS codes.

Guest is god

It's not just a code that you receive when registering an account. Indian numbers are also used for calls from drivers and for SMS codes for each delivery. Essentially, my Indian friend needs to be alert throughout the entire process.

Within that context, why register for the app?

Indeed, we made the rest of our deliveries on the friend's phone. She helped us with buying cosmetics via Blinkit, ordering dinner on Zomato, and ordering wellness services via Urban Company.

The Brazilian iFood delivery app had the same issue until Pieter Levels inquired on X/Twitter to address it.

Getting an Indian mobile number

Before arriving in India, we got travel eSIM plans. Most countries don't require local numbers from tourists. But Indian apps created hurdles.

At some point, I considered buying a virtual Indian number via 5sim.net or another site. I refrained due to their poor reputation. Scammers often buy these numbers to send spam via text messages. Thus, apps have filters to block virtual numbers and suspend accounts.

Getting an Indian eSIM with a real phone number was not an option. Our flight landed late at night so we couldn't get it at the airport. Only selected phone shops know how to activate a plan for foreigners, and our travel schedule was busy enough.

What can I do without an Indian mobile number?

The thing is that many apps in India already have working solutions. Uber is a dominant ridesharing app in India and worked well for me and our international friends. The ride confirmation code (PIN) shows in the app instead of as an OTP.

The Cheq app for local UPI payments allowed me to register with my Polish number. Despite issues that I covered in a separate article, it didn't require an Indian number.

Additionally, we didn't have any issues when buying flights via Indian low-cost airlines. Neither IndiGo nor Air India Express required Indian numbers. They actually offered functional WhatsApp bots that sent updates to my Polish number. Something that other airlines should emulate.

Do you get a local phone number in every destination? Or do you rely on travel eSIMs? What are your experiences with Indian mobile requirements?

Reply and tell me what you think. I strive to respond to every comment, and I'd love hearing from you.

See you next Tuesday.