Payments Developers Live - Wallet APIs

Uploaded by GoogleDevelopers on 15.11.2012


MIHAI IONESCU: Hi, everyone.
Welcome to another session of Payments on Developers Live.
We were hoping to have a partner join us today, but
unfortunately, they couldn't make it.
But they promise they will make it in a couple of weeks.
PENG YING: They promised.
MIHAI IONESCU: We'll hold them to that.
But nevertheless we have so many things to talk about.
You will definitely be entertained.
We have announcements.
We have lesson demos.
And of course, we'll take questions.
First, we'd like to make an introduction.
We have a new colleague.
We were telling you that we were hiring.
And we're very happy we've made a great hire.
And on my right side here, there is Nasir Khan, which is
a new developer advocate.
We're very happy to have you, Nasir.
Tell us a little bit about yourself and what you will be
working on.
NASIR KHAN: Thank you for the introduction, Mihai.
I'll be focusing on the Wallet API for mobile payments.
I'm really excited to be here, and hello everyone, hoping to
see you in the near future for more of these sessions.
MIHAI IONESCU: All right, we'll be counting on you.
Tell us a little bit about the interview process.
We've been telling people that we're hiring, and we have a
pipeline of great candidates, and you were one of the best.
How was it?
NASIR KHAN: Absolutely.
So when I started out with the interview process I was a
little nervous because you hear and read these things
online that it's a really excruciating process.
MIHAI IONESCU: A little bit.
NASIR KHAN: It was intensive, I would say, but it was very
interesting, too, at the same time.
So it was a very interesting day overall.
I really liked it.
It was pretty smooth.
And it turned out well in the end.
MIHAI IONESCU: Awesome, awesome.
Yeah, we took it--
we took it easier on you.
NASIR KHAN: Thank you for that.
MIHAI IONESCU: And you're really good.
So we're very happy to have you here.
PENG YING: How do you like Google so far?
NASIR KHAN: It's been an amazing ride.
I've just been about a month now.
And every day is a new day, literally.
Because there's so many things to learn.
And in fact, the Payments area, of course, is so
interesting, so diverse, and really moving ahead in various
So it's very, very exciting to be here.
MIHAI IONESCU: So many exciting things happening.
Well, welcome, Nasir.
PENG YING: We're still hiring, if anybody else is--
MIHAI IONESCU: We are hiring, yes.
PENG YING: --interested in joining the team as well.
MIHAI IONESCU: And we'll see more of you in upcoming weeks.
All right.
So let's move on to some announcements.
You've been traveling a lot.
What's been going on?
PENG YING: I have been traveling, yeah.
Well, I just got back from Kansas City.
And what we're doing there was we were holding a Google for
Entrepreneurs event in Kansas City, where we walked through
the APIs and the products that we think can be beneficial to
entrepreneurs and developers.
So I went there, and I spoke about Google Wallet for
digital goods, and was telling them about a high-level
overview of what Google Wallet is, and how it can benefit
developers and entrepreneurs selling digital goods.
I also got to check out Google Fiber, which is
something that is--
PENG YING: Yeah, totally amazing.
MIHAI IONESCU: Oh, I envy you.
PENG YING: I think-- well, I watch a lot of TV, which is
probably not the best thing, but I'm using Comcast right
now, and the UI for Comcast, Google Fiber blows it away.
It was amazing what you could do using a 7-inch tablet as
your remote control and being able to schedule DVR and
stuff, and then stream the DVR content to the 7-inch tablet
while you're watching TV, like some other channel on TV, it
was just a awesome experience.
And I'm totally excited for people in Kansas City.
Giving you guys a shout out.
MIHAI IONESCU: Yeah, I heard that a lot of start-ups are
popping up in the Kansas city area.
PENG YING: It seems like it.
We had pretty good attendance.
Oh, one more thing.
I want to talk a little about Stack Overflow.
So we've now pretty much fully migrated from Google Groups
over to Stack Overflow.
And we're starting to see a little bit--
we're starting to see more and more questions about any
Google Wallet topic on Stack Overflow.
So if you have questions about Google Wallet APIs, such as
Checkout Google Wallet for digital goods, Google Wallet
for online commerce, Save-to-Wallet, or any of
those APIs, you can post them in Stack Overflow and tag it
with Google-Wallet.
And then we pretty much check almost every day.
And we'll try to answer as many of those
questions as possible.
MIHAI IONESCU: So we're counting on
the developer community.
If someone misses a question or doesn't tag it correctly,
please re-tag it.
We'll be forever grateful.
OK, what else is going on?
Some exciting new launches.
Yeah, Nasir, do you want to talk about it?
NASIR KHAN: Interesting, yeah.
So as I said, I'll be working on the Google Payments, and
there are two new, exciting devices that have just come on
the market--
LG Nexus 4 and Samsung Nexus 10.
They have Google preinstalled on them.
And they also have the latest and greatest
4.2 Android on them.
MIHAI IONESCU: 4.2 is awesome.
PENG YING: I just got the OTA this morning.
NASIR KHAN: You did?
OK, great.
PENG YING: I haven't got to check it out yet.
I heard the Nexus 4 sold out in something like 30 minutes.
PENG YING: I could be wrong.
It might be like 50 minutes.
MIHAI IONESCU: No, it sold out pretty fast.
But there are more on the way.
It's a very nice device, so no wonder.
And it's a great price.
OK, so what else is going on?
Oh, I also have an announcement.
So remember last time someone asked about to open-ended
So subscriptions with no expiration date, you just set
the subscription, let it go, and either it will end when
the customer cancels it or the merchant cancels it.
So our engineering team went to work.
Open-ended subscriptions are now available, and I'm going
to switch to my screen and show you guys how you
can set them up.
So if my screen is on, you will see that we have a
"numRecurrences" field in the JWT.
That is now optional.
If you are not setting it, if you're omitting it, then the
subscription would be open-ended, and it would recur
until canceled.
And to show you how a screen will look like when a customer
places an open-ended subscription, it'll look just
like this, and it will nicely say "The subscription will
occur every month starting when, until you cancel on
subscription/" So that all means it's open-ended.
So for those who are looking for this new
feature, it's there.
Go ahead and use it.
And we were happy that we had such a fast turnaround.
So with that said, any other announcements?
PENG YING: Pretty sweet.
MIHAI IONESCU: We will have some interesting partners
joining us hopefully in the next few sessions.
PENG YING: Yeah, in the next few sessions.
We'll have Carbon Games bringing on AirMech.
And then we'll have Kabam talking about their
monetization and how they've monetized their games.
MIHAI IONESCU: So don't miss the next few sessions.
Let's go to some questions.
MIHAI IONESCU: Questions, yes, my
favorite part of the session.
So I'll take the first one.
So the first one is, "Can we share revenue via the other
current or near-future Google Wallet API?
Is this a beta program?
How can we sign up to test it?"
So that is a very good question, and it's coming up
It is a valid business case and something that a lot of
developers are looking forward to.
Currently, there is no API that allows you to do revenue
sharing, but it is on our to-do list.
So we are working on it.
PENG YING: I'll take the second one.
"Any word on support for the Sprint Galaxy Note 2?" So, as
you know, we can't publicly give stuff out before it's
announced here.
But I would say to check the list of available devices in
the Help section on
And it's at the bottom of the page.
It's under Eligible Devices.
And we should be supporting most of the
Galaxy devices on Sprint.
Take a look.
Maybe it's there already.
I haven't look at that page for a little bit.
But if you're interested, go to and then
click Eligible Devices.
MIHAI IONESCU: Upgrade to a Nexus 4.
Upgrade to--
Nexus 4 is an awesome phone.
I played with it a little bit.
MIHAI IONESCU: OK, so let me take the next one.
And this one, the question is, "How can I pass user- and
order-specific information on a Google Wallet transaction?"
It's not clear from the question which Google Wallet
API the developer is using here.
So let's assume it's the digital goods API, also called
the In-App Payments API.
With that, you have a field called "Seller Data" in the
JWT, and you can pass any type of information in that field.
It's nice if you encrypt it to make sure no one
else can see it.
And then that information will be mirrored back
to you in the postback.
So that's one way you can pass private
information back and forth.
If you're using the Google Checkout API, then you have a
similar field in the cart XML and that's called "Merchant
Private Data"--
if you search for it, you'll find it in the documentation--
similarly passed in the cart XML, and you will get it back
in the notification API.
You'll have to subscribe to the notification API, so very
similar mechanisms and very useful.
I'll take the next one.
"Is there any progress in getting Google Wallet on
carriers such as AT&T, T-Mobile, et cetera?" Again,
we can't really elaborate on that.
I get all the questions where I can't say anything.
Sorry, guys.
But we're still working with them.
I can't get into any details.
So I guess next question.
MIHAI IONESCU: Yeah, I don't know if that's an easy
question or a hard question.
It's easy to answer, but hard because we
can't give more details.
PENG YING: Yeah, that sucks.
I wish we could.
MIHAI IONESCU: We really wish we could.
PENG YING: Yeah, transparency is great.
MIHAI IONESCU: Let me take the next one.
The question is, "How can I redirect the customer back to
my site after a Google Checkout transaction?" So in
Google Checkout, there is no automatic redirect.
There is a "Continue Shopping" URL field so that you can
specify, and that will appear as a link on
the final order page.
The customer will need to click on it to go
back to your site.
So it is not an automatic action.
It is a user-initiated action.
And this is a one of the drawbacks of the Checkout API.
If, however, you are selling digital goods, definitely use
the Google Wallet for digital goods API because it's
designed to be on all ENAP APIs, so the customer never
leaves your site.
It all happens on your site.
So you have complete control over the buy flow experience.
So something to consider, depending on what kind of
goods you're selling.

