Inspiration

Our inspiration for Nexum came from recent news and discussions about content creators facing delayed payments, payment disputes, or not receiving payment after completing agreed work. We realised that similar issues can affect freelancers and other digital-service workers, especially when work is arranged independently rather than through an established platform.

This creates a trust issue for both parties. Freelancers want assurance that they will be paid after completing their work, while clients want confidence that payment is only made when the agreed work and quality has been delivered. In many cases, project requirements, deadlines, deliverables, and payment terms are also spread across different chats, documents, and payment platforms.

This led us to develop Nexum, a milestone-based payment platform where project terms are agreed upon upfront, funds are secured before work begins, and payments are linked to the completion and approval of individual milestones.

What it does

Nexum provides a shared platform for clients and freelancers to manage project agreements and milestone-based payments.

Each project is structured around an agreement containing milestones, deliverables, deadlines, acceptance criteria, and payment amounts. The client secures the project funds before work begins, and the corresponding payment can be released when a milestone is completed and approved.

Project submissions, approvals, changes, payment activity, and disputes are also kept within the same workspace. This provides both parties with a clearer record of the project's progress and agreed terms.

Nexum also includes AI-assisted agreement drafting. Based on a project description, the system can suggest milestones, deliverables, deadlines, and acceptance criteria. These suggestions remain editable and must be reviewed before the agreement is sent to the other party for approval.

How we built it

Nexum uses Next.js, React, and TypeScript for the frontend, with Node.js and Supabase supporting the backend and off-chain application data.

For the payment layer, Solidity smart contracts are designed to operate on Base Sepolia, while a demo eUSD ERC-20 token is used to simulate project payments. Wagmi and Viem support communication between the web application and the blockchain. The platform is also designed to support embedded self-custodial wallets as well as external EVM wallets.

An important consideration in our design was keeping the blockchain component mostly in the background. Instead of requiring users to understand smart contracts and blockchain transactions, the interface uses more familiar concepts such as agreements, milestones, approvals, and payments.

Challenges we ran into

One of our main challenges was understanding Web3 technologies and how they could be applied to our proposed payment system. We had to develop our understanding of blockchain transactions, wallets, tokens, and smart contracts, as well as how these components could interact with a conventional web application.

Designing the smart contract logic was another challenge. We had to consider how funds should be secured, the conditions required for a milestone payment to be released, and how refunds or disputes could be handled.

We also had to consider the usability of the platform. Although blockchain provides useful properties for handling payments, exposing too many Web3 concepts could make the system difficult for users who are unfamiliar with the technology. This influenced our decision to keep most blockchain interactions in the background.

Accomplishments that we're proud of

We are proud of being able to develop our initial idea into a detailed product concept and interface mockup within the hackathon period.

Through the mockup, we were able to design the main user journey, including creating an agreement, defining milestones, securing project funds, submitting work, reviewing milestones, and releasing payments. This allowed us to better understand how the different components of Nexum could work together as a complete platform.

We are also proud that we were able to explore the use of blockchain and smart contracts for a practical payment problem, while keeping the proposed user experience relatively simple for users who may not be familiar with Web3.

What we learned

Developing Nexum gave us a better understanding of Web3 technologies and smart contracts, particularly how they can be integrated with a traditional web application.

We also learned that blockchain should not be introduced simply for the sake of using the technology. The project first required us to define clear rules for milestones, approvals, payments, refunds, and disputes before considering how smart contracts could support these processes.

From a design perspective, we also learned the importance of separating technical complexity from the user experience. Users should be able to understand how the payment process works without needing detailed knowledge of the blockchain technology supporting it.

What's next for Nexum

The next step for Nexum is to continue development towards a complete end-to-end milestone payment flow, including further integration between the application and its smart contracts.

We would also like to further develop the dispute-resolution process, improve the AI-assisted agreement drafting feature, and introduce additional collaboration features for clients and freelancers.

In the longer term, we hope to test Nexum with actual users to evaluate the usability of the proposed workflow. We would also explore support for additional payment methods, blockchain networks, and stablecoins to determine how Nexum could better support cross-border freelance and digital-service work.

Built With

Share this project:

Updates

Submission history