The Agentic Commerce Stack — Ahnaf Prio, Best Buy
AAI Engineer
Internet TechnologyBusiness NewsComputing/Software
Transcript
00:00:00My name is Anaf Priyo. I'm a Senior Engineering Manager at Best Buy. Me and my team are working
00:00:18together right now to figure out what does Agentec Commerce mean and how can we meet
00:00:23our customers, where they're at, and the newest place that they're at is at Agentec Services.
00:00:29I'm excited to give my talk today. And, well, what's my credentials? Where ever since I was
00:00:35a young boy, I dreamed of high throughput inference, harnessing my tools within a context
00:00:40window, kept in check with evals. Yeah, that's absolutely correct. In 2003, all those things
00:00:47definitely existed. I kid. Over the last one year, we have been learning a lot. Shopping
00:00:54isn't new. Shopping is probably one of the most fun things one can do and one of the most essential
00:00:58things that people need to do ever since the economy existed. But I have been super excited
00:01:05by it. So, I'm going to go talk about what are the things, some of the things that I've learned,
00:01:11and hopefully share the notes. So, what is Agentec Commerce? I'm not going to go over the broad
00:01:17definition again. But basically, it's the idea that AI assists will help you with their shopping
00:01:24journey. Shopping has different facets to it. For instance, there's discovery. There's figuring
00:01:31out the aspects of do I actually truly need it? Understanding and deciding. There's loyalty.
00:01:37There's pricing. There's fulfillment. Post fulfillment. It's a lot. And believe it or not,
00:01:44right now, right now, about 45% of all agent sessions that happen within major providers
00:01:51like ChatGPT.com and Google Gemini are related to shopping. Maybe it's a little biased that
00:01:58I don't use it as much, but I'm an engineer. But the humans out there are using AI and talking
00:02:04to them to help with their shopping journey. So, it's also not a binary, you know. Right now,
00:02:11we're at that state of human in the loop. The ideal state would be autonomous shopping. You tell what
00:02:17you're excited about. Your agent goes around, talks to different merchants. I'm originally from Bangladesh.
00:02:24We haggle a lot with the merchants too. Maybe does that, negotiate, does the payment. But right now,
00:02:30we're in the human in the loop. And the talk today is going to talk about the mental model of how that
00:02:36human in the loop is working right now. I'll also provide you with the architecture if you choose to
00:02:41extend it or show you the vision of how autonomous shopping might work. So, this isn't our first attempt.
00:02:50Even a year ago, there were people trying to figure out how can we automate this. Even now,
00:02:56you can go probably download the cloud Chrome extension. Maybe you've used Atlas where you tell
00:03:02the AI you need something. You need headphones. You need that grocery list of items that you have been
00:03:10meaning to buy but never made the actual effort to show up because, you know, you didn't have the time.
00:03:16So, why don't you take screenshots, read the DOM, navigate to the merchant site, fill forms for me,
00:03:23do loyalty. It kind of just didn't work as expected. It was really clunky and slow and brittle. And if
00:03:31you are a merchant who's trying to sell stuff, any engineering department of that merchant will tell
00:03:36you an AI impersonating your browser is just firing up all the alarm bells. So, a lot of times, you will
00:03:46probably be even stuck on the payment flow because we don't want you to be using AI to put in that order.
00:03:53Or at least, in that phase, that's what was happening. So, what did actually work? And is it actually
00:04:00working right now? It is. ChatGPG shopping, Google AI mode is doing just that. Right now, Agentech shopping is
00:04:11considered to be a $7 billion industry and might go up to $65 billion industry by 2030.
00:04:19And the majority of the shoppers are using the mainstream conversational AI assistance,
00:04:25which is on the browser or in your app, ChatGPG and Google Gemini. We're also seeing that pop up in
00:04:31Instagram and Facebook. Meta wants to do Metacommerce now. I heard GoPuff and Grok came together to make
00:04:40an app as well. And also, Microsoft Copilot just yesterday announced in the UK that you can buy
00:04:45Ray-Bans now inside Microsoft Copilot. So, to make that happen, Google and OpenAI separately came up with
00:04:55their own little primitives, ACP and UCP, which is basically talking about how you would actually
00:05:02talk to us. For some of you who are shopping on the other side as the customer, there is not much of
00:05:08a difference between adding an item to cart, adding a second quantity. But to us merchants, that's a
00:05:14second line item, buddy. That's not the same skill. So, if we don't talk about the nuances and the
00:05:20primitives of commerce and standardize it, things will just not work and will remain to be clunky.
00:05:25So, ACP was ChatGPT's attempt at it and Universal Commerce Protocol, UCP, was Google's attempt at it.
00:05:33So, now that I've already established that this is happening, I just wanted to say that it is
00:05:39happening as easy as you go to the ChatGPT Gemini to tell it to find me cat cookies. More to why I chose
00:05:47cat cookies later in this example. The AI surfaces the product, agent calls the merchant checkout API,
00:05:54no browser, payment flows via scope payment mandate or a delegated payment token, an order confirms and
00:06:02human kind of didn't have to touch the cart. So, to all of this that's happening for the user,
00:06:09a lot is happening on the other side. And it's kind of overwhelming. One day we're talking about MCPs,
00:06:15another day, A2A, ACP, UCP, AP2. Like, what is even real? Like, if someone came up to me tomorrow and
00:06:23said, I came up with HYPE, I would probably think it's probably real. So, I wanted to dissect this
00:06:29mental model for you as I've learned about it more. MGP is still the model context protocol,
00:06:35the way that the AI agent identifies the tools. So, maybe we can figure out what does this AI agent
00:06:40specifications are, to showcase what products they have, to showcase the details of a specific product,
00:06:46to showcase loyalty. A2A is how agents talk to each other. They're more of a spec. ACP, UCP are the
00:06:53primitives, and AP2 is the agentic payment protocol scope, payment mandate that Google's open specification
00:07:00came out. And we'll talk all of them one by one, how they actually relate to agentic shopping. So,
00:07:06the MCP tool access is very important because without knowing the different capabilities and
00:07:14hitting those different capabilities, taking the time to bring it into context, understanding the user's
00:07:19memory, the agent will never be able to figure out what you're even trying to do. And the only way to get
00:07:24access to the specific capabilities is through MCP tool calls. The next one is A2A. So, now,
00:07:32there are different ways to architect this, different capabilities I talked about, like payments.
00:07:38Let's say, what do you call it? Loyalty. You could make agents about specific domains itself. Sorry.
00:07:46Right? And if you have specific domain level agents, agents need to talk to each other. We need to find a
00:07:52standardize way to talk to each other. So, A2A, the specifications kind of fill in that gap. Also,
00:07:59if your customer agent and your merchant agent need to talk to each other, maybe you could, they're
00:08:04both agents, maybe we can use A2A. So, now to the UCP/MCP primitives. So, the most important data is that
00:08:13product data. So, UCP allows for adding the product data in a more organized way. And ACP does the same
00:08:23because we don't want to go through your PDP and crawl and figure out every specific attribute.
00:08:29Merchant, just tell us. And also, those products change a lot. So, maybe you can tell us when they
00:08:35change as well. So, send this. So, that kind of data is happening. That kind of data flow is happening in
00:08:42the product feed. Normally, you would assume that this would be a search catalog. However,
00:08:47both ACP and UCP right now, so Gemini and ChatGPT does not support that search catalog call. They want
00:08:54you to send that feed to them. And for those of you who are like, why wouldn't you do that? There's
00:08:59reasons to it. Sponsored products, retail media, related things, ranking. But the most important
00:09:05technological challenges, if you have M number of merchants and N number of products, now it has to
00:09:10call that many. While if you send the product feed ahead of time, we can index it and be ready to
00:09:16offload when you ask for something. I've also put an example of Meta's product feed. As you can see,
00:09:22they're similar but still different. Everyone has an opinion. They think their opinion is the best one.
00:09:27And that's what they're rolling with. So, there's three different specifications right here.
00:09:32So, now that we talked about product feed, talking to each other, calling tools, let's talk about
00:09:37payments. Right now, none of them are supporting the more autonomous form of, you know, X402 or some
00:09:47other kind of payments. We're just not there yet. We're just not confident yet. We want more human in
00:09:51the loop of a merchant to be talking to a payment processor who will take the responsibility or, in
00:09:58this case, liability to actually initiate the payments. So, in ChatGPT, payments only happen
00:10:04through a shared payment token right now. And Gemini UCP, the payments are only being accepted through
00:10:10Google Pay. So, the scoped mandates will tell you what the products are. What I'm excited about is more about
00:10:17AP2, which is an extension of UCP. You see what I'm talking about? There's so many acronyms. AP2 is
00:10:25more about, hey, if we wanted to do autonomous, can you tell me who authorized the agent? What exactly
00:10:30can it buy? And what's the max amount that we should be able to haggle with, maybe? And then the revocation
00:10:38URL and the user concept proof. All right. And all talking, I love building stuff. So, for the sake of
00:10:45this, I have put together a little demo. For those of you who have remembered that cat cookie example,
00:10:52it's because the demo is about my cat. Ginny is my orange tabby. And in this made-up example, Ginny has
00:11:01transformed into a bakery agent. She wants to earn her keep by selling baked goods. So, right now, the
00:11:08model that I'm using is from Cerebrus at 3,000 tokens per second. So, hopefully, this will be really,
00:11:13really fast. And we can give you an example of the entire flow. And just like Chrome DevTools, I've
00:11:20kind of had a couple of tools in place to showcase what happens. The first thing I will tell Ginny, my
00:11:26beautiful cat who's selling baked goods now. Hi. Tell me about all your products.
00:11:36And this is supposed to be a demo. An example. And Ginny has given me exactly that. All the different
00:11:44products that she might need. So, here, let's look at this. The agent to agent protocol actually made the
00:11:50call from Ginny, the customer agent, to the merchant agent. And this is the message being sent. And this
00:11:55is me getting the message back. The merchant agent is returning the completed task. And the way that
00:12:03I found this is through an MCP tool call, which is product search. Instead of, like, not being able to
00:12:13tell what I truly want, Ginny has figured out that, hey, when I give her the intent that I want to find
00:12:20products, we should call the MCP tool called product search. So, right now, we're seeing this. And now,
00:12:27what if I want to add something? Add to cart the shortbread.
00:12:39So, now, Ginny is asking me about any discount and promo code. I actually do not remember any of the
00:12:46discount and promo code. But what if I ask Ginny, Ginny, can you just tell me a discount code? As you can
00:12:54tell, I'm definitely a hackler. Ginny is not telling me that. All right. Proceed to checkout
00:13:04account code without discount code. There you go. So, now we're making some of those calls. Here's
00:13:13the UCP protocol, which the checkout APIs will have state. And the three different states are not
00:13:19ready for payment, ready for payment, and then completed. So, now, here, I'm not using a delegated
00:13:25payment token. I'm not using Google Pay. I like AP2. So, my demo is built on AP2. And as you can see,
00:13:34here was a call was made through the MCP server for create checkout. And then the UCP endpoints will
00:13:42tell us, hey, call the checkout sessions and tell me if it's added to cart. So, it's added to cart,
00:13:49but it's not ready for payment. I have to pick in what I want to pay with. I say credit card and debit
00:13:56card. And this is where I issue the AP2 token that, hey, I do want that. And then it went from ready
00:14:03to ready for payment to complete. So, the other side of it, this is the UCP specs, right? The other
00:14:12side of it, to just draw a comparison, how is it differing from the ACP specs, I have added ACP here
00:14:19as well. So, you can see the same checkout calls, just different, just different schemas are being
00:14:26utilized and the order goes through. But remember that AP2 token that I was talking about? This is how
00:14:33it would look like in real life where the user demo, the max amount is this, the currency is this. If you
00:14:39want to revoke it, you can. And what's the maximum, here we didn't want to haggle, so we just put the
00:14:45max amount of that. And then it's also a single time usage. This demo also has, comes with a timeline, so
00:14:53you can actually open any of these and see these happening. Remember that catalog I was talking about,
00:15:00that they don't do the search? We actually do a product feed, sending it to them. I have added that as well.
00:15:08And the feeds, because they're so different, there's a place to actually compare them. So, here's the feed
00:15:17being called, by the way, if you went to timeline, every couple of seconds we try to get the catalog in
00:15:23sync for what is in inventory, what's not. This is the UCP one, and here's the meta one. So, I've shown you this,
00:15:32and you could reuse this same demo or the same concepts. What if I didn't want to do external
00:15:39agentic commerce on Gemini or ChatGPT? You could still build your own custom implementation of a
00:15:46merchant agent or Gini on your website. Maybe I start selling cat goods. I could reuse some of this,
00:15:55but I would advise maybe look into some of these primitives and trying to use them, because they've
00:16:00been standardized across merchants. So, they have been well thought out. And also, you could probably
00:16:05reuse them to sell externally as well on ChatGPT and Gemini. So, remember, I was talking about the
00:16:14discount codes. There's a reason for that. When we build out this demo and in my time building
00:16:19agenda commerce at Best Buy, we have realized working with AI and conversational experiences
00:16:24without evals is playing whack-a-mole. So, if you choose to use the same architecture for
00:16:29reviewing customer base, like Gini.com websites, think very much about creating evals. One of the
00:16:38things that I could not emphasize more about is you should test, test, and test. If you go over here,
00:16:46I can also run my scripts or run evals. And this eval folder has all those evals. The reason I'm also
00:16:57showcasing the code is there's a template folder here. And we can go back to the slides.
00:17:08And if you don't do evals, this is what might happen. I love Chipotle. I don't know if it's true
00:17:14or not. But I found it really funny, so I'm gonna talk about this. So, this popped up that when Chipotle
00:17:21rolled out their agent, people were using it to ask programming questions, right? If you don't tell
00:17:29your agent to not allow for those kind of things, people will use it. This is hands down one of the
00:17:35most creative ways to get free AI usage when you don't want to pay for that cloud subscription. And if we don't write
00:17:42our evals and test intensely, those things will happen in production. The discount code will be told even
00:17:51sometimes more sensitive things like who else is checking out this product. So, the kinds of evals
00:17:58that I would highly recommend you write is behavior evals, protocol compliance, because when we're selling
00:18:03it. So, when you get to, let's say, gpt, chatgpt.com or Gemini, you want to make sure that the feeds are
00:18:08actually conforming or else they will not support it. You should also think about latency benchmarks.
00:18:14Every second in retail in the shopping journey where you're actually not selling, there are chances that
00:18:20the other website is going to be faster and people are just going to move away or that just don't feel
00:18:25like it anymore. Lastly, I also recommend using LLM as a quality judge. You don't have to use something
00:18:32fancy. Talk to your product friend and figure out what's the best way to do it and use the best use
00:18:39cases and write them out. And I would like to also talk about, now that I've discussed all of this,
00:18:46what's actually stable today and what's still forming. MCP is widely adopted. A2A is widely used.
00:18:52UCP/ACP is out there. What's still forming, though, is AP2 and actual usage of it. ACP versus UCP
00:19:00convergence. Do we always have to do two different specs? Identity constant standards and multi-agent
00:19:05checkout delegation. So, if you have to leave here today with anything, I hope you leave today with a
00:19:14good mental model of agentic commerce works. I have nothing to sell you, but I do have gifts for you.
00:19:19I find agentic commerce really exciting. So, you can find this entire presentation on GitHub and I came
00:19:25up with a template. It's a three service starter. If you want to do customer agent or you want to do
00:19:31the merchant agent, you can do that because I love evals and that saved my life. I have some eval
00:19:37templates for you and you know what if you want to send it to all of your merchants, not just one. I have
00:19:43a catalog sync process as well which will allow you to type into your own product and then turn it into
00:19:49ACP or UCP or meta so you can sell there. And lastly, but not the least, we all know now these days we
00:19:56don't write code like that. If I give you a template, you'll be like meh. So, I have agent skills that
00:20:01specifically does a merchant agent, customer agent, and all those different catalog syncs that we have
00:20:08talked about. I hope you had an amazing time and learned and have fun as much as I had presenting
00:20:15this. Thank you. My name is Anup Priyo and I hope to see you again soon.
00:20:32you