Next question.
Let me take this one because it's also about subscriptions.
PENG YING: All right.
Go for it.
MIHAI IONESCU: It's A little bit down my alley.
So the question is, "When testing recurring subscription
in the Sandbox, how can I verify that my subscription
recurs on the correct date?
Do I have to wait a month, as the only available frequency
is monthly?" So the nice thing about the Sandbox is that you
can do all kinds of testing and place order, cancel orders
without really incurring me transaction costs.
So to verify that a subscription recurs correctly,
you can play a little bit with the JWT.
And let's say you set up a free trial subscription that
recurs one day in the future.
So you set the first subscription charge to occur
one day in the-- tomorrow.
And then you just wait one day, and you verify on your
buyer account, did I get the transaction email?
And you look in the merchant account.
Did the transaction appear there?
Can I cancel it?
So it's not as bad as it looks with the monthly frequency.
You just need to play a little bit with our JWT and get a
little bit creative.
PENG YING: I have a question about subscriptions.
PENG YING: Are we going to enable anything other than
monthly soon?
MIHAI IONESCU: Yes, we're going to do that.
Most likely weekly should be pretty easy to do, and then
three months, so quarterly should also be easy.
We're looking at six months.
So we're verifying.
We're asking people which are the most useful ones, and then
we'll go in that priority.
NASIR KHAN: I've seen monthly and yearly subscriptions.
MIHAI IONESCU: Yearly subscription is also very
popular, yes.
So we're looking at all of those.
MIHAI IONESCU: OK, you want to look at the next one?
PENG YING: Sure, I'll take this shipping one.
So it looks like somebody is having trouble with Checkout.
And the question is, "I have trouble
shipping with Checkout.
I use product weight to calculate the shipping cost
from the table in the Merchant Center.
One item has flat-rate shipping with
product shipping class.
When this item is in the cart, the customer is only charged
the flat rate."
We need a little time to parse this one.
It's quite technical.
PENG YING: I did a lot of Checkout support in the past.
In order to troubleshoot this issue, I would actually need
the cart XML.
It's the clearest way to understand what's going wrong.
But from this description and from my experience
troubleshooting shopping carts and Checkout, I think what's
going on is that the carts that are being submitted, it
also includes shipping information within the cart.
So that shipping information is then overriding--
it takes precedence over the Merchant Center configuration.
So if you've set up your shipping tables in the
Merchant Center, and you have--
like let's say you're using e-commerce platform, and this
e-commerce platform is generating some shipping
information in the cart itself.
That shipping information that's generated by the
e-commerce platform will take precedence, and that's what
Checkout will use to charge a customer.
And that could be what's happening here.
MIHAI IONESCU: Most likely, yeah.
PENG YING: If it's not, if you're looking at the XML cart
and it's not working, maybe try posting the question on
Stack Overflow, and then include your XML cart, and
include what you're seeing, a description
of what you're seeing.
And then we'll try to take look.
MIHAI IONESCU: Definitely we're going to be parsing also
the Stack Overflow stream for more technical questions.
Unfortunately, this is a Moderator question, and you're
limited as far as how much information
you can put in there.
So I can understand why this was hard to express what the
problem is.
So Stack Overflow with code samples, and we're going to
look at them.
And maybe we can debug it live.
That would be fun.
PENG YING: Debugging live.

It's coming.
I swear.
MIHAI IONESCU: OK, so it looks like we're at
the end of the questions.
The next couple weeks are going to be exciting.
PENG YING: Yeah, Thanksgiving next week.
Gobble, gobble.
MIHAI IONESCU: And after that, another Payments Live session.
PENG YING: Yeah, we're definitely going to be another
Payments Live session.
We'll have AirMech on.
I don't know if you guys have heard of AirMech or played
with AirMech at all.

Well, right now it's kind of like a defense of the Ancient
style game.

If you don't know that, it's kind of like a competitive
Tower Defense game.
And then basically the reason why it's amazing is because of
the technology that they've built and
enabled into the browser.
So we'll be showing this awesome-looking game in the
browser, and then we'll be talking to them about how
they've monetized the game, the method of monetization,
which in their case is freemium.
So we'll be discussing a little bit about the freemium
methodology, and then if it's been successful for them, and
maybe you'll find some insights.
MIHAI IONESCU: It's an excellent use case of how you
can use the digital goods API to monetize a browser app for
any kind of game.
All right.
Well, thank you.
And thank you, Nasir, for joining us.
We'll see everyone next time.
PENG YING: See ya.