Los flujos de fondos son un poco un rollo. Todo el mundo los hace, cada uno a su manera, y aunque tú los estés haciendo, probablemente cambies el formato constantemente.
A medida que las stablecoins se van integrando cada vez más en todo, siento que estoy haciendo uno o dos flujos de fondos al día. Cuando surge una fintech y pide un flujo de fondos, lo único que realmente quiere es este diagrama. Algo como esto si están añadiendo stablecoins como opción para realizar pagos globales:
sequenceDiagram
title: Funds Flow (Medium, CSF v1.4.5) – USD to USDC with Exchange (Modern Treasury + Brale)
participant Business as Modern Treasury Customer
participant MT as Modern Treasury (Instructions Only)
participant Brale as Brale (Exchange & Settlement)
participant Solana as Solana Blockchain
participant Recipient as Recipient Wallet
Business-->>MT: [DATA] Instruction: Pay ,000 to Recipient (USD)
MT-->>Brale: [DATA] Instruction Forwarded
Brale->>Brale: [EXCHANGE] USD to USDC
Brale->>Solana: Transfer USDC Solana ,000
Solana->>Recipient: Confirm ReceiptSe nos ocurrió un marco de trabajo para usar en Brale, y ha resultado ser bastante útil. Se llama Commons Stablecoin Format (CSF), y es simplemente un conjunto de reglas para un modelo de lenguaje grande (LLM), de modo que no tenga que pensar en qué formato usar. Pegamos el CSF JSON en GPT y le damos una indicación del tipo: «Crea un flujo de fondos para una entrada de transferencia bancaria en USD que se convierta en unUSDCs en Solana». Sigue el formato cada vez.
Todos los flujos de fondos se generan con Mermaid, que es muy ligero y rápido. Aquí puedes verme generando un flujo de fondos:
Los flujos de fondos solo muestran cómo encajan las cosas, pero cada uno tiene su propio modelo mental, lo que suele llevar a otro formato personalizado más, así que el equipo de Brale ideó un estándar que pudiéramos conectar a cualquier LLM para ayudarnos a generar rápidamente flujos de fondos de stablecoin. Al trabajar en nuestro nuevo stablecoin API, esto nos ha ayudado en innumerables conversaciones.
Rápidamente nos dimos cuenta de que esto era una especie de superpoder e incorporamos algunos de los estándares (que, para ser justos, están muy centrados en Brale) al Commons Stablecoin Format, diseñado para ser un conjunto estándar de reglas para generar flujos de fondos, como el anterior. Aquí está el conjunto completo.
A partir de ahí, el estándar genera diagramas de mermaid casi tan rápido como tú puedes copiarlos y pegarlos. Lo cual es genial, porque significa que no necesitas pasar 10 años en una fintech, un banco o lo que sea para empezar a tener un flujo de fondos decente. También puedes, por lo general, hacer capturas de pantalla de otros flujos de fondos y pedirle a tu LLM favorito que genere uno en formato CSF, algo en lo que, de hecho, es bastante bueno.
Estandarización en el flujo
Hay algunas cosas muy básicas aquí que hacen que el flujo de fondos sea un poco más fácil de leer, basadas en los conceptos de la capa de valor (1,2).
- ValueType: qué se transfiere (p. ej., USD, USDC, SBC)
- TransferType: cómo se mueve (p. ej., ACH, transferencia bancaria, Ethereum, Canton)
- Intercambio: entrada de un ValueType + TransferType y salida de un ValueType + TransferType.
He escrito mucho sobre esa idea en el pasado, pero nadie la había aplicado realmente en un producto hasta la última iteración de las actualizaciones de Brale API. El estándar se ha incorporado al CSF, donde las transferencias siempre muestran ValueType, TransferType y Amount. Es decir, SBC Base 100, o USDC Ethereum 100, o USD Wire 100.
Al igual que en un esquema, resulta mucho más fácil de leer cuando el etiquetado es coherente.
Diferentes niveles de detalle en el estándar:
- Ligero: flujos de transacción simplificados que se centran en los pasos fundamentales.
- Medio: incluye la finalización de los fondos, el seguimiento del cumplimiento y la validación del intercambio.
- Intenso: seguimiento exhaustivo del flujo, incluyendo la gestión de errores.
Cómo empezar
Ya se trate de una emisión de «stablecoin» financiada por un banco o de una liquidación en cadena a través de múltiples blockchains, CSF permite una mejor comprensión. Aquí hay otra indicación para una transferencia fuera de cadena, que financia una distribución en cadena en stablecoins:
"A third-party fintech initiates an offchain USD transfer to fund an onchain stablecoin distribution (e.g., USDC on Solana) to a recipient wallet."
sequenceDiagram
title: Funds Flow (Medium, CSF v1.4.5) – Third-Party Fintech USD to USDC Distribution
participant Business as Fintech Customer
participant Fintech as Fintech Platform (Instructions Only)
participant Exchange as Stablecoin Issuer / Settlement Platform
participant Solana as Solana Blockchain
participant Recipient as Recipient Wallet
Business-->>Fintech: [DATA] Instruction: Pay ,000 to Recipient (USD)
Fintech-->>Exchange: [DATA] Instruction Forwarded
Business->>Exchange: Transfer USD Wire ,000
Exchange->>Exchange: [EXCHANGE] USD to USDC
Exchange->>Solana: Transfer USDC Solana ,000
Solana->>Recipient: Confirm Receipty otra en la que ocurre lo contrario, pasando de la cadena a fuera de la cadena.
sequenceDiagram
title: Funds Flow (Medium, CSF v1.4.5) – Onchain USDC Funding to Offchain USD Wire Distribution
participant Business as Customer Wallet
participant Fintech as Fintech Platform (Instructions + Compliance)
participant Exchange as Stablecoin Platform / Settlement Partner
participant Bank as Bank Network
participant Recipient as Recipient Bank Account
Business->>Exchange: Transfer USDC Solana ,000
Exchange-->>Fintech: [DATA] Receipt Confirmation + Payout Instruction
Fintech-->>Exchange: [DATA] Instruction: Convert & Wire USD
Exchange->>Exchange: [EXCHANGE] USDC to USD
Exchange->>Bank: Transfer USD Wire ,000
Bank->>Recipient: Confirm ReceiptEl marco es de código abierto y está disponible para su adopción y contribución en GitHub. Es algo que ya utilizo a diario en Brale y esperamos que ahorre tiempo a vuestros equipos.
Puedes encontrar las especificaciones de CSF y ejemplos de comandos en GitHub; no dudes en bifurcarlo, utilizarlo o contribuir.