The EscrowFactory contract is a smart contract designed to facilitate the creation of Escrow contracts within the HUMAN Protocol ecosystem. It allows users to create escrow instances for secure and transparent transactions between job requesters and workers.

Key Features and Components

ERC-20 Token Compatibility

The factory supports the creation of escrows utilizing any ERC-20 compliant token, ensuring a wide range of payment options.

Staking Requirement

Users are required to have a stake in HMT tokens to initiate escrow creation, linking the utility of the platform with the underlying token economy.

Standardized Duration

All escrows created through the factory have a predefined duration, standardizing the timeline for escrow completion.

Ownership and Upgradeability

Utilizes OpenZeppelin's OwnableUpgradeable and UUPSUpgradeable for contract ownership and upgradeable functionality, ensuring secure management and the ability to introduce future improvements.

Escrow Tracking

The contract maintains a counter of created escrows and provides functionalities to query the existence and details of individual escrows

Event Emission

Events are emitted upon the creation of new escrows, providing transparency and traceability of operations.



The contract is initialized with a reference to the staking contract address, ensuring that only users with sufficient stakes can create escrows. Ownership is assigned, and the contract is prepared for operational use.

Escrow Creation:

Users with sufficient HMT token stakes can invoke the createEscrow function, specifying the token address, trusted handlers, and a job requester ID.

  • Can be called by:

    • Anyone.

  • Conditions:

    • HMT stake > 0.

Has Escrow

The hasEscrow function allows checking if a given address corresponds to a created escrow.

Can be called by:

  • Anyone.


Through the UUPSUpgradeable pattern, the contract owner can propose upgrades to the Escrow Factory, allowing for future enhancements and adjustments without disrupting existing operations.

  • Can be called by:

    • Owner.

Security and Trust

The Escrow Factory Smart Contract embeds multiple layers of security and trust mechanisms, including staking requirements for escrow creation, ownership controls for critical operations, and upgradeability for future improvements. The contract's design prioritizes transparency, security, and efficiency, making it a foundational component of its ecosystem for managing escrow processes on a scalable and reliable platform.

Last updated


© 2023 HPF. HUMAN Protocol® is a registered trademark