Tus claves. Tus firmas.
La ejecución en self-custody es el valor por defecto para cada Environment -- Ishtaran nunca guarda tus claves privadas.
- Las wallets se generan y las transacciones se firman en tu propio entorno, a través de un SDK oficial -- la clave privada nunca sale de tu proceso.
- Ishtaran solo recibe una clave pública. Verifica cada firma contra un hash que calculó de forma independiente, retransmite la transacción, y monitorea y reconcilia la ejecución de principio a fin.
- Un monto o destino alterado genera un hash diferente y es rechazado antes de que se verifique cualquier firma.
Código real, no pseudocódigo
El SDK oficial de Node.js/TypeScript, publicado en npm, hablando con el Sandbox público real -- la misma llamada está disponible en Java, Python y Go.
import { IshtaranClient, Environment } from '@ishtaran/sdk';
const client = IshtaranClient.create({
apiKey: process.env.ISHTARAN_API_KEY,
environment: Environment.Sandbox, // real public Sandbox, no baseUrl needed
});
const transaction = await client.transactions.create(
organizationId, applicationId, null, assetNetworkId, '100',
[
{ accountId: payerAccountId, role: 'payer', isPayer: true },
{ accountId: recipientAccountId, role: 'recipient', isPayer: false },
],
);
console.log(transaction.status);{
"transactionId": "5b1f...e2a0",
"status": "Created"
}
// Después de que un Deposit real (o un saldo Available ya existente) cubra el monto: status -> "Funded"Ver el ejemplo completo →O usa un SDK oficial (Java, Node.js, Python, Go) →O el contrato HTTP crudo →
Qué resuelve
Marketplace con split
Divide un pago entre vendedor, plataforma y socio automáticamente.
Escrow programable
Retén un valor hasta que se cumpla una condición de negocio, vía Workflow.
Recibe stablecoin
Las cuentas virtuales reciben USDT/USDC sin que operes tu propia billetera.
Liquidación condicional
Libera el valor solo cuando ocurra el evento correcto — registrado en el Ledger.
Cuentas financieras programables
Crea cuentas virtuales para los participantes de tu aplicación, recibe depósitos y reserva valores — sin operar tu propia billetera ni lidiar directamente con múltiples activos y redes.
Flujos condicionales de liberación
Define, vía API, las reglas que retienen o liberan un valor hasta que se cumpla una condición de negocio — cada transición de estado queda registrada y es auditable.
Ledger auditable y liquidaciones
Todo movimiento de saldo es un asiento contable — liquidaciones con división entre partes (split), reembolsos y comisión de la plataforma siguen el mismo registro confiable.
Cómo funciona
Account
Crea cuentas financieras virtuales para los participantes de tu aplicación — sin operar tu propia billetera.
Workflow
Define, vía API, las condiciones de negocio que liberan o retienen un valor — cada transición queda registrada.
Settlement
Liquida la transacción con división entre partes (split) y una comisión de plataforma configurable, todo registrado en el mismo Ledger.