Tipos de escrow
Trustless Work admite varios tipos de escrow, cada uno adaptado a diferentes flujos de trabajo. Ya sea que estés construyendo un mercado, una plataforma de subvenciones o una app de trabajos por encargo, elegir la lógica de escrow adecuada te ayuda a equilibrar simplicidad, flexibilidad y confianza.
Escrow de liberación única
Un Escrow de liberación única retiene los fondos hasta todos los hitos (puntos de control verificables, como "diseño terminado" o "código desplegado") se completen y aprueben. Solo entonces se monto completo libera de una sola vez. Está diseñado para proyectos donde la confianza se construye a través de múltiples pasos pero el pago se realiza una vez.
Constrúyelo así:
Depósito: Los fondos se bloquean por adelantado por cualquier parte (p. ej., un cliente) a través de una billetera Stellar.
Finalización del hito: El Proveedor de Servicios (p. ej., un freelancer) marca cada hito como completado (p. ej., "Logo entregado", "Sitio en vivo").
Aprobación y liberación: El Aprobador (p. ej., el cliente) verifica todos los hitos. Una vez que todos estén aprobados, el Firmante de Liberación (p. ej., la plataforma) libera el monto total al Receptor, menos cualquier tarifa de la Plataforma.

Ejemplo: Un freelancer en un marketplace entrega un sitio web (hitos: wireframe, diseño, lanzamiento). El comprador (Aprobador) confirma que todo está hecho, y la plataforma (Firmante de Liberación) libera el pago completo.
Escrow de liberación múltiple
Un Escrow de liberación múltiple libera fondos de forma incremental a medida que cada hito se completa y aprueba. Está diseñado para proyectos por etapas donde la confianza y los pagos se construyen paso a paso, reduciendo el riesgo.
Constrúyelo así:
Depósito: Los fondos se depositan por adelantado o en partes mediante billeteras Stellar.
Finalización y revisión del hito: El Proveedor de Servicios (p. ej., un contribuyente de DAO) marca cada hito como completado (p. ej., "Prototipo construido"). El Aprobador (p. ej., los votantes de la DAO) revisa cada uno.
Liberación incremental: Por cada hito aprobado, el Firmante de Liberación (p. ej., la plataforma) libera la porción de fondos correspondiente al Receptor. Los Resolutores de Disputas manejan conflictos, ajustando montos o cancelando si es necesario. (Nota: Los pagos por hito están en camino, según el documento.)

Ejemplo: Una DAO financia a un desarrollador para un proyecto (hitos: código v1, v2, v3). La aprobación de cada hito libera una porción de stablecoins, con un Resolutor de Disputas interviniendo si los votantes cuestionan el progreso.
¿Por qué usarlo?
✅ Flexible: Paga por hito, no todo de una vez.
Aspecto
Liberación única
Liberación múltiple
Pagos
Todo de una vez, tras todos los hitos
Por hito
Caso de uso
Freelance con revisiones por etapas
Desembolso de subvenciones
Complejidad
Media (múltiples hitos, una sola liberación)
Alta (liberaciones por etapas)
Consejos rápidos:
Usa Liberación única para comenzar rápido.
Usa Liberación múltiple cuando necesitas control basado en hitos.
Todos los escrows son no custodiados, programables y nativos de stablecoin.
Ejemplos JSON
Aquí hay dos fragmentos JSON mínimos que destacan la diferencia estructural entre Liberación única y Liberación múltiple escrows. Estos no son esquemas completos, solo lo esencial para que un desarrollador pueda “verlo” de un vistazo.
📝 Ejemplo: Liberación única (con múltiples hitos)
{
"contractId": "C...ESCROWADDRESS",
"engagementId": "order-123",
"title": "Desarrollo de sitio web",
"description": "Construir y entregar un sitio web de marketing",
"roles": {
"approver": "G...CLIENT",
"serviceProvider": "G...FREELANCER",
"releaseSigner": "G...SIGNER",
"platformAddress": "G...PLATFORM",
"disputeResolver": "G...RESOLVER",
"receiver": "G...FREELANCER"
},
"amount": 1000,
"platformFee": 0.5,
"milestones": [
{
"description": "Entregar diseño de la página principal",
"status": "Approved",
"approved": true
},
{
"description": "Desplegar sitio web completo",
"status": "Pending",
"approved": false
}
],
"flags": {
"disputed": false,
"released": false,
"resolved": false
},
"trustline": {
"address": "G...USDCISSUER",
}
}👉 Incluso con múltiples hitos, todos deben ser aprobados antes de que se realice el pago único de 1000 USDC sea liberado.
📝 Ejemplo: Liberación múltiple
{
"contractId": "C...ESCROWADDRESS",
"engagementId": "grant-456",
"title": "Subvención de investigación",
"description": "Financiando proyecto en dos fases",
"roles": {
"approver": "G...FUNDER",
"serviceProvider": "G...RESEARCHER",
"releaseSigner": "G...SIGNER",
"platformAddress": "G...PLATFORM",
"disputeResolver": "G...RESOLVER",
},
"platformFee": 0.5,
"milestones": [
{
"description": "Enviar informe provisional",
"amount": 500,
"status": "Approved",
"flags": { "approved": true, "released": true, "disputed": false, "resolved": false },
"receiver": "G...RESEARCHER"
},
{
"description": "Publicar informe final",
"amount": 500,
"status": "Pending",
"flags": { "approved": false, "released": false, "disputed": false, "resolved": false },
"receiver": "G...RESEARCHER"
}
],
"trustline": {
"address": "G...USDCISSUER",
}
}👉 Aquí, cada hito tiene su propio monto y banderas. Los fondos se liberan hito por hito (500 + 500).
Última actualización
¿Te fue útil?