Overview

BitSave is built on a parent–child smart contract architecture designed to isolate user funds, minimise systemic custody risk, and enforce savings behaviour directly on-chain.

At the core of the system is a single parent contract, Bitsave, which acts as the protocol coordinator. The parent contract is responsible for user registration, fee enforcement, protocol-wide accounting, and routing calls and funds. Importantly, it does not function as a long-term custodian of user assets.

Each user interacts with BitSave through a dedicated child contract, ChildBitsave, which is deployed the first time the user registers with the protocol. This child contract becomes the sole environment where that user’s savings are created, tracked, and withdrawn. Users never share child contracts, and there is no global pool in which funds are commingled.

This architecture ensures that:

  • Each user has exactly one savings contract

  • User funds are isolated at the contract level

  • The impact of failures is localised

  • Savings ownership and lifecycle management remain tied to the user

This architecture is foundational to BitSave’s security and scalability model.

Parent Contract

The Bitsave contract acts as the protocol coordinator. It is the primary entry point for users and is responsible for

  • user registration

  • fee enforcement

  • maintaining protocol-wide vault metrics

  • routing calls and funds between users and their respective child contracts

The contract does not function as a long-term custodian of savings. Its role is intentionally limited to orchestration and accounting rather than storage. When a user joins the protocol, they register through the Bitsave contract. Upon successful registration, a new ChildBitsave contract is deployed specifically for that user and permanently mapped to their address.

The parent contract enforces protocol-level fees during user registration and savings creation. Fee amounts are configurable at the contract level by an admin.

circle-info

In the current BitSave frontend implementation, a $1 registration fee and a $1 savings creation fee are applied, both deducted in native network ETH.

Child Contract

The child contract becomes the sole location where that user’s savings are recorded and managed. All future savings actions for the user—creation, incrementing, and withdrawal—are executed against this same child contract.

Each user has exactly one ChildBitsave contract.

This contract:

  • Stores all savings created by that user

  • Tracks principal amounts, maturity times, penalties, and interest points

  • Holds custody of funds for the duration of a savings plan

  • Executes withdrawals back to the user

Only the parent Bitsave contract can call state-changing functions on a child contract.

Last updated

Was this helpful?