[APK Teardown] Google Wallet's Next Big Features: Person To Person Money Transfers, And Paypal-Style Money Storage

It's time to go APK spelunking again. Today's target is Google Wallet!

Remember this Google Wallet Q&A? The Wallet team took to YouTube and fielded user-submitted questions ranging from "When will Wallet work on my carrier?" to "When will Wallet work in my country?" with the answer to just about everything being "we're looking into it." One exception in the non-committal answer-fest was person to person transactions, with the Walleteers saying to "stay tuned" and hinting that an announcement would be coming soon.

Well, after digging though the Wallet APK, "soon" feels a whole lot closer. It turns out there is a ton of code and images for sending money from person to person, and it's been hanging around for some time. Check this out:

That is the tutorial picture you'll see when Google decides to flip the switch to enable P2P transfers. There's tutorial text in the APK, too:

<string name="tutorial_send_money_description">Pay friends or family quickly with just an email address or phone number.</string>
<string name="intro_video_send_money">&lt;b>&lt;font color=#1f7cd4> Send money quickly.&lt;/font>&lt;/b> Pay friends and family instantly, right from your device.</string>
Interestingly, both of these only mention sending money to an email address or phone number; there's nothing about tapping two phones together for an NFC-based transaction. NFC support would be nice, but I wonder if this means Wallet will show up on non-NFC phones? This is the first feature where NFC isn't a requirement.

THIS IS A MOCKUP, but is currently what the code looks like. The APK provides us a big green dashboard button called "ic_btn_dashboard_p2p_normal.png" and strings.xml tells us the button will be labeled "Send Money" with this tidbit: <string name="dashboard_button_p2p">Send Money</string>.

This is also the order the buttons appear in the xml - Send Money is on the bottom. I suspect that is just so they can easily disable it. Having it at the bottom doesn't really make any organizational sense, and I would expect it to be bumped up next to the other card buttons when it is switched on.

Actually, it wouldn't surprise me to see the whole app get a revamp, this 2x3 Dashboard look is seriously dated (we're talking a Froyo-era design), and just about every app that used it has switched to something more modern. Having the first screen of your app be only navigational elements isn't helpful. In the newest release, they've added a few PNG files for holo tabs, which are, hopefully, the beginnings of a redesign. (They are 6-pixel-wide blue squares and not worth posting).
We have good evidence Google is dogfooding (testing) this right now. There are a few strings related to Googlers and Dogfood:

<string name="tutorial_send_money_to_googler_description">Pay fellow Googlers quickly and for free with just an email address.</string>
<string name="help_topic_contact_us_phone_google_dogfood">For Google Wallet related questions contact Google toll-free at 1-855-[redacted].</string>
<string name="help_topic_contact_us_send_receive_dogfood">For questions specific to sending or receiving money, Dogfooders can email &lt;a href=mailto:[redacted]@google.com>[redacted]@google.com&lt;/a>.</string>
It sounds like money is flying through the air over at Google HQ, and they are leaving us out of the fun!

So far as what things will look like after you hit that "Send Money" button? Well, that's anyone's guess. All I can get from the APK is bits and pieces. There is a string for "Available Wallet Balance" and a few buttons to "Add or withdraw money," so it sounds like you'll have a quasi-bank account with a money balance similar to PayPal. "Google Bank" will basically be a thing now. Transferring between your Wallet account and a real bank account won't be all that fast, with text stating "3 to 6 business days" for various money transfers.

Other than that there isn't too much surprising stuff, you'll be able to view transaction history, and it will tell you who sent money and who received it. One way it will differ from PayPal is that money won't just be a 1 sided transfer, when a transfer happens, you'll get a dialog asking if you want to "Claim" or "Reject" the money, and the sender can even attach a message to your money transfer. The last bit of good news is that a bank account won't be mandatory; there are several messages that say "This function is not available without a bank account," which would suggest some functions are available without a bank account.

The most shocking thing is that, on the client side, P2P Wallet functionality looks finished. It wouldn't surprise me if, in a few days, an enterprising hacker manages to get some of the UI up and running on a real phone (be sure to tip us if you do!). That doesn't mean a release is imminent - Google's infrastructure is, no doubt, the hard part. When you are sending people's money whizzing through the air you better be sure your system is rock solid and not prone to mistakes. The server-side stuff still probably needs more testing.
You'll know more when we do.