An Uber Engineer Discusses Cash for India Growth and Beyond
Growth in India is big for Uber, so much so that some of our product and engineering teams in San Francisco and Bangalore focus exclusively on it. Sunil Garg, engineering manager on the India Growth team, talks to us about introducing cash payments for rides and how it has fostered our growth in India and beyond.
Q: Tell us more about the India Growth team.
A: Uber’s India Growth team formed in late 2014 to support riders and driver partners in India. While Uber’s core product works well globally, the Indian market poses unique needs. Our team’s job is to champion and build for India. We work in many areas, such as rider growth, driver growth, and the Uber core experience. While the first two areas address how riders and drivers sign up on our platform, the core experience team improves the experience for riders and drivers while on trips. What started as a team of two is now over two dozen engineers in San Francisco and Bangalore as of Spring 2016.
Q: How did you get started on a payment alternative?
A: Uber is all for digital payments; that’s why we initially launched in India with credit card payments. But in time, we found that digital payments are not as seamless in India as elsewhere. First of all, India is still a cash economy, where only a small percentage of the population has credit cards. Moreover, these credit card users have a hard time with online transactions because the two-factor authentication slows down the online user experience.
At Uber, we don’t want riders to fumble with payments. We partnered with Indian mobile wallet providers which offer a smoother online experience compared to Indian credit cards. Mobile wallets require riders to link their bank accounts or other payment methods with two-step verification just once; after that, they don’t have to redo verification for every transaction. But even that is not the ideal experience for everyone. Riders and driver partners made it clear that they would much rather pay for rides with cash. In the end, that’s what drove our decision to support cash payments.
This is one clear example of how user needs differ across regional markets. In the United States, we think of digital payments as seamless. It’s the opposite in India where cash proves to be the most desired payment method.
Q: How long did it take to build the cash payments solution?
A: In early 2015, we started to sketch out the initial designs for Uber’s cash experience. We focused on designing an interface that would work for driver partners of varying literacy levels as well as provide fare information to facilitate a smooth transaction between riders and driver partners quickly. Within a few weeks, we had a working prototype that we tested in Hyderabad. From there, it took us roughly two to three months to make a product that we were ready to ship.
Q: What are some of the engineering challenges your team faced?
A: In the real world, systems are never built with all the requirements in mind from day one, and requirements evolve at scale over time. Along these lines, implementing cash payments into Uber’s existing experience presented three fundamental challenges:
1) Payments Infrastructure
The existing payments infrastructure at Uber was not built with cash in mind. Unwinding the systems to support cash was a major engineering challenge. For digital payments, trip data and billing were asynchronous processes. When you exit an Uber, for instance, we initiate a job in our backend system to figure out how much you owe. It tallies the fare, promotions and credits in your account, and then bills your credit card. While all that happens within seconds after you exit, historically we did not need to guarantee that it happen so quickly. For cash, we have to do this while you’re still in the car so you can pay the driver directly. We can’t afford a lot of latency or lag time. This means we now effectively have to calculate fares ahead of time. So we reordered the trip processing and billing workflows. We also reduced the internal dependencies to figure out fares the riders owe.
2) Driver Payments
As riders now pay in cash, we need a streamlined process to collect Uber’s technology fee from driver partners. Solving this challenge is an ongoing process. We also enhanced driver payment statements. While we already provide accurate payments, we redesigned the reports to accommodate varying literacy levels and display cash earnings. Now partners can see right away how cash trips impact their income.
3) Spotty Connectivity
Mobile networks in India are still quite unreliable, and spots of poor connectivity are common as drivers move around their cities. As I said earlier, we have to load the rider’s fare at the end of the trip. But without an active network connection, we’re out of luck. So we built a backend system that calculates and caches fares throughout the ride. With this in place, the app can always fall back to a value even when there’s no network connection at the end of a trip.
Q: What’s the impact of cash payments on growth in India?
A: The cash payments initiative has played a large role in Uber’s growth in India. Trip volume increased as we gradually rolled out the feature to riders from mid-2015 through early 2016:
Q: What’s the long-term plan as digital payments improve in India?
A: Like our CEO Travis Kalanick said on his recent trip to India, we want to be where the market is. If India prefers cash, we’re prepared to invest and make it a first class experience within Uber.
More generally, India is a perfect place to incubate novel solutions. Its unique constraints, as well as massive scale, extend to global challenges. When our initial trials in Hyderabad were successful, we rolled cash payments out conservatively across all of India and since then have scaled it across several more of the nearly 70 countries in which Uber operates.
Now that the cash feature is available across several markets and products, India Growth is working on new initiatives. As with cash, these initiatives translate to more growth opportunities and engineering challenges at scale.
Like what you’re reading? Sign up for our newsletter for updates from the Uber Engineering blog.