TJ Littlejohn (mtnPay CEO) joins The Zeitgeist to discuss how mtnPay is enabling real-world crypto adoption by innovating on the payment user experience.
Show Notes
00:42 - Background
01:53 - Story behind MtnPay
03:42 - Other participants at MtnDAO
05:53 - From white paper to actually building
08:56 - Congressman interaction
10:22 - What is MtnPay?
12:22 - Future Features for MtnPay
14:40 - Winning Riptide’s payments track
15:33 - Developer resources
16:40 - The Photobooth
20:34 - Solana's architecture
22:10 - The Future of Payments on Solana
24:33 - The future of MtnPay
25:40 - Builders TJ admires
27:18 - Where to learn more about MtnPay
Full Transcript
Brian (00:06):
Hey, everyone and welcome to the Zeitgeist, the show where we highlight the founders, developers, and designers who are pushing the Web3 space forward. I'm Brian Friel, developer of relations at Phantom and joining me today is TJ Littlejohn. TJ is the founder and CEO of mtnPay. A Solana API for payments. TJ, how's it going today?
TJ (00:24):
What's up, dude. Thanks for having me on.
Brian (00:27):
Thanks for coming on. We're real excited to give you guys a little bit of spotlight here. You guys have built some great products that have integrated with Phantom and some really cool ways. Before we dive into all that, do you mind giving us a little background on who you are and how you became to be building on Solana?
TJ (00:42):
Yeah. So like you said, my name's TJ. Background's just as a developer historically, I'm an iOS developer. I did that in college, was really into hackathons, after school went out to SF and worked at Apple doing iOS development there. Kind of wanted to do something a little more impactful, joined some startups, found Solana maybe at the end of last year, I noticed there was an opportunity to build and I couldn't ignore it. There was a lot of foundational things popping up. I think Phantom had just got going within the last couple months. And NFTs were usable, but there was still a massive vacuum for other things and so it kind of jumped in and exploring what to build really.
Brian (01:23):
That's awesome. And so a lot of people when they hear the name mtnPay, the first thing that comes to their mind is mtnDAO. And for those that don't know, mtnDAO started originally as this small little co-working space in Salt Lake City for some Solana builders to come together. Now it's evolved, let's say it's basically a movement. It's kind of the epitome of Solana developer culture in a lot of respects. What is the kind of founding story there? How did you get involved in mtnDAO? And what was the original idea for what is now mtnPay?
TJ (01:54):
Yeah, mtnDAO like you said, it's a co-working space. Month long co-working space in Salt Lake City. I got involved to go there because of my friends that brought me into Solana. I had a couple good friends, Edgar and Barrett who were into this space a lot earlier than most people were. And they were just some really cool builders and had a lot of great friends that were developers and entrepreneurs. And so I think they had done this the year prior where it was called the mountain compound. And they just had a bunch of people come out, they rented a ski house and just kind of built for a week or so. And then naturally it was like, cool, they were going to do it the next year, and so that was what became mtnDAO.
TJ (02:32):
And everyone was invited, I was friends with them, I was definitely going to go. Kind of popped off and a lot of people showing up. And so we were there in this co-working space and there was just ... I was looking for stuff to do. And it was a random, fun idea to build a point of sale. Solana Pay had just came out, the spec and with being bored I was reading it. And it was a night before a party and I was grabbing a Red Bull because I was really tired and there was a point of sale there that was a self-service checkout thing. We were like, what if we just rebuilt this and added Solana Pay? And that was it. There wasn't much more past that, and it was oh, we can make this for our friends for the full month. And we jumped all over that.
Brian (03:13):
That's awesome. Starting small, now it's basically this whole movement. You guys have a couple really great integrations, but with the NFTs I saw, being able to just push transactions on the end users and Phantom. I guess before we dive into all that a little more, just to talk a little bit more about mtnDAO, you mentioned Edgar and Barrett. I believe that's Edgar and Barrett from Cipher Protocol and Margin Five. Is that right?
TJ (03:33):
Correct.
Brian (03:34):
What were some of the other builders there? Do you still keep in touch with folks who were in that early house and how has that kind of scene evolved on Solana?
TJ (03:42):
It's crazy. There's been so many wins that came out of that month. Nick from Cronos was there. They're an incredible project and he ended up winning the Riptide Hackathon. My friend Jeff spent the month there and he's been experimenting with a bunch of different Defi opportunities since. Cavy, now works at Genesis Go. I know that John now is at Coral. I don't know if there was any correlation of him up there, but just shows how sick we build, he was just hanging out there all month. All the people from Cashmere was there. They were awesome to have around. Jeremy Cardinal, literally everyone. I know [inaudible 00:04:29] came through the whole time, VCs like Alex from Delfi or Cal Samani was there. Just the raw crew, you know?
TJ (04:36):
So that was I think really cool and inspirational and you're around those people and it just makes you want to be better and elevate yourself and be around some sick builders. Mika, I think a lot of the Phantom people came in through too. I think that was the first time I met CK. And I think honest, meeting CK there enabled a lot of the mtnPay stuff because I had this open line of coms just to pester him when Solana Pay was coming out. The new versions of Solana Pay were coming out like dude, I need this. When's it coming? When's it coming was able to work in parallel. Ended up if I think getting connected to you through that probably, was pestering you a bunch. A lot of crazy opportunities came through man mtnDAO.
Brian (05:16):
Yeah. I wouldn't call it pestering, but no, it's a super organic developer movement here. It's something that definitely originally drew me to Solana in the first place. Just the positivity and the sheer number of people just show up to a house in Utah and start hacking on things. So you mentioned the founding stories. You're sitting in this house in Utah, there's this square terminal where you could check out maybe buy some snacks, buy some Red Bulls late at night. Was it just you who was working on this idea? How did this come together? You mentioned that the Solana Pay spec was released that day. How did you go from, Hey, I see this essentially a white paper, maybe a GitHub to actually deciding this was something you're going to actually spend some time on?
TJ (05:53):
Yeah, totally. So had the idea randomly. I was reading the spec early in the week, knew about it. Literally what you said was at the point of sale, like had the idea like, oh, it'd be sick to rebuild this, but add Solana Pay. But obviously there's more that kind of follows up there. That was on Friday night. And so my boy Scott was in town. We kind of knew we wanted to go out Friday, go skiing Saturday and then started hacking on some stuff because he was there through I think Wednesday maybe? And so we had floated a couple of ideas around on what we could possibly be working on. And that was just one of them. And then we ended up on Sunday, at the shop, which is the co-working space that mtnDAO was at.
TJ (06:30):
We probably were whiteboarding five to six ideas dealing with stuff with Game-Fi or tokens for Twitch creators or ... It's funny, like one of the early ideas was like tokens for merchants. And then another one was just this one of doing the point of sale for this. And we're like I feel this is the most digestible and that we could hack together and it fit our skill sets. I'm an iOS developer. Scott's done some stuff on the back end before. And so he could handle a lot of the integration, the square stuff and I can do the Solana front end stuff and it just made sense. And so we grinded it, we stayed up super, super late, most nights, but it was a 48 hour turnaround because we also didn't even start it on Sunday, like that actual idea until five, six o'clock. I actually looked the other day because I was going back to some of the mtnDAO tweets. We did it on February 8th. Which was sick. So a lot of it came out on the first. So it was really fast.
Brian (07:27):
And no inside knowledge to the time right? You basically found out the same time everyone else did.
TJ (07:32):
Yeah. No inside knowledge, but I think Jordan from Solana Pay will boast that there was no insider knowledge. The repo was public since November. So anyone could have known.
Brian (07:43):
Alpha hiding in plain sight there.
TJ (07:45):
Exactly. Obscurity by just putting it on GitHub. I did feel I had insider knowledge afterwards though. I remember Nick from Cronos, it was super on payments now, was super on my radar, we had that video go kind of viral. Then Nick from Cronos came back from the Seattle Hacker House and I think he met someone there and learned about the transaction request back. And I remember in between that is when I met CK and I was like, dude, if we can figure out how to make this work for any transaction on Solana, it's over. This changes everything. And I was so sure of that, but I had no idea how you could do that. And then I remember Nick coming back and showing me the spec and I never felt like I had such insider info in my life. But again, it was just probably on the GitHub. But man, I remember reading it and just being like, this is different. This changes things.
Brian (08:41):
Yeah. No that's super cool. I remember that video you mentioned, I think it was at three in the morning, you guys filmed it with Scott and he's there checking out his Red Bull on mtnPay. I think you guys even had somebody who was a governor or a Senator that came by and checked out with it. Who was that?
TJ (08:56):
John Curtis. I believe Congressman John Curtis. That was fun too. He came another time. We had a couple of minutes in between when he was meeting with people privately or something or had a small round table with some folks. And when he was going to do a larger chat and so just got to get down with the stuff to him, which was really cool because that's a lot of what mtnPay going to do in the near term is just demo what's possible. It's kind of like a chicken and the egg thing. And so I don't think there's a massive surplus of people waiting ready to pay, but I think we have an opportunity to demo and move conversations along. And so that was just a really good example of that is how we can show the decision makers, what is actually doable and what things look like and feel like.
Brian (09:42):
Yeah, it's kind of like you said, the whole protocol could be sitting there on GitHub for anyone to go see, but there's very few people in the world who are going to dig into that and actually build something. And you guys are actually building products that makes this tangible, make this real, you get someone like a Congressman to come in and actually use it and buy something for real and have it show up in Square. And as a line item ran right alongside using a credit card or something like that. You hit on a couple things earlier. You mentioned that originally at this point of sale integration, but then the second evolution of this spec came along that enabled transaction requests. And so you guys have built some really great products around that, how would you describe what mtnPay is today holistically?
TJ (10:23):
At our interface layer, we're an API, right? So we want to be able to be pinged by anyone that has an internet connection and can make rest API calls. On the back end what we're doing is we are doing the grunt work of integrating with a bunch of different protocols and tying their functionality together for use cases that make sense to consumers. I want to pay for this, please build the transaction that does that. Or I would like to use a coupon that I have in my account and get a discount on this item I am purchasing or it doesn't necessarily have to be payment stuff. Like you said, we have some cool stuff we do with NFTs. For another example, we integrate with Magic Eden this week and have a feature where you can have a QR code that sweeps the floor of a given NFT collection. And that was done by using like of their APIs that maybe weren't intended to be used exactly together. But then we did that and then we can open that up for other people to use in whatever way they want to compose with this product.
Brian (11:31):
Yeah. And so this is all leveraging at the end of the day that Solana Pay spec and that transaction requests are part of that. I feel like the Solana Pay is a bit of a misnomer at this point because, originally, it's a similar evolution you guys have took, starting out payments point of sale. Now you're able to scan a QR code, sweep the floor. I even saw that Greg, one of the mtnPay team members, actually printed this QR code and put it on a shirt and has been walking around. So you can scan a shirt live in person and sweep the floor. It's pretty cool. What are some of the things that you think people aren't maybe thinking about when it comes to transaction requests? Most people know transaction requests from either just a tutorial or sending someone an invoice or something that they can pay. You guys I think are pushing the envelope a little bit here. What are some of the things that you mentioned that the sweeping the floor, what are some others that you have in mind here?
TJ (12:22):
I think the mental model shift that you need to hit is that a transactional request can literally just do anything you can do on Solana. So anything dApps are doing today where they're building transactions, you can do that with transaction requests. But the cool thing is you can do that on a servered environment. And so you start to separate the entities that are involved, the group that's building the transaction doesn't have to be the group that's generating the QR code, which doesn't have to be on the same device that the user is trying to grab the transaction and sign it. When you start to break up this stuff, really cool interactions can happen. And so when I had that unlocked from seeing the spec, my mind was just running and I was like, what cool things can we do with this?
TJ (13:10):
One of the really early ideas that we had, and a lot of it centered around what can we do that's like fun here? What do we think is unique and whatever, and so one of the really early ideas we had was Degen coin flip. Could we wrap up Degen coin flip and put it on a projector at a party and just have people doing Degen coin flip and do a cool UI. And everyone can just like get hyped when someone wins a bunch of money, that's fun. Or the next idea there was the photo booth we built. Those ideas both came from the Austin community hacker house that happened in March. I wanted to build those out for that hacker house.
TJ (13:50):
But the timing didn't line up with when transaction requests was going to be live in the app store. And so we had to wait on that, but that was really fun. We did the Magic Eden sweeping thing. We've done candy machine minting, just wrapping up protocols. Notice how in here we didn't build any core protocol piece ourselves or even the way to interface with them. We just go on their open source repos and just look at their front end and try to grab the pieces that call into their smart contracts. Then wrap that up in some cool ways. And to me that was a big aha moment, it was like, oh shit, you can do some stuff here.
Brian (14:28):
Yeah. It's pretty unbelievable that you guys have built all this without even writing a single line of rust or deploying your own program on Solana. I think you guys even won the payments track of the last hackathon, is that right?
TJ (14:40):
Yeah. We won Riptide, of the payments part of Riptide, shout out Cronos, Cronos won the whole thing. But yeah, we won the payments track. We were super stoked about that. It's given us a couple of opportunities and some eyeballs, which has been really nice, but you know, it's starting to become old news. Solana summer camps here, I think a new wave of peeps with eyeballs and whatever's going to come up. And so we've just got to keep going, keep innovating, keep building. And we're stoked to do that. Just got to be like, what can we integrate with next?
Brian (15:10):
I think it's a great story though, for all those new builders who are coming up on the new hackathon that you can build this incredible company that does all these different things without even having to get into the whole program side of Solana. There's so much that's already out there. It's so composable with one another, you can do a lot of work just on the client. You can do a lot of work, building APIs, building wrappers around all this stuff that just makes this easier for everyday people.
TJ (15:33):
Yeah. And there's so many developer resources out there now, too. It's getting to a point where it's easier to just look stuff up and some actual solid answers are out there. Some of the resources being yours. I believe I've had that happen recently where I'll be looking for ... We've been trying to do some things onchain. There's some really cool stuff we can do when we start moving the infrastructure onchain, it gets safer and more powerful. And in trying to do that, I came up across a lot of your articles. And so I kind of wanted to shout those out, those are really cool to see.
Brian (16:03):
Appreciate that. It's great to hear they're still relevant after all this time. Some of those might be outdated, so listener beware. You mentioned the photo booth as one of the applications you guys have built. For those that haven't seen it, photo booth is this actual in person kiosk, you have an iPad, you could use any sort of device here, but what it basically lets you do is take a photo just like you would in a photo booth and in a few easy steps, you can mint this as NFT on Phantom Mobile, and your favorite wallet, all seamless, all running on mtnPay APIs. What was the inspiration for the photo booth? How did you guys originally even come up with this idea?
TJ (16:39):
I think it was a lot of things. I think people talk about, I don't know, there's that thing of founder fit or whatever, or hindsight's always 20/20 or whatever. But there were so many little things that had happened to me from January to March to get to the photo booth happening that it's crazy that it actually did happen. So the photo booth idea came about when I was thinking about what stuff can we do with Solana Pay? I think pretty early on, I was like, oh, you could mint NFTs. I had done stuff with ... Back in January, my passion project was a custom candy machine contract where instead of minting NFTs that were directly linked to a JSON file, that was on some CDN.
TJ (17:31):
I was going to point it at a serverless function. And then that serverless function was going to query onchain data and then return JSON back to the user there. And so would, it'd be this cool, dynamic NFT based on onchain data. And so that was the first time I learned serverless functions, which I needed for mtnPay the photo booth. That was the first time I was digging into the candy machine code. And then thinking about fun stuff I can do, it went from the Degen coin flip on the wall to an iPad up on the wall that took the picture, uploaded it, and then you could use Solana Pay to mint the NFT and all of that was only possible because I had those different pieces of context. And then the last thing being that my friend Nick just dropped the transaction request back in my DMs.
TJ (18:22):
And I don't know if I would've run into it other than that single moment. And so that was kind of how the idea started to come about. And then we built it out. It's actually funny, I was actually focusing super, super hard on the point of sale app, but I thought that was the thing we were going to do. And so I was trying to put all of my time there, we were trying to do a merchant pilot and get IRL merchants onboarded to this thing. So I felt I had so much to build, but I knew that the photo booth could be this fun thing. So at first I thought about just having someone else build it, I was reaching out to some people asking for grants or like, Hey, do you want to sponsor this thing?
TJ (19:01):
And I could get like 3000 dollars from someone then give it to a developer friend to help build it. And I could guide them how to build it, but I couldn't source any money. And so I just had to use one or two nights of my own time away from mtnPay and just build this thing. And then after I built the first version of it, I was like, oh shit, this is kind of crazy. The idea is one thing, but when you actually get to use it, I don't know again, I feel it's kind of like a mental unlock for some people myself included. It was like a big shift.
Brian (19:37):
Yeah. I would definitely say it's a bit of a light bulb moment. I think the first time I saw it was Solana Miami, I think you guys brought it out and I think it was the first time you guys had also bought this inflatable cover around the photo booth.
TJ (19:50):
The marshmallow.
Brian (19:51):
The marshmallow. Yeah. Since then, I think it's gone through a few different evolutions. I've seen some cool plans in the works too for how you guys thinking of upgrading this thing. But you know, personally, I love it. We've brought it around at Phantom to a couple different places. I know we sponsored at the hacker house in Austin and then on the Degen party and there's a couple other places as well. It's been a huge hit, we see even folks who maybe aren't necessarily crypto native. It's a great excuse for them to download Phantom, download a wallet and scan this thing, submit their first NFT, especially because a lot of folks don't even know but with Solana Pay transaction requests, this can be free mint to users, right? You guys can essentially make this so someone can just download a wallet, scan a QR code, and then next thing they know, they have an NFT in their wallet without paying any Sol.
TJ (20:34):
It's crazy. The architecture of Solana is very composable or gas has to be paid, but it doesn't have to be paid by the user that's minting. I think that's one of the problems honestly, or not the problems, but one of the challenges is a wallet, right? Phantom, it's such a productized thing. I think Phantom's done an incredible job productizing this wallet to be easy to use. And it makes sense for consumers and holds this stuff. But reality, a wallet just is your private key. It's the software that holds your private key and then it's the actions that a user can do when the private key exists. And so you think like, oh no, I'm sending this Sol, or I'm minting this NFT where really, it's an action is just requires my signature and the signatures here so I can do that. And so as part of our infrastructure, we can sometimes pay for NFTs, we can pay for rent, we have wallets on our backend that we can sign for transactions. There's really, really cool stuff there. So anyone out there listening, that's doing stuff for the Solana summer camp, you have questions on how that works. Please reach out. Happy to walk you through that. You can do cool stuff though, I guarantee I haven't thought of.
Brian (21:45):
I love it. That's awesome. You hit a lot here with transaction requests, what's capable across the Solana protocol, also the founding story of mtnPay really was in this point of sale app. What do you think is the future of payments on Solana? You mentioned that we're kind of in this still experimental phase. What do you think are some of the next big hurdles that we as an ecosystem need to conquer together to make payments more real?
TJ (22:10):
I think it's a couple things. I think a lot of things have to happen for payments to go to scale. I think the first thing that has to happen is something like mtnPay has to exist and we have to have infrastructure in the hands of the merchants that enable them to accept non-custodial funds that is not locked into any single platform. To me that's a given, which is why I'm so stoked to be building this. But I think there's a lot of other pieces. I think protocols just in general have to exist. I think novel ideas have to be created and people have to build them out stuff like dialect, right? Where it's just a raw messaging protocol. Stuff like Cardinal, where they're adding functionality on top of NFTs for anyone to use. Really cool lending protocols need to exist.
TJ (22:59):
And then our job is to kind of grab those and wrap those together for product use cases. And then I think just other things totally separate from payments have to exist. I think Game-Fi, to be honest with you is going to be a massive catalyst of payments on Solana going well. I think you need users here that have a balance in crypto for reasons other than payments. And then they can start using those balances for payments as well, which is why I'm so stoked about something like the Saga, because I think it's going to start to get a lot of those early users in the ecosystem doing things that just aren't related to payments.
TJ (23:37):
A lot of times I like to think about it in terms of how Apple, right, the Apple ecosystem's so great because your iMessage with your FaceTime works with your photos. It's how I think like Solana kind of goes, but people get to build the different pieces. And so that's what I think the world looks like if this goes well and it sounds like a fun world. And so I hope that it happens and we're going to do our best to see that.
Brian (24:02):
Yeah. Well, I would say that it's already a fun world here in the Solana developer ecosystem. You know, you've seen both the worlds. You mentioned Apple, but having worked on the inside Apple, they build incredible products, but I haven't seen an ecosystem quite like Solana has where it's just so open. I mean, you mentioned Nick from Cronos, you got the Cardinal guys, all in the same chats, all showing up the same house in Utah. It's a really awesome environment where we can kind of build this composable layer together. If you had to summarize, where do you see mtnPay going from here?
TJ (24:33):
Yeah. We're going to keep leaning on our infrastructure piece. We want to compose with more protocols, get some integrations. We have stuff in the pipeline with Dialect. We've spoken with the Cardinal folks a handful of times. I think we can compose with them without being super hands on with them and so we're going to do that in the near term. We're in a big integration phase, try to bring these things together. And then the other side of that is the distribution. So we have some cool distribution paths that we're not ready to talk about just yet. That's kind of both sides here that we need to be super careful about. It's making sure we have a really cool set of infrastructure, but how can we go and get that infrastructure out there to as many people as possible? And so that's the real two focuses that we have.
Brian (25:15):
Well, I look forward to inviting you back on the pod or you can unveil a little more news there about the distribution and all you guys are up to. TJ, we ask this of every guest at the end, we want to know who is a builder that you admire in the Solana ecosystem and I got to say that our last guest, Steven Laborer, gave you a shout out. Everyone knows your energy and the space is infectious. But everyone listening wants to know who is a builder that you admire in the Solana ecosystem?
TJ (25:39):
Can I just say Steven back? No, I'm just kidding. Love Steven. That's not who I'm going to shout out today. I'm going to shout out, I don't even know his last name, but his Twitter name's Jacob dot soul. Jacob's a sick developer. Have you met him before.
Brian (25:52):
Yeah, I've interacted with him on Twitter a little bit, but I don't think I've met him in person.
TJ (25:55):
He is really cool. He is an incredible developer. He is a lot of fun. He's part of the photo booth story where initially we were using candy machine for the photos, for the photo booth and Solana wasn't doing great that day. And so my program wasn't deploying to main net and so an hour or two before we went live, he sat down and helped me rewrite a bunch of the minting stuff for the back end. And I had interacted with him at mtnDao, but didn't know him super, super well. And so he's just a super giving dude, super talented. He's out there building. Have you seen Feeble Labs yet?
Brian (26:33):
Yep.
TJ (26:33):
The lambs or whatever. You have to interact with their Twitter or your NFT dies. It's incredible. That's where you get my respect is if you're out there doing something creative with no ask, right? They're giving these things away for free. They're doing Twitter spaces all the time. He's just one of the real, actual, creative builders out there. So I have a lot of respect for Jacob. I look up to him a lot.
Brian (27:01):
That's awesome. I think that encapsulates the spirit of Solana, pushing things forward, trying out new tech, experimenting, and then also being really open and helping others at the same time.
TJ (27:11):
Totally, totally, totally.
Brian (27:13):
TJ, this is really great. Thank you for your time. Where can people go to learn more about mtnPay?
TJ (27:17):
Yeah. So go to at @mtnPay on Twitter. M-T-N-P-A-Y. And you'll see that there. Or you can follow me TJ underscored Littlejohn, because I talk about it a lot as well. Those two spots you'll find all of our other stuff from there.
Brian (27:31):
Love it, TJ Littlejohn. Thanks for coming on the show.
TJ (27:33):
Dude, thanks for having me. Appreciate you. It was a lot of fun.