Initiation Phase
Last updated
Last updated
Links
WebsiteThe Initiation Phase is the foundation of the escrow process. It ensures that all necessary details are captured, roles are assigned, and conditions are clearly defined. This phase lays the groundwork for a secure, transparent, and efficient transaction.
Participants and Roles
In the initiation phase key roles are assigned to specific parties. These roles determine responsibilities and actions throughout the transaction.
The roles are:
Milestone Approver: Approves or disputes milestones.
Milestone Marker: Marks milestones as completed and ready for approval.
Release Signer: Approves the release of funds for completed milestones.
Dispute Resolver: Resolves disputes and adjusts milestone statuses if necessary.
Receiver: The final recipient of funds once conditions are met.
Platform Address: An address designated to receive the platform fee.
Parties: Parties are entities (e.g., buyer, seller, platform) assigned to fulfill one or more roles based on the use case. You can learn more about how this can work for different use cases later on.
Other escrow properties configuredin this phase:
Engagement ID
Definition: A customizable identifier that links the escrow to an external system or reference, such as a UUID, Order ID, or Invoice ID.
Amount: The total funds to be held in escrow.
Platform Fee: A fixed or percentage-based fee for the platform’s services, in bps.
Milestones: Defined deliverables or outcomes that are tracked and verified throughout the process.
Trustline: The Contract address of the Token used for the escrow.
Step 1: Configuring Terms
Parties and Address are configured at a platform level. All parties agree on the transaction terms, including:
Deliverables or milestones.
Payment amounts and structure.
Roles and responsibilities.
Step 2: Recording Metadata
The platform records escrow details, assigns an Engagement ID for their own tracking, platform fee, platform address, trustline, and prepares to deploy the escrow contract.
Step 3: Initializing the Escrow
Using the Trustless Work API, the platform deploys the escrow contract with the configured terms.
Upon deployment:
A unique Escrow ID (Contract ID) is generated and returned to all parties for reference. Funds of the approved trustline can be deposited to the escrow ID.
Engagement ID: Order_12345
links the escrow to the platform's order system.
Escrow ID: Generated by the Soroban network as 0xABC123...
.
Roles Assigned:
Milestone Approver: Client.
Milestone Marker: Freelancer.
Release Signer: Upwork.
Dispute Resolver: Upwork.
Receiver: Freelancer.
Platform Address: Upwork (receiving platform fees).
Outcome: The escrow contract is initialized with:
Clear roles and responsibilities.
Transparent milestone and payment structures.
A shared understanding among all parties.
A smart escrow contract is successfully created and ready for the transaction.
Roles, parties, and conditions are clearly defined and documented.
Engagement and Escrow IDs provide traceability and clarity.
All participants have full visibility, fostering trust and reducing potential disputes.
Escrow ID (Contract ID)
The escrow ID is what we are going to use as address to deposit funds in the next phase. Anyone can send funds to an escrow, as long as it is the accepted token (Trustline is set).
Definition: A unique identifier automatically generated by the Soroban network when the escrow smart contract is deployed.
Purpose: Serves as the primary identifier for the escrow contract on the blockchain.