Cross-chain payments app with ENS integration powered by Arc and Circle
In the current web3 scenario, there are multiple chains, each having its own special functionality but all have the ability to make payments. And that's where the experience fragments. Even though I have funds on a particular chain, the person to receive the funds wants it on a different chain. I will have to use a bridge, wait for bridging, make sure I have enough gas on the receiver's preferred chain and then pay. But why so many steps? We tackled this specific problem. We built a cross-chain payments app that allows a person to do cross-chain payments with ease. And not just simple payments, but even autopayments, split payments, request payments and even adding contacts/saving addresses. All features that you would expect from a web2 app. We have even made the UI clean and simple to avoid distractions for users. You are also able to look up the ENS details of any user. We have also setup a relayer so that the receiver does not have to worry about claiming the funds. Receiver directly gets the amount, its gasless and automatic for the receiver.
The frontend is built using Nextjs, backend using Express, both in typescript. Our app mainly uses Circle's CCTP, ARC, and ENS as its core technologies to function. CCTP makes cross-chain payments really easy. Users are able to pay from any chain to any chain. While Arc acts our features hub; autopayments, split payments, request payments, all happen on Arc. ENS provides the option for users to easily get someone's address and preferred chain to pay on. We used foundry to build our contracts which were deployed on Arc for autopayments. We also used mongodb to be able to provide a fast web2 experience using a hybrid model. Being able to save addresses as names is a very friendly feature as it removes the headache of remembering/looking up the addresses of users. MongoDB also stores payment requests, histories, etc. ENS and contact both work together along with address strings, so users can enter whichever they can remember when making payments. Every technology and framework used makes sure that users get the best experience. Low fees on cross-chain transfers, 0 fees on same chain transfer, and gasless + automatic receiving, and so much more. All these factors are possible due to the way the frameworks are used.

