Deploy
Single Release
/**
* Single Release Initialize Escrow Payload
*/
export type InitializeSingleReleaseEscrowPayload = {
/**
* Address of the user signing the contract transaction
*/
signer: string;
/**
* Unique identifier for the escrow
*/
engagementId: string;
/**
* Name of the escrow
*/
title: string;
/**
* Roles that make up the escrow structure
*/
roles: {
/**
* Address of the entity requiring the service.
*/
approver: string;
/**
* Address of the entity providing the service.
*/
serviceProvider: string;
/**
* Address of the entity that owns the escrow
*/
platformAddress: string;
/**
* Address of the user in charge of releasing the escrow funds to the service provider.
*/
releaseSigner: string;
/**
* Address in charge of resolving disputes within the escrow.
*/
disputeResolver: string;
/**
* Address where escrow proceeds will be sent to
*/
receiver: string;
};
/**
* Text describing the function of the escrow
*/
description: string;
/**
* Amount to be transferred upon completion of escrow milestones
*/
amount: number;
/**
* Commission that the platform will receive when the escrow is completed
*/
platformFee: number;
/**
* Flags validating certain escrow life states
*/
flags?: {
/**
* Flag indicating that an escrow is in dispute.
*/
disputed?: boolean;
/**
* Flag indicating that escrow funds have already been released.
*/
released?: boolean;
/**
* Flag indicating that a disputed escrow has already been resolved.
*/
resolved?: boolean;
/**
* Flag indicating whether a milestone has been approved by the approver.
*/
approved?: boolean;
};
/**
* Information on the trustline that will manage the movement of funds in escrow
*/
trustline: {
/**
* Public address establishing permission to accept and use a specific token.
*/
address: string;
};
/**
* Objectives to be completed to define the escrow as completed
*/
milestones: {
/**
* Text describing the function of the milestone
*/
description: string;
}[];
};Multi Release
/**
* Multi Release Initialize Escrow Payload
*/
export type InitializeMultiReleaseEscrowPayload = {
/**
* Address of the user signing the contract transaction
*/
signer: string;
/**
* Unique identifier for the escrow
*/
engagementId: string;
/**
* Name of the escrow
*/
title: string;
/**
* Roles that make up the escrow structure (without receiver, as each milestone has its own receiver)
*/
roles: {
/**
* Address of the entity requiring the service.
*/
approver: string;
/**
* Address of the entity providing the service.
*/
serviceProvider: string;
/**
* Address of the entity that owns the escrow
*/
platformAddress: string;
/**
* Address of the user in charge of releasing the escrow funds to the service provider.
*/
releaseSigner: string;
/**
* Address in charge of resolving disputes within the escrow.
*/
disputeResolver: string;
};
/**
* Text describing the function of the escrow
*/
description: string;
/**
* Commission that the platform will receive when the escrow is completed
*/
platformFee: number;
/**
* Information on the trustline that will manage the movement of funds in escrow
*/
trustline: {
/**
* Public address establishing permission to accept and use a specific token.
*/
address: string;
};
/**
* Objectives to be completed to define the escrow as completed
*/
milestones: {
/**
* Text describing the function of the milestone
*/
description: string;
/**
* Amount to be transferred upon completion of this milestone
*/
amount: number;
/**
* Address where milestone proceeds will be sent to
*/
receiver: string;
}[];
};Last updated
Was this helpful?