
DirectPay
Instantly convert your stablecoins to Naira with zero hassle, no KYC, no delays, and real-time updates, all through an intuitive Telegram bot.
Demo
About
Why are you participating for Based Africa? As a young freelancer, I'm driven by a passion to create real utility that impacts people's lives. I'm participating in Based Africa because I believe in the transformative potential of blockchain technology, especially within Africa. I see a huge opportunity to solve real-world problems, such as lack of financial inclusion, through decentralized solutions like DirectPay. This platform allows me to contribute to the growth of my region by creating a seamless way for people to access decentralized financial services all onchain, and I am excited to be part.
How it's made
What challenges are you focusing on? In Nigeria, p2p services are often sketchy and unreliable, exposing users to potential scams, delays, and unsafe transactions, where bad naira (stolen funds) are spread accross. Many young Nigerians are onboarded into Web3 through tap-2-earn (e.g NotCoin) platforms on Telegram, drawn by the promise of earning crypto through simple actions. However, the majority of these people are young and they lack the proper identification needed for traditional financial services, making KYC processes a barrier to their participation onchain. These platforms, while offering an entry point into the digital economy, don’t provide a sustainable solution to financial inclusion, as many participants face difficulties in converting their digital assets into fiat safely, and they remain underserved by the limiting systems out there. How does your submission address this challenge? My submission, DirectPay, directly addresses the challenges of these unreliable P2P services and the severe lack of financial inclusion in Nigeria. DirectPay eliminates the risk of scams, delays, and unsafe transactions by offering a transparent, semi-automated solution that converts stablecoins into local currency (Naira), which is deposited directly into users' bank accounts. By focusing on the young, unbanked, and underbanked population, many of whom are active in the Web3 space one way or the other but lack access to proper identification for KYC processes, DirectPay empowers these individuals to participate in the digital economy without the barriers posed by the conventional p2p platforms. Users can create a wallet, link their bank accounts, and receive payments in Naira instantly, all within the familiar interface of Telegram. The potential impact is substantial: DirectPay can provide a safe, reliable alternative to sketchy P2P systems, helping to onboard more Nigerians into the crypto space with confidence. Additionally, it fosters greater financial inclusion by offering an accessible platform for those without access to traditional banking services, addressing both the need for safer transactions and providing a much-needed bridge between the digital and traditional financial worlds. Challenges we ran into Throughout the development of the DirectPay bot, I encountered several hurdles, both technical and non-technical. Few of which are: 1. Webhook Errors for Deposit Confirmations: One of the most frustrating issues I faced was with the webhook notifications. When users sent tokens to the generated wallet, the webhook often failed to notify the admin or the user about the successful transaction. This created confusion and delays in processing deposits. Solution: After thorough debugging, I integrated more advanced error handling and logging mechanisms, ensuring that both users and admins received accurate, real-time notifications for deposits using blockradar's API. By addressing these issues, I was able to make the bot’s notification system far more reliable and efficient. 2. Handling User Input Errors During Bank Linking: Another challenge involved was ensuring the smooth linking of bank accounts to wallets, because users sometimes entered incorrect, abbreviated or unsupported bank names, which caused the process to fail. Solution: I implemented an alias-based bank name matching system, allowing users to enter variations of bank names (e.g., “GTBank” or “GTB”), which the system would recognize and match with the correct bank code. This improvement greatly enhanced the bank-linking process, reducing errors and increasing user satisfaction. 3.Persisting User States After server redeployment storing user states and ensuring that they persisted even after server redeployment was very difficult, because telegram bots are stateless by nature, meaning every time the bot server restarts, all active sessions and states get lost, and i must make updates which will require server redeployment Solution: I overcame this by integrating Firebase Firestore as a persistent data store for user states. I made sure to carefully design the user schema in Firestore to store all vital information.