Build compliance enabled RWA projects with MultiBaas I William Metcalfe
ETHGlobal·Tue, Dec 9, 2025, 12:00 AM
Join William Metcalfe for a workshop titled "Build compliance enabled RWA projects with MultiBaas", featured at ETHGlobal Buenos Aires 2025! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 🇦🇷 *ETHGlobal Buenos Aires* This workshop is specifically for ETHGlobal Buenos Aires, a 3-day hackathon held November 21-23 at the Centro de Convenciones Buenos Aires, bringing together the most skilled web3 developers, designers and product builders from all around the globe for a weekend-long adventure to advance the Ethereum ecosystem! Watch the full ETHGlobal New Delhi 2025 playlist here: https://www.youtube.com/playlist?list=PLXzKMXK2aHh76O7FfAHPJkZcqTIfYpoyf _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ✅ *Follow ETHGlobal* X: https://x.com/ETHGlobal Warpcast: https://warpcast.com/ethglobal Website: https://ethglobal.com YouTube: https://www.youtube.com/c/ETHGlobal _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _Are you interested in Ethereum development and entrepreneurship?_ 👉 Sign up for the next ETHGlobal event: https://ethglobal.com/events 🎁 Get exclusive access and perks with ETHGlobal Plus! https://ethglobal.com/plus 📣 Want us to throw an event in your city? Tell us where! https://ethglobal.com/city
Transcript
lawabiding tokens. So, what are blockchains good for? This year, stable coins reached $277 billion in market capitalization, which is wild. Even more so than that, tokenized assets have reached $3.1 trillion.
That's a staggering 2.5% of global GDP. The largest holder of Treasury bills is uh Japan, followed by the UK and China. The 18th is actually stable coins. Stable coins hold more US treasury bills than even Saudi Arabia.
So what are blockchains good for? Uh financial applications of course. But uh don't take my word for it. uh there's another wise individual named Vitalik who seems to share that opinion and if you're going to build a financial application uh that's going to focus around tokens. So let's take a quick look at the brief history of tokenization.
Back in the beginning the OG token was uh Bitcoin in 2009. Uh after a small pause, we had Ethereum launch in 2015. And very shortly after that, the ERC20 standard made it easy to create a token uh compared with having to launch an entire blockchain for it uh and ushered in a whole world of uh DeFi and coins and tokens. Uh then a couple years after that, we had ERC 721 uh for nonfgeable tokens. than ERC 1155 for semifundable tokens.
These are all great and were really popular in the DeFi world, but for financial institutions, banks, and industries to use it, there's some other features beyond what those initial standards offered that you might want to include. Does anyone have some ideas about what's missing from let's say ERC20 that you need for a financial institution?
A real world asset. Yeah. Uh you need something to back it for sure. Uh and then what else in terms of the use? Let's say you've attached it to a real world asset uh and you're a token holder uh at a enterprise company.
Uh what are some of the features let's say beyond just transferring uh and holding the asset that uh a bank might want you to have in a token
redemption. Yeah. Okay. Let's uh let's say also what would happen if you uh in uh the traditional banking world you might lose your password and then you can call up your bank and convince them that you're actually you. What happens if you lose your seed phrase, right?
So, let's say, you know, account recovery might be something that you want. Uh, or if uh somebody's stolen funds or run a foul of the law, maybe you need to be able to put a stop on those tokens or stop that account from transferring. So uh the common features around some of the compliance tokens will be things like rules for allowing a transfer or mint. Uh the ability to freeze an account. Uh locking balances like maybe you've uh made a purchase and they need to make sure the funds are available until a capture action is taken.
uh or if you've had them your funds stolen um or you've lost access to your account and ability to get them back. Uh and uh that you know could include or be related to also uh moving like coming in from above and moving funds from uh one account to an other in uh in uh behalf of the uh authorities. So a few of the standards and there are plenty of other standards and token standards but these are a few of the major ones uh 3643 7518 7943. So let's take a look at what some of this uh number alphabet uh means. So ERC 3643 is one of the earlier ones.
Uh it adds onchain identity. Uh it affords a pluggable compliance uh and it's a pretty opinionated standard. It says these are the things that make sense for a compliance token. Uh and uh this is how we build it. 7518 uh is uh a little later standard and that's based around uh ERC155 uh which is the semifable token and it's designed for partitioning assets.
So if you wanted to tokenize a building and there are different types of units and those are going to pay different dividends or hold different properties then it can be broken up. Uh or you might be operating in different jurisdictions like you might need to comply with US law for this set of tokens and uh Argentinian law for another set of tokens. So it can be divided up that way. Uh and then a even more recent standard is ERC 7943. Uh and that's a lot simpler of a standard and it basically just says okay for tokens in this standard they should implement some of these more uh basic features around freezing, locking, having rules around transfers.
We're going to take a look at ERC 3643. It's a ERC20 plus compliance and it's called T-Rex. And maybe or maybe I didn't choose this example because I like uh dinosaurs, but they call it T-Rex because they've abbreviated token for regulated exchanges into T-Rex. You use it like an ERC20. Uh it's based around identity system that uses onchain ID.
It has a modular compliance system so you can add uh different rules for your needs. One neat feature is that uh it will check before you do the transfer so you don't pay gas when doing a transfer only for it to fail. And then it has the usual facilities of recovery uh freezing tokens forcing transfers. It has a concept of an agent. This is pre AI hype.
So it's not an AI agent. It's like a banking agent. So, the authority that can conduct a transfer or or mint tokens. How are we going to launch this token? Well, we're going to use our software, of course.
Uh our core product is called Multibbass, which stands for multiple blockchain as a service. And it offers an API SDK uh and UI uh that helps you connect your application to an EVM chain and build your app faster. It's got a UI that's approachable if you're new to blockchain, but uh it's a full production scalable application for building enterprise apps. I'm William by the way. My co-founder Jeff is here.
You might find him at the booth later. We've been around since 2017. Uh, and we help enterprise companies connect their apps to web 3. So, let's dive in a little bit to the T-Rex standard. It has a few main components.
There's the token itself and then there's an identity part. Uh, the identity registry which is composed of a claims topics registry, issuer registry and a storage contract. And then there's the modular compliance part. To support the ID, you'll need a claim issuer and an identity. Uh, and we'll mock those up with some simple contracts.
And then modular compliance, you can have it or not have it. And we're going to implement a little uh module based on owning a soulbound token. So you could use that for a white list, for example. So, there's the T-Rex part, the main token part, there's the onchain ID part, and then there's a modular compliance part, onchain ID. Not going to go into details here, uh, but it's a concept based around claims.
And a claim could be something like, uh, I'm over 21 or I'm KYCed in this jurisdiction or I'm a citizen of, uh, this country. uh and it's an elaborate uh ID system and then the modular compliance part uh as I mentioned uh it can have zero or more modules uh before you do a mint or transfer it will do a check through the modules that you've added uh and the module should implement a module check and you could use it for whitelists you could use it for blacklists or you could use it for something else so let's do a little demo deploying this on Multibbass. We're not going to go through much of the code, but just show you how to uh set up our deployment uh in our platform and then download the repo and do the deploy and then we'll do some of the minting actions within the multibbass uh UI. So as I mentioned, we use a simple dummy implementation for the identity part. Uh and then we have a a soulbound token and a compliance module for that token.
And then we're going to mint some tokens. You don't have to follow along. I'll show the link later. Uh but this is based on a sample uh app that we use to get you scaffolded uh quickly into an application. It's got a front end and a back end uh and is uh it's a a voting app out of the box, but we've just taken the blockchain half of that, the backend half of it uh and added uh the T-Rex token suite as a subm module.
And so we're just going to use that for configuring the multibass deployment and then deploying the token suite. So, first we're going to come over to console.curvegrid.com and do new deployment. Let's call it E global VA and call it demo.
And we're going to choose the curve grid test net. This is a a private network we run ourselves. It has a faucet integrated so it's easy to get up and running and uh get uh free tokens to use it. And then we'll choose the free plan uh which gives you plenty of facilities to build a simple application. So this is going to create and come back and give you a URL to log in with.
And as soon as this has finished deploying, we can click through here and see our new deployment. Okay. So here it's a plain empty deployment that we've got. Uh so that's the first thing we need. Uh and then we're also going to need a reown uh wallet kit uh project ID.
So let's head over now that we've got here uh to Git and or to the console. So the the repo is here. Uh you can clone that. Uh I'm not going to do that. We actually it's already uh downloaded.
So, I'm just going to uh head over into that. Uh, and then we're going to, it's already checked out, but there's a branch, uh, get checkout T-Rex if you haven't already. Uh, so you can get the T-Rex branch and then you'll do get submodule init submodule update and then you'll run npm install. It's already installed. So I'll just run the uh post install script here which will guide you through the configuration.
So this uh local deployment of the application, it's going to need the the URL, the API key, etc. uh and this will prompt you to uh prompt you to run that or give feed it that information. So we have these things deployment URL uh API key. Uh I'm going to ignore this warning. Uh you won't get this warning because you haven't run it yet.
Uh but uh we're okay to overwrite those. So let's get the deployment URL and API key. So, we're going to come over here to admin API keys, new key, and let's call this uh demo. And we'll make it an administrator key because it's going to go and do the configuration for us. We'll copy that.
Uh oh, first we'll copy the URL. and then the API key. And then let's go and grab the uh reown project ID, uh which is easy to set up. I've already got one set up, so I'll just copy it from there. And what this is going to do is uh configure the system uh set up the parameters for hard hat and the app.
It'll configure the uh core settings on the multibbass deployment. Uh and it's going to generate us a private key here for demo purposes. Obviously keep your private key safe. Don't use your uh normal key for uh doing in the hackathon and whatever you do don't don't commit uh a public key uh or sorry private key. Uh the configuration files are in git ignore so uh it won't deploy them but always check always be very safe with this.
Uh so we've got that and then we're going to head over to the uh blockchain folder. Uh and so this has also uh automatically got funds from the faucet. If you're using a different chain, then you can always go to that faucet obviously uh and send some funds uh to that address. So let's go ahead and do npm run deploy tokendev. So voting dev is for the the other sample and this is for the this T-Rex token suite.
And so that's going to go along and uh deploy all the different contracts for the suite uh in order uh the the token the registry and set all the configuration parameters. You can take a look at that uh deploy T-Rex uh file uh in the repo to see the setup. Uh and we've left out a couple parts which we're going to do manually uh just to show it in the in the UI. While that's happening, uh, let's head over to the deployment. We're done with this API key now and we are going to connect uh, MetaMask so we can use it.
So, we'll switch network here. It's going to prompt you. Uh, it will create a key to access the network here. uh and then it will set up uh MetaMask to use uh our test net. So, we'll just confirm that.
And then we're also going to go ahead and scroll scroll scroll and import the private key that we set up. So, I'm going to come up here, MetaMask account, add wallet, import account, private key, just for demo purposes. And here you'll see under tokens, it'll say zero because it's a fake token and MetaMask updates the UI now, so it doesn't look like I have millions of dollars of ETH. But if you look down here in the uh balance, you'll see the the test tokens that were uh given in the uh deploy setup. Okay, now that we've got that configured, we'll connect MetaMask, choose the account we just imported, connect, and then now we have it available.
So here all the contracts we deployed in that script are now available in the contracts onchain section. So you'll see the topics registry, identity registry, etc. And we'll hop over here to T-Rex token and grab functions. And we're going to try minting a token. Let's mint it to ourselves and give ourselves one token.
A show of hands. Who thinks this is going to be successful? Okay, the half half and uh select the address. Oops, I didn't select. Okay.
So we call this waiting waiting waiting. And I don't know if this is the internet. Don't worry, I still have 38 seconds. Um, let's try refreshing that just in case we've got some wifi issues. Okay, I I think we're not going to be able to go through the rest of this.
Uh, the the the answer was this is going to fail. So, the there are a couple more things you need to do. You need to add an agent uh for the permission to be able to do it. Oh, I just saw it pop up. Uh you need to add the identity in the registry.
Uh and then since we configured the compliance module for this, uh you're going to need the soulbound token uh to pass the the compliance check. You can see that in the repo, you know, or come come talk to us if you need uh any explanation there. I'm just going to jump back uh right now to the wrapup since we are out of time. Uh so just a yeah quick recap. This is the T-Rex suite.
It has the T-Rex onchain ID compliance module. Come on, you can do it, internet. Okay, maybe I'll maybe I won't I won't use the slideshow. I'll just use it in uh this view. So key points uh fintech needs more than just ERC20.
Now uh T-Rex and other standards will uh help you address that and you can use our platform Multibass to build modern tokens. The end. Thank you. We have prizes uh for best tokenization project, best digital asset dashboard, and best DAP on one or more of our uh sponsor chains. We have a booth.
We've got merch uh including this uh bandana, coapps, we give you help and smiles. Uh and here are a couple links uh to the things that uh I just presented. Thanks and good luck.
Automatic transcript — names and jargon may be misspelled.