New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

How to Decentralize Credit Cards From Charlie Kim - Rain

Ethereum DenverThu, Oct 9, 2025, 12:00 AM

Rain offers a platform enabling the issuance of Visa credit cards backed by collateralized on-chain assets. Bridging on-chain assets to real-world applications is complex, as not all permissions are controlled on-chain. Rain takes a unique hybrid approach, combining on-chain mechanisms with legal safeguards to protect users’ funds from misuse.

Transcript

[Music] hello everyone this is Charlie Kim from rain I'm the founding blockchain engineer today I'm going to talk about how to decentralize credit card here's the quick outline of what I will cover today what we do in rain and the challenges of building a blockchain uh product across the onchain and offchain how offchain component can introduce centralization on way to decentralize those components and finally some ideas for the Futures so rain is a vaa credit card issuer that makes it easy to off frame your crypto asset for everyday spending traditionally converting crypto to Fiat has been slow and combersome you have to send your crypto asset from wallet to the central exchange and then from there to your bank account which can take up to like three to four days but with rain you can skip the hassle and use the crypto to credit card right away our goal is simple to make spending crypto easy as crypto adoption grows so does the need for for seamless daily spending people wants to use usdc and avac or E any kind of cryptocurrency for the everyday purchases they can use it for groceries coffee Netflix medical bills can't be anything crypto doesn't have to be just an investment asset it can be your blockchain wallet can act more as a checking account so to say so there's an important context where this is coming from the one key factor is the rise of stable coin many people around the world suffer from deflation and making the we wealth preservation itself is really tricky for them for them USD offer stability and stable coins provide an accessible way to own USD without needing a bank account and owning a bank account can be a trouble St for many people as well there also a low self custody you don't need to worry about your local Bank Run plus therefore an affordable and efficient way to transfer the fund especially the across the borders but it's not just about stable coin rain supports also volatile tokens this token play a key role in defi by driving the speculation and the higher strategy um with rain instead of converting your volatile token into stable token before you're spending you can use the token as it is right away rain provide credit card rail rail to uh a wide range of pro uh our partners enabling their users to spend cryptocurrency directly from their platform our partners include nve a payment processor expanding in their product into blockchain Avalanche probably you all know take notes a payment solution for Freelancers in Latin America NPC Vault a multi wallet provider and there are many more companies have already launched it and as we speak there are many people working on to launch the credit card with rain and we recently launched avalanch card it's a physical and virtual card that lets you spend ax usdc usdt and W ax and you can use it for anywhere the VJ is accepted the app makes it easy to manage your fund and track your spending you can add it to Apple pay or Google Google pay and just quickly tap to per for your purchases but it can be a game changer for ax holder especially for like everyday purchases yes all right here's how rain Works in a nutshell so when a user joins rain they receive physical or virtual credit card at the same time we deploy collateral contract for them to own user can deposit their crypto asset from their wallet into the ceral contract and the spending limit of the credit card is set based on the value you put into the collateral asset collateral contract and from there user can spend anywhere the VIS is accepted uh just like any other credit card and here's the challenge to make rain card work we need to coordinate both onchain and offchain components together while the asset exists on chain the credit card activity happens offchain and the card Ledger is stored in a offchain database while the credit card balance payment occurs onchain a key challenge is that onchain component is hard for it to to access the offchain data due to its technical limit of the blockchain or it can be just because of the Privacy concern this creates the gap between onchain and offchain systems integrating makes it harder because of this this challenge isn't unique terrain actually it's a common issue when it comes to when you want to adopt real asset into blockchain um to close the gap between onchain and offchain the product needs to build strong bridges that ensure seamless integration we already see some example of this it can be like Central exchange for the um exchange your crypto to Fiat price feed Oracle the brid exchange rate into onchain tokenized asset that breach the traditional Finance with blockchain representing USD US Treasury and even real estate sometimes and US rain that Bridges crypto asset that brid crypto asset into our credit card but there's if there's only one bridge for a product when a single entity controls the only Bridge how can we trust this how can we design a system that ensure the product remains secure and uncompromised mostly and in a most more decentralized way can we make it more de decentralized that's been one of our biggest question and we're trying to solve let's get into what happened behind the scene in this example our user has $100 amount of usdc and they spend $10 by using the rain credit card eventually rain needs to settle that $10 with Visa by leveraging users collateral assets this require onchain and offchain components to work together and we want to do this in a decentralized way while maintaining the usurous privacy well here's the idea first we need we need credit card Ledger on chain and it has to be trustworthy this data shouldn't be created by rain alone it should be it should come from a third party for a greater transparency think of it like an oracle but uh the one that custom build for our own purposes to solve this we implemented balance statement it's basically an onchain representation of a user's credit card balance a third party publishes it daily or monthly ensuring the transparency for privacy reason it only includes the total balance total spend balance without exposing the individual credit card transaction details and most importantly only the amount in this statement can be liquidated is basically a device to prevent over liquidation and ensure user fund remains secure yeah here's the full flow how the balance statement is utilized or user deposit $100 into our Cal contract and they spend $10 using their R credit card now uh we have $10 due balance in the rain offchain Ledger um this is where the third party comes in uh they verify the balance they ensure the accuracy and then they publish $10 statement on chain with the statement in the smart contract rain can now start the liquidation process the liquidation ultimately uh send $10 to V settlement account I mean to sum up the users $10 was transferred to visa and by involving the third party the M the process became little more little more decentralized now let's talk about withdrawal user should be able to withdraw their unspent fund from the collateral contract the maximum withdrawal amount is calculated by uh subtracting the credit card current credit card balance from its own chain value um but here's a challenge unlike the the balance statement the current credit card Ledger still exist in onchain database well that's because credit card transaction needs to be recorded in real time and must also remain private I'll I'll Circle back into this soon so for user to withdraw their unspent fund from collateral contract the maximum withdraw amount is calculated based on The offchain Ledger and if the requested amount is within the allowed limit then either rain or the third party they can issue EIP 712 signature the sign signature which includes the amount they're withdrawing um it authorized the user to call the withdraw function in the smart contract and here uh allowing by allowing the third party to issue the withraw signature R avoid being a single point of failure now let's dive deeper into why we keep the Ledger of chain so when a credit card is used rain solver must authorize or decline the transaction within a half second writing to offchain DB like postgress can take the few millisecond but writing that into blockchain and making it waiting for it to be finalized and available in all different node can take more than one second uh because of this dispute limitation we cannot update onchain Ledger completely before authorizing the car transaction if we instead update the leder asynchronously so to say authorize the car transaction first and then update the card Ledger on chain later it creates a window where a fraudulent user can guess in and they can withdraw the phonec before the ler is updated well that said this should be a solvable problem in the near future and yeah with the faster blockchain we should be able to bring more of this process into blockchain here's some idea for the statement we haven't implemented yet but we have some idea going on that right now the third party published the statement act more as an auditor but we're thinking that maybe maybe the service providers who would get paid from the user eventually they can publish their own statement to the own chain directly imagine a future where VJ s publish credit card Ledger on chain and since they're the source of Truth when it comes to vaa credit card already um online services like Netflix or AWS they can publish their own monthly statement to on chain and in the retail store like POS terminals they can public statement on chain mortgage lender post their monthly statement freelancer can also issue their invoices directly on chain well this kind of self-publishing model eliminates the middleman reducing the the centralization risk making the transtion more transparent and efficient wrapping up here's the picture of Pittsburgh where I studied um it's known for its many bridges there are so many bridges all over and it got me thinking as the real real world asset ecosystem expand on blockchain we're going to see more and more bridges built connecting onchain and offchain World integrating these third party Bridges together into the product and just being the bridge itself and it's going to introduce more trustful and distalized ecosystem naturally I think well thank you all for listening rain is live on etherum polygon arbitrum optimism Avalanche base CK sync and we just launch it on Solana our first non AVM token and we're expecting expanding soon to Stella sui say Aptos andron if you're interested in issuing your own car product with us feel free to reach out at support at rainc cars. exz thank you so much for listening [Music]

Automatic transcript — names and jargon may be misspelled.