Empieza por el contrato público, no por las cargas útiles del proveedor

Una integración debería depender del esquema de ChainsFlow API versionado en lugar de de Binance, Bybit, Kraken o OKX formas de respuesta. El API mantiene a los DTOs proveedores detrás de adaptadores y expone recursos estables de usuario, cuenta, saldo y cartera. Genera clientes tipados desde OpenAPI cuando sea útil, pero mantén un pequeño envolvente propiedad de la aplicación para que las actualizaciones de versiones y el mapeo de errores sigan siendo intencionados.

Mantén la propiedad del usuario final en tu BFF

Crea una cartera mediante POST /api/v1/portfolios y guarda el portfolioId opaco devuelto junto a tu usuario local. ChainsFlow API solo ve la cuenta API autenticada y sus carteras.

Trata las conexiones de exchanges como recursos persistentes

Una conexión contiene credenciales cifradas de solo lectura, estado de sincronización y tenencias normalizadas. Créalo desde tu servidor, conserva el ID de cuenta devuelto y muestra estados explícitos de sincronización, activos o de error al usuario. Nunca intercambies secretos de proxy mediante analíticas, herramientas de soporte o registros del lado del cliente, y proporciona una acción clara de eliminación cuando el usuario desconecte un intercambio.

Usa las cuentas y las vistas agregadas para tareas distintas

Los endpoints de cuenta son útiles para el estado del proveedor, saldos exactos y gestión de conexiones. El endpoint de cartera combina cuentas soportadas en una sola vista USD con asignación y movimiento implícito de mercado en 24 horas. El rendimiento es independiente porque depende de las instantáneas almacenadas y la cobertura de flujo de caja. Elegir el punto final más estrecho reduce el uso de crédito y mantiene comprensibles los estados de carga de la interfaz.

Añade presupuestos, observabilidad y degradación gradual

Registra X-Credit-Cost, X-Credits-Remaining y los identificadores de correlación, pero nunca las credenciales. Define tiempos de espera, respeta Retry-After y distingue los fallos del proveedor de los errores de autenticación o crédito. Almacena en caché únicamente datos cuya antigüedad pueda explicar el producto. La pantalla de la cartera debe seguir siendo útil cuando un exchange no esté disponible temporalmente, en lugar de presentar todo el espacio del usuario como perdido.