Ir al contenido principal

22 publicaciones etiquetadas con "Plain-Text Accounting"

Ver todas las etiquetas

Beancount.io v3.0: Tus Datos Financieros, Bajo Tu Control

· 9 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

La mayoría del software financiero te obliga a confiarles tus datos. Ellos los poseen, los controlan y te encierran. Creemos que mereces algo mejor.

Hoy, lanzamos la próxima generación de Beancount.io, construida sobre un principio simple: tus datos financieros deben pertenecerte a ti, no a nosotros. Con la integración nativa de Git, puedes extraer tu libro mayor contable completo a tu propia máquina, editarlo con cualquier herramienta que desees y volver a enviar los cambios. Sin encierros. Sin formatos propietarios. Solo tus datos, bajo tu control.

Esta versión se centra en tres objetivos centrales que son los que más importan a las personas que gestionan sus finanzas con la contabilidad en texto plano:

  1. Verdadera propiedad de los datos a través de la integración nativa de Git
  2. Colaboración perfecta para equipos, socios y contadores
  3. Una interfaz intuitiva que hace que la contabilidad en texto plano sea accesible para todos

Panel de control general

Potentes informes financieros a tu alcance

El nuevo panel de control incluye herramientas integrales de informes financieros que te ayudan a comprender tu posición financiera de un vistazo:

Estado de resultados

Panel de control del estado de resultados

Realiza un seguimiento de tu beneficio neto, ingresos y gastos en diferentes productos básicos a lo largo del tiempo. La vista del Estado de Resultados proporciona un desglose claro de tus fuentes de ingresos y patrones de gasto, lo que te ayuda a identificar tendencias y tomar decisiones financieras informadas. Visualiza tu rendimiento financiero con gráficos interactivos que muestran cómo evolucionan tus ingresos y gastos mes a mes o año tras año.

Balance general

Panel de control del balance general

Supervisa tu patrimonio neto en diferentes productos básicos a lo largo del tiempo con la vista completa del Balance General. Consulta tus activos, pasivos y patrimonio en cualquier momento, con un seguimiento histórico que muestra cómo cambia tu posición financiera. Esta potente herramienta te ayuda a comprender tu salud financiera general y a realizar un seguimiento del progreso hacia tus objetivos financieros.

Balance de comprobación

Panel de control del balance de comprobación

La vista del Balance de Comprobación proporciona una instantánea completa de todos los saldos de tus cuentas en un momento específico. Perfecta para la conciliación y para garantizar que tus libros estén equilibrados, esta vista muestra los débitos y créditos uno al lado del otro, lo que facilita la verificación de la precisión de tus registros contables.

Vista de detalles de la cuenta

Panel de control de detalles de la cuenta

Profundiza en cualquier cuenta con la vista Detalles de la cuenta. Consulta los valores del saldo de la cuenta y los cambios a lo largo del tiempo con gráficos intuitivos. La vista incluye un diario de cuenta completo que muestra todas las transacciones que afectan a la cuenta, incluidas las subcuentas, lo que te brinda una visibilidad completa de cómo fluye el dinero a través de tu sistema financiero.

Editor de archivos moderno

Panel de control del editor de archivos

El nuevo panel de control presenta un editor de archivos completamente rediseñado que hace que la edición de tus archivos de libro mayor de Beancount sea un placer. Creado con principios de diseño modernos y receptivos, el nuevo editor proporciona una experiencia de edición fluida e intuitiva, ya sea que estés en un escritorio, tableta o dispositivo móvil.

Integración de Git: tu libro mayor, a tu manera

Una de las características más solicitadas ya está aquí: la integración nativa de Git. Con la nueva versión, puedes extraer sin problemas tus cuentas de libro mayor utilizando los protocolos estándar de Git, lo que te brinda un control completo sobre tus datos financieros.

Lo que puedes hacer:

# Clona tu libro mayor en tu máquina
git clone https://git.beancount.io/tu-nombre-de-usuario/mi-libro-mayor.git

# Edita localmente con tus herramientas favoritas
vim 2025.bean

# Envía los cambios de vuelta
git commit -am "Se agregaron las transacciones del Q4"
git push

Por qué esto importa (soberanía de datos):

  • Verdadero plan de salida: tu historial financiero completo está en un repositorio Git estándar. ¿Dejas de pagarnos? Te quedas con todo.
  • Herramienta agnóstica: edita con VS Code, Vim, Emacs o herramientas especializadas de Beancount. Tu elección, no la nuestra.
  • Pista de auditoría completa: cada cambio se rastrea con el historial completo de Git, mostrando exactamente quién cambió qué y cuándo. Perfecto para el cumplimiento y la tranquilidad.
  • Copia de seguridad distribuida: la naturaleza distribuida de Git significa que tienes copias de seguridad automáticas con versiones en tu máquina.

Esto convierte a Beancount.io en la única plataforma que hace que tus datos sean más portátiles, no menos.

Colaboración en equipo: construido para cómo trabajan realmente los equipos

Ya sea que estés dirigiendo una pequeña empresa, trabajando con un contador o administrando las finanzas del hogar con un socio, la colaboración importa.

Colabora con tu equipo

El nuevo sistema de colaboración hace que esto sea natural y asequible:

  • Invita a colaboradores: simplemente invita a otros por correo electrónico a unirse a tu libro mayor como colaboradores
  • Actualizaciones en tiempo real: ve los cambios realizados por los colaboradores en tiempo real, manteniendo a todos sincronizados
  • Historial de actividades: realiza un seguimiento de quién realizó qué cambios y cuándo, manteniendo una total responsabilidad

Perfecto para pequeñas empresas, autónomos que trabajan con contadores o cualquier persona que necesite compartir responsabilidades de administración financiera. La colaboración nunca ha sido tan fácil ni tan segura.

Soporte multi-libro mayor: organiza tus finanzas a tu manera

La nueva versión admite la creación de múltiples libros mayores, lo que te brinda la flexibilidad de organizar tus finanzas exactamente como lo necesitas. Ya sea que desees libros mayores separados para finanzas personales y comerciales, diferentes proyectos o diferentes entidades, la nueva versión lo hace simple.

Beneficios del soporte multi-libro mayor:

  • Separación de preocupaciones: mantén las finanzas personales y comerciales completamente separadas
  • Organización basada en proyectos: crea libros mayores dedicados para diferentes proyectos o clientes
  • Estructura flexible: organiza tu sistema contable de una manera que tenga sentido para tu situación particular
  • Cambio fácil: muévete entre libros mayores sin problemas con el intuitivo selector de libros mayores

Crea tantos libros mayores como necesites para mantener tus registros financieros organizados y manejables.

Libros mayores públicos: comparte y aprende de la comunidad

La nueva versión presenta el intercambio público de libros mayores, lo que te permite compartir tus libros mayores bien estructurados con la comunidad de Beancount. Esta característica promueve el intercambio de conocimientos y ayuda a otros a aprender las mejores prácticas para organizar sus propios sistemas contables.

Cómo funcionan los libros mayores públicos:

  • Comparte tu experiencia y déjala volverse viral: haz que tu libro mayor sea público para ayudar a otros a aprender de tu configuración
  • Descubre las mejores prácticas: explora los libros mayores públicos para ver cómo otros organizan sus finanzas
  • Aprendizaje comunitario y red social: aprende de ejemplos del mundo real del uso eficaz de Beancount
  • Control de privacidad: tú decides qué libros mayores hacer públicos; tus libros mayores privados permanecen completamente privados

Al compartir excelentes ejemplos de libros mayores, estamos construyendo una comunidad de Beancount más sólida e informada donde todos puedan aprender y mejorar juntos.

Funciones mejoradas de Fava y la comunidad de Beancount

Hemos integrado funciones populares de la comunidad de Beancount que resuelven problemas reales del flujo de trabajo:

  • Amortización de gastos (amortize_over): distribuye suscripciones anuales o gastos pagados por adelantado automáticamente a lo largo de los meses
  • Previsión financiera (forecast): proyecta el flujo de caja futuro en función de las transacciones recurrentes
  • Enlace de documentos (link_documents): mantén los recibos y las facturas conectados a las transacciones
  • Detección automática de documentos (tag_discovered_documents): etiqueta y organiza automáticamente los documentos de respaldo

Estas no son características experimentales, son herramientas probadas en batalla de la comunidad de Beancount, ahora integradas a la perfección.

Rendimiento más rápido, experiencia más fluida

Bajo el capó, la nueva versión incluye optimizaciones de rendimiento significativas que hacen que todo se sienta más rápido:

  • Tiempos de carga más rápidos: las páginas y los informes se cargan notablemente más rápido, incluso con libros mayores grandes
  • Interacciones más fluidas: las interacciones de la interfaz de usuario son más receptivas, con una reducción del retraso al navegar entre las vistas
  • Procesamiento de datos optimizado: los cálculos complejos y la generación de informes se realizan de manera más eficiente
  • Mejor administración de recursos: el sistema utiliza los recursos de manera más inteligente, lo que garantiza un rendimiento constante incluso durante el uso máximo

Estas mejoras significan que pasas menos tiempo esperando y más tiempo administrando tus finanzas de manera efectiva.

Privacidad y seguridad: tus datos, tus reglas

Defendemos la soberanía de tus datos asegurando tu libro mayor en un repositorio Git privado y encriptado que es de tu total propiedad, puedes exportar y eliminar a voluntad. Este control exige responsabilidad: tú determinas el acceso gestionando colaboradores de confianza y debes tener extrema precaución al publicar libros mayores, entendiendo que los datos públicos son permanentemente visibles para Internet y deben ser cuidadosamente depurados de detalles sensibles. En última instancia, tus datos siguen siendo tuyos, protegidos por nuestra infraestructura pero regidos estrictamente por tus reglas.

¿Qué sigue?

La nueva versión es solo el comienzo de nuestro viaje para hacer de Beancount.io la mejor plataforma de contabilidad en texto plano disponible, apuntando hacia el GitHub de las finanzas. El software financiero tradicional se basa en el "Bloqueo de datos". Beancount.io está construyendo un tipo diferente de defensa: Bloqueo de protocolo. Ya estamos trabajando en:

  • Mejoras de la aplicación móvil para la contabilidad sobre la marcha
  • Integraciones adicionales con servicios financieros populares
  • Funciones de informes y análisis más avanzadas
  • Herramientas de colaboración mejoradas para equipos

¡Nos encantaría escuchar tus comentarios sobre la nueva versión! Tus comentarios nos ayudan a priorizar lo que construiremos a continuación.

¡Feliz contabilidad!

El equipo de Beancount.io

Desintoxica las finanzas de tu pequeña empresa — la manera Beancount

· 11 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Convierte un libro mayor desordenado en un negocio tranquilo y seguro con el efectivo en 30 días—usando contabilidad de texto plano.


2025-09-04-detox-your-small-business-finances

TL;DR

  • Separa, simplifica y asegura tus libros con un plan de cuentas ajustado, importaciones consistentes y verificaciones de balance automatizadas.
  • Muestra lo que importa—COGS, gastos generales, reserva de efectivo—a través de informes rápidos de bean-query.
  • Corta el ruido (suscripciones no utilizadas, herramientas duplicadas) y codifica buenos hábitos (conciliación semanal, cierre mensual, recibos adjuntos).
  • Haz que la temporada fiscal sea aburrida manteniendo extractos, recibos y balances verificables en un lugar.

¿Por qué una "Desintoxicación"?

El desorden financiero en una pequeña empresa no es solo desordenado—es caro. Oculta gastos desperdiciados, oscurece tu verdadera rentabilidad y convierte la temporada fiscal en una búsqueda frenética del tesoro. Una desintoxicación financiera es un reinicio enfocado de 30 días: identificas qué mueve (y filtra) dinero, eliminas la complejidad y luego institucionalizas rutinas simples y repetibles para mantenerlo limpio.

Beancount es la herramienta perfecta para esto porque es transparente, scriptable y verificable. A diferencia del software de caja negra, un libro mayor de texto plano significa que cada número es explicable. Cada verificación y balance puede ser automatizado con directivas y consultas, creando un sistema de auto-auditoría que fuerza la claridad. Esta guía te llevará a través de un plan de cuatro semanas para lograr exactamente eso.


Semana 0 — Establece tu línea base

Antes de poder limpiar, necesitas una base sólida. Esta semana se trata de definir la estructura de tu mundo financiero.

Crea un plan de cuentas ajustado

Tu plan de cuentas es el esqueleto de tu sistema financiero. El objetivo aquí es el minimalismo. No crees una cuenta para cada posible gasto que podrías tener. Comienza con lo esencial que usas hoy; siempre puedes agregar más después. Un plan de cuentas desordenado fomenta la categorización incorrecta y hace que el análisis de alto nivel sea difícil.

Aquí tienes un punto de partida simple y efectivo:

; Entidades principales
2025-01-01 open Assets:Bank:Checking USD
2025-01-01 open Assets:Bank:Savings USD
2025-01-01 open Liabilities:CreditCard:Business USD
2025-01-01 open Income:Sales
2025-01-01 open Expenses:COGS
2025-01-01 open Expenses:Overhead:Rent
2025-01-01 open Expenses:Overhead:Utilities
2025-01-01 open Expenses:SaaS
2025-01-01 open Equity:Opening-Balances

Asegura balances que puedas verificar

La característica más poderosa en la contabilidad de texto plano es la capacidad de afirmar la realidad. Una directiva balance le dice a Beancount: "En esta fecha, esta cuenta tenía exactamente esta cantidad de dinero." Si no es así, Beancount arrojará un error. Esta es tu red de seguridad principal.

Al comenzar, usa pad en combinación con balance para inicializar tus cuentas desde un extracto bancario. La directiva pad crea una transacción que fuerza la cuenta al balance inicial correcto, registrando la diferencia en una cuenta de patrimonio.

; Inicializar desde extractos
2025-01-01 pad Assets:Bank:Checking Equity:Opening-Balances
2025-01-01 balance Assets:Bank:Checking 12345.67 USD

Una palabra de precaución: Usa pad con moderación. Es para comenzar limpiamente, no para cubrir errores recurrentes de conciliación.


Semana 1 — Separa y simplifica los flujos

Con una estructura en su lugar, es hora de aclarar cómo se mueve el dinero a través de tu negocio.

Mantén Negocio ≠ Personal

Esta es la regla de oro de las finanzas de pequeña empresa. Mezclar fondos es una receta para la confusión y dolores de cabeza fiscales.

  • Mantén una cuenta bancaria dedicada al negocio y una tarjeta de crédito comercial.
  • Refleja esta separación en tu libro mayor: Assets:Bank:Business:Checking, Liabilities:CreditCard:Business.
  • Si te pagas a ti mismo, regístralo como una distribución a Equity:Owner-Draws. Nunca categorices gastos personales directamente desde cuentas comerciales.

Estandariza las categorías de proveedores

¿Pagas por AWS, Google Cloud y Vercel? No crees tres cuentas separadas. Mapéalos todos a una sola categoría lógica como Expenses:Cloud. Evita crear micro-cuentas que realmente no analizarás. El objetivo es ver patrones, no rastrear cada proveedor individual con su propia cuenta.


Semana 2 — Automatiza entradas y recibos

La entrada manual de datos es lenta, propensa a errores e insostenible. Esta semana se trata de construir una máquina para alimentar tu libro mayor de manera confiable.

Construye un camino de importación sin drama

El marco de importación de Beancount te permite enseñarle cómo leer archivos CSV u OFX de tu banco y generar automáticamente transacciones. Invierte el tiempo para configurar esto una vez, y ahorrarás cientos de horas a largo plazo. Mantén tus reglas de importación bajo control de versiones (como Git) para que tu sistema sea repetible y respaldado.

  • Comienza con la guía oficial de Beancount Importing External Data.
  • Para un flujo de trabajo más interactivo, considera una herramienta como beancount-import, que proporciona una interfaz web para coincidencias semi-automáticas.
  • Muchos usuarios confían en los marcos integrados ingest o los más nuevos beangulp para construir sus importadores personalizados. Elige uno y mantente con él para consistencia.

Adjunta documentos donde pertenecen

Una transacción sin recibo es una afirmación sin sustento. Beancount y su interfaz web, Fava, hacen trivial vincular documentos fuente a entradas, creando un rastro de auditoría inquebrantable.

Tienes dos excelentes opciones:

  1. Carpeta de documentos + Directiva: Almacena todos tus recibos y extractos en una carpeta dedicada. Luego, vincula un archivo a una transacción usando la directiva document.
  2. Arrastrar y soltar en Fava: Simplemente arrastra un archivo PDF o de imagen sobre una transacción en la interfaz de Fava. Fava automáticamente almacena el archivo e inserta la directiva document correcta en tu archivo de libro mayor.
; En tu archivo principal del libro mayor, dile a Fava dónde viven tus documentos
option "documents" "/home/acme/docs"

; Vincula un recibo a una entrada de transacción específica
2025-08-07 * "Figma" "Monthly Subscription"
Assets:CreditCard:Business -12.00 USD
Expenses:SaaS 12.00 USD
document: "receipts/figma-2025-08-07.pdf"

Semana 3 — Ve la verdad (Consultas rápidas que reutilizarás)

Tu libro mayor ahora está limpio y alimentado con datos. Es hora de hacerle preguntas importantes. Inicia la herramienta de línea de comandos bean-query para obtener respuestas instantáneas.

1) ¿Dónde está mi efectivo?

Obtén una instantánea rápida de tus activos líquidos.

bean-query business.beancount 'BALANCES FROM year = 2025 AND (account ~ "Assets:Bank" OR account ~ "Liabilities:CreditCard")'

Esto te da una vista inmediata y en tiempo real de tu posición de efectivo sin iniciar sesión en múltiples portales bancarios.

2) ¿En qué estoy gastando en gastos generales vs. COGS?

Entiende a dónde va tu dinero realmente. ¿Estás gastando más en gastos generales no esenciales o en los costos directamente vinculados a entregar tu producto (Costo de Bienes Vendidos)?

SELECT
account,
units(sum(position))
WHERE
account ~ "^Expenses:(Overhead|COGS)" AND year = 2025
GROUP BY
account
ORDER BY
account

Esta consulta separa tus costos operacionales principales de tu carga administrativa, una perspectiva crítica para la rentabilidad.

3) ¿Qué suscripciones parecen "zombis"?

Encuentra gastos recurrentes y pequeños que a menudo vuelan bajo el radar. Estas suscripciones "zombi" pueden drenar tu flujo de efectivo.

SELECT
payee,
COUNT(*) AS num_transactions,
SUM(number) AS total_spent
WHERE
account ~ "^Expenses:SaaS" AND date >= '2025-01-01'
GROUP BY
payee
ORDER BY
num_transactions DESC,
total_spent DESC

Esta consulta revela instantáneamente proveedores a los que pagas frecuentemente. Si ves uno que no reconoces o ya no necesitas, es hora de cancelar.


Semana 4 — Ordena y asegura el sistema

La semana final se trata de construir los hábitos y barreras que mantienen tus finanzas limpias para siempre.

Pon presupuestos simples en su lugar

Fava puede leer directivas budget de tu libro mayor y mostrar barras de progreso útiles en sus informes, mostrándote si estás en el camino correcto. Esto proporciona un recordatorio suave y constante de tus objetivos de gasto.

; Limita el gasto en SaaS a $100 por mes
2025-01-01 custom "budget" Expenses:SaaS "monthly" 100.00 USD

Establécelos para categorías de gastos variables clave como software, publicidad o contratistas para notar desviaciones antes de que se conviertan en un problema.

Cierra el mes, cada vez

Establece un proceso de cierre mensual simple e innegociable:

  1. Concilia: Para cada cuenta bancaria y de tarjeta de crédito, agrega una aserción balance que coincida con el número final en tu extracto mensual.
  2. Adjunta: Adjunta el extracto PDF en sí a la entrada balance usando la directiva document.
  3. Reporta: Ejecuta tus tres consultas guardadas (efectivo, gastos generales/COGS, suscripciones) y pega las salidas en una breve nota de revisión mensual.

La aserción de balance es un activador automático. Si tu libro mayor no coincide con el extracto bancario, Beancount arrojará un error, diciéndote exactamente dónde buscar la discrepancia.


Haz que la temporada fiscal sea aburrida (de la manera buena)

Siguiendo este sistema, transformas la preparación fiscal de una crisis en un simple ejercicio de reporte.

  • Los recibos están adjuntos a las transacciones, así que no hay búsqueda frenética. En Fava, estás a un clic del documento fuente para cualquier gasto.
  • Los elementos relevantes para impuestos pueden ser etiquetados (ej., #tax-deductible), permitiéndote extraer un informe limpio con bean-query para tu contador.
  • Los balances de fin de año están asegurados y verificados con aserciones balance, dándote a ti y a tu preparador confianza en los números.

Una lista de verificación de 30 días (Imprime esto)

  • Día 1–3
    • Crea un plan de cuentas mínimo.
    • Agrega pad + balance para cada banco/tarjeta usando los últimos extractos.
  • Día 4–10
    • Configura un pipeline de importación y confirma tus reglas en control de versiones.
    • Rellena 90 días de transacciones; ejecuta una primera instantánea BALANCES.
  • Día 11–15
    • Estandariza proveedores a sus respectivas cuentas (SaaS, Cloud, Envío, etc.).
    • Adjunta PDFs de extractos para los períodos conciliados; confirma que aparecen en Fava.
  • Día 16–20
    • Ejecuta la consulta de gastos generales vs. COGS; corrige cualquier elemento mal categorizado.
    • Ejecuta la consulta de frecuencia de suscripciones; cancela o consolida servicios no utilizados.
  • Día 21–25
    • Agrega uno o dos límites de presupuesto para gastos variables clave a través de custom "budget".
    • Guarda tus tres comandos bean-query más importantes en un script para fácil reutilización.
  • Día 26–30
    • Concilia todas las cuentas con aserciones balance de fin de mes.
    • Escribe una breve nota de "cierre mensual" resumiendo números clave y vinculando a documentos.

Fragmentos comunes que reutilizarás

Una entrada de gasto limpia

2025-08-05 * "Figma" "Pro plan"
Expenses:SaaS 12.00 USD
Assets:Bank:Checking -12.00 USD

Aserción de balance desde un extracto

2025-09-01 balance Assets:Bank:Checking  8423.17 USD

Barrera presupuestaria para alquiler

2025-01-01 custom "budget" Expenses:Overhead:Rent "monthly" 2500.00 USD

Manténlo simple, manténlo con scripts

La filosofía de una desintoxicación financiera impulsada por Beancount es simple:

  • Programa lo que repites: Automatiza importaciones y reportes.
  • Deja que las aserciones fallen ruidosamente: Son tus rieles de seguridad, no una inconveniencia.
  • Prefiere cuentas menos numerosas y más claras sobre categorización perfecta y granular.

Adopta estos hábitos, y tu negocio funcionará con bucles de retroalimentación ajustados: visibilidad de efectivo diariamente, desviación de gastos visible semanalmente, y un fin de año verdaderamente aburrido. Esa es la claridad y control que esta desintoxicación está diseñada para entregar.


Referencias y lectura adicional

Este post es solo para propósitos educativos y no es consejo fiscal o legal.

10 pasos prácticos para un cierre de mes rápido y fiable en Beancount

· 7 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Si tu libro mayor está en texto plano, tu cierre de mes puede ser rápido y auditable. El proceso no tiene que ser una carrera frenética de hojas de cálculo y calculadoras. Esta guía destila un proceso limpio y repetible pensado para Beancount y su interfaz web, Fava, construido alrededor de aserciones de balance, importaciones inteligentes y verificaciones ligeras.

Aquí tienes la lista de verificación para un cierre sin problemas:

2025-09-02-month-end-close

  1. Recopila los extractos e importa todas las transacciones en bruto.
  2. Normaliza beneficiarios, descripciones y metadatos.
  3. Conciliación de cada cuenta de efectivo, banco y tarjeta de crédito con aserciones balance.
  4. Verifica transferencias y movimientos entre cuentas.
  5. Actualiza precios de inversiones y verifica valoraciones.
  6. Adjunta o enlaza documentos (recibos, facturas) en tu libro mayor.
  7. Ejecuta consultas y paneles para P&L y verificaciones de variaciones.
  8. Registra devengos y ajustes según sea necesario.
  9. Valida el libro mayor con verificaciones automatizadas.
  10. Confirma, etiqueta y archiva el mes.

1. Establece las reglas básicas (y reutilízalas)

Un cierre consistente comienza con una base estable. Tu Plan de Cuentas y las opciones clave de Beancount deben declararse de forma centralizada y cambiarse raramente. Opciones como operating_currency y la gestión de documents garantizan que tus informes e importaciones se comporten de forma predecible en cada ocasión.

Consejo: Trata tu archivo de opciones como “infraestructura”. Cambiarlo puede alterar cómo se calculan tus números. Versiona con cuidado en Git.


2. Importa todo — y nunca vuelvas a teclear manualmente

Automatizar la importación de datos es el mayor acelerador para cerrar tus libros. Usa las potentes herramientas de importación de Beancount y los importadores creados por la comunidad para extraer feeds bancarios, archivos CSV/OFX de tarjetas de crédito, datos de corretaje e informes de nómina.

El objetivo es una importación de un solo comando que genere asientos balanceados que solo necesites revisar y confirmar. Esto elimina la entrada manual de datos, la principal fuente de errores y retrasos.


3. Normaliza beneficiarios y metadatos al inicio

Los datos limpios son datos fiables. Estandariza tus beneficiarios, narraciones y etiquetas durante el proceso de importación para que tus búsquedas, reglas e informes sigan siendo precisos mes a mes.

El sistema de plugins de Beancount te permite añadir transformaciones ligeras y validaciones mientras se cargan tus archivos. Es perfecto para imponer verificaciones de consistencia personalizadas o usar el plugin incorporado noduplicates para señalar transacciones repetidas antes de que se conviertan en un problema.


4. Conciliación con aserciones balance

Para cada cuenta que tenga un extracto (corriente, ahorros, tarjetas de crédito), usa la directiva balance de Beancount para afirmar el saldo de cierre. Esta línea sencilla convierte la conciliación de una revisión manual en una prueba precisa y automatizada.

; Asegura que el saldo sea exactamente 1234.56 al inicio del día
2025-09-01 balance Assets:Bank:Checking 1234.56 USD

Como los saldos se verifican al principio del día, es más fácil usar el primer día del mes siguiente para un extracto de cierre de mes. Si el saldo calculado por Beancount difiere de tu aserción, obtendrás un error preciso y una fecha para iniciar la investigación. Siempre corrige la fuente de la verdad (tus transacciones) primero; no “forces” una conciliación.


5. Verifica transferencias entre cuentas

Asegúrate de que cada transferencia aparezca en ambos lados de la transacción. Un pago de tu cuenta corriente a tu tarjeta de crédito, por ejemplo, debe reflejarse en ambas cuentas. Las transferencias desajustadas son una fuente común de dolores de cabeza en la conciliación.

Usa la directiva pad solo para establecer saldos de apertura históricos cuando configuras una cuenta por primera vez. Es una herramienta de configuración, no una muleta de conciliación para arreglar diferencias al cierre.


6. Verifica posiciones y precios de inversiones

Para obtener una visión exacta de tu patrimonio neto, necesitas valores de mercado actualizados para tus inversiones y monedas extranjeras. Usa la directiva price de Beancount para registrar estos valores a la fecha de cierre.

2025-08-31 price VTI  290.14 USD
2025-08-31 price EUR 1.11 USD

Muchos herramientas pueden obtener estos precios automáticamente. Después de actualizarlos, vuelve a ejecutar tus informes de balance o patrimonio neto para ver los cambios de valoración.


7. Adjunta recibos y documentos de origen

Mantén una pista de auditoría limpia vinculando transacciones a sus documentos de origen. Usa la opción documents en tu archivo principal de Beancount para apuntar a tu archivo de recibos y facturas.

option "documents" "/path/to/Finance/Documents"

Si nombras tus archivos por fecha (p. ej., 2025-08-13.vendor.receipt.pdf), Beancount y Fava pueden descubrirlos y enlazarlos automáticamente, facilitando la visualización de un recibo para cualquier transacción con un solo clic.


8. Revisa el mes con Fava y BQL

Un ciclo de retroalimentación rápido es crítico. Usa Fava para inspeccionar visualmente tus finanzas. Sus gráficos e informes son perfectos para desglosar gastos por categoría, comprobar tendencias de ingresos y detectar anomalías de un vistazo.

Para verificaciones más precisas, usa el Beancount Query Language (BQL). Esta consulta, por ejemplo, te da un desglose ordenado de todos los gastos de agosto 2025:

SELECT
account,
ROUND(SUM(position), 2) AS total
WHERE
date >= 2025-08-01 AND date < 2025-09-01
AND account 'Expenses'
GROUP BY
account
ORDER BY
total DESC;

9. Registra devengos y ajustes

Si utilizas contabilidad de acumulación, registra tus ajustes de cierre como transacciones explícitas y fechadas. Esto puede incluir gastos devengados (como una factura de servicios que aún no has recibido), amortización de gastos prepagados o reconocimiento de ingresos. Mantenlos simples y bien documentados en la narración para que sean fáciles de entender en revisiones futuras.


10. Valida, etiqueta y archiva

Antes de finalizar el mes, ejecuta una última comprobación de integridad estructural:

bean-check your-ledger.beancount

Este comando detectará desbalances, referencias a cuentas no abiertas y otros errores comunes. Corrige todo lo que indique.

Una vez todo esté correcto, confirma tus cambios en el control de versiones (por ejemplo, Git) con un mensaje claro y una etiqueta, como close-2025-08. Finalmente, archiva tus extractos bancarios y considera el mes cerrado.


Un script de cierre sencillo que puedes adaptar

Puedes automatizar la mayor parte de estos pasos con un script de shell sencillo. Esto convierte tu cierre en un único comando repetible.

#!/usr/bin/env bash
set -euo pipefail

# Ejemplo: ./close.sh 2025-08
MONTH=${1:?Please provide a month in YYYY-MM format}
LEDGER= /finance/ledger.beancount

# 1. Importar nuevas transacciones
echo "Importando transacciones para $MONTH..."
make import MONTH="$MONTH"

# 2. Actualizar precios de mercado para el último día del mes
PRICE_DATE=$(date -d "$MONTH-01 +1 month -1 day" +%F)
echo "Obteniendo precios para $PRICE_DATE..."
make prices DATE="$PRICE_DATE"

# 3. Validar todo el libro mayor
echo "Ejecutando bean-check..."
bean-check "$LEDGER"

# 4. Generar un informe clave (p. ej., desglose de gastos)
echo "Generando informe de gastos para $MONTH..."
bean-query "$LEDGER" -f txt "
SELECT account, SUM(position)
WHERE date >= '${MONTH}-01' AND date < '${MONTH}-01' + 1 month
AND account 'Expenses'
GROUP BY account ORDER BY SUM(position) DESC;
" > "reports/${MONTH}-expenses.txt"

# 5. Confirmar y etiquetar el cierre en Git
echo "Confirmando y etiquetando el cierre..."
git -C /finance add .
git -C /finance commit -m "Close ${MONTH}"
git -C /finance tag "close-${MONTH}"

echo "Mes ${MONTH} cerrado y etiquetado."

Por qué funciona

Este proceso es rápido y fiable porque se basa en unos pocos principios clave:

  • Aserciones, no miradas: La directiva balance convierte la conciliación en una prueba precisa y automatizada.
  • Entradas determinísticas: Los importadores automáticos y los metadatos normalizados hacen que tu libro mayor sea reproducible y consistente.
  • Datos explorables: Fava y BQL proporcionan herramientas potentes para validar resultados y profundizar en outliers al instante.
  • Cambios auditables: Los ajustes son asientos de texto plano, fáciles de revisar y comprender meses o años después.

Un buen cierre de mes es, sobre todo, logística. Con Beancount, puedes convertirlo en un ritual corto y scriptable: importar, afirmar, valorar, consultar y confirmar. Mantén el flujo de trabajo estable y tu cierre seguirá siendo rápido, incluso cuando tu vida financiera sea más compleja.

Gastos acumulados en Beancount: Guía práctica (con ejemplos de libro contable copy-paste)

· 8 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Los gastos acumulados suenan abstractos hasta que los cierres de fin de mes empiezan a apilarse. Son una piedra angular de la contabilidad de acumulación adecuada, garantizando que tus informes financieros reflejen la realidad económica, no solo cuando el efectivo cambia de manos. Aquí tienes una guía clara, centrada en Beancount, de qué son, por qué importan y exactamente cómo registrarlos, revertirlos e informarlos en tu libro contable de texto plano.

TL;DR ⚡

  • Los gastos acumulados son costos que has incurrido en este período pero que aún no has pagado. Se registran como una obligación hasta que salga el efectivo.
  • En Beancount, esto es simple: debitas una cuenta Expenses: y acreditas una cuenta Liabilities:Accrued:. Más tarde, eliminas la obligación cuando pagas.
  • Para informar, puedes ver lo que debes a una fecha específica ejecutando un bean-query con CLOSE ON y CLEAR para obtener una instantánea limpia del balance.

2025-08-24-accrued-expenses-in-beancount-a-practical-guide

¿Qué es un gasto acumulado?

Un gasto acumulado es un costo que una empresa ha incurrido, pero que aún no ha pagado. Se registra cuando se recibe el servicio o se incurre el costo, incluso si la factura no ha llegado o el pago aún no es exigible. Esta práctica sigue el principio de correlación de la contabilidad de acumulación, que dicta que los gastos deben registrarse en el mismo período que los ingresos que ayudaron a generar.

Ejemplos comunes incluyen:

  • Salarios devengados por los empleados al final de un mes pero pagados el siguiente.
  • Servicios públicos (electricidad, agua) que usaste en diciembre pero que no se facturarán hasta enero.
  • Intereses de un préstamo que se han acumulado durante el mes pero que aún no se han retirado de tu cuenta.

Al registrar estos costos cuando ocurren, obtienes una imagen mucho más fiel del desempeño financiero de tu empresa para ese período.

Cómo lo ve Beancount (en 30 segundos)

Beancount es un sistema de contabilidad de doble entrada en texto plano. Todo es una directiva o transacción fechada en un archivo de texto. El sistema se basa en cinco tipos de cuentas principales: Activos, Pasivos, Patrimonio, Ingresos y Gastos.

Las entradas siempre se ordenan por fecha. Un detalle clave es que las aserciones balance se verifican antes de que se procesen las transacciones del mismo día. Esto es importante al colocar verificaciones y asientos de reversión.

Finalmente, el lenguaje bean-query ofrece una forma poderosa, similar a SQL, de generar informes. Con operadores como OPEN ON, CLOSE ON y CLEAR, puedes crear vistas precisas “a fecha” para los estados financieros.

Tu plan de cuentas (sugerido)

Un plan de cuentas limpio y jerárquico es tu mejor aliado. Para los gastos acumulados, la estructura es sencilla. Necesitarás:

  • Una cuenta de gasto: p. ej., Expenses:Utilities, Expenses:Payroll:Wages
  • Una cuenta de pasivo correspondiente: p. ej., Liabilities:Accrued:Utilities, Liabilities:Accrued:Payroll
  • Tu cuenta de efectivo: p. ej., Assets:Bank:Checking

Beancount impone los cinco tipos de cuenta de nivel superior. Mantener tus nombres de cuenta organizados facilita las consultas y los informes a futuro.

El patrón básico (sin plugin, sin magia)

Esta es la forma más directa de manejar acumulaciones en Beancount. Implica dos pasos: acumular el gasto al final del mes y eliminar la obligación cuando pagas.

Paso 1: Acumular el gasto al final del mes

En el último día del período, registras el gasto y creas la obligación.

2025-02-28 * "Accrue February electricity" #accrual
Expenses:Utilities 120.00 USD
Liabilities:Accrued:Utilities

Paso 2: Eliminar la acumulación al pagar

Cuando llega la factura y la pagas, no vuelves a tocar la cuenta de gasto. En su lugar, debitas la cuenta de pasivo para eliminarla.

2025-03-05 * "Pay Feb electricity - City Power"
Liabilities:Accrued:Utilities 120.00 USD
Assets:Bank:Checking

Este es el enfoque más limpio para equipos pequeños. Coloca correctamente el gasto en febrero y asegura que no lo cuentes dos veces en marzo. Observa que en Beancount, dejar una cantidad en blanco permite que el sistema balancee automáticamente la transacción.

Alternativa: Asiento de reversión el día 1

Si prefieres el estilo clásico de contabilidad “auto‑reversión”, puedes publicar el opuesto de tu asiento de acumulación el primer día del mes siguiente. Luego, registras la factura real al gasto como lo harías normalmente.

Paso 1: Acumular al final del mes (igual que antes)

2025-02-28 * "Accrue February electricity" #accrual
Expenses:Utilities 120.00 USD
Liabilities:Accrued:Utilities

Paso 2: Revertir el primer día del mes siguiente

2025-03-01 * "Reverse Feb electricity accrual" #reversal
Liabilities:Accrued:Utilities 120.00 USD
Expenses:Utilities

Paso 3: Registrar el pago como de costumbre

2025-03-05 * "City Power - February bill"
Expenses:Utilities 120.00 USD
Assets:Bank:Checking

Aviso sobre verificaciones: Recuerda que las aserciones balance se evalúan antes de las transacciones del mismo día. Si deseas comprobar el saldo de Liabilities:Accrued:Utilities, coloca la aserción en 2025-02-28 para confirmar la acumulación o en 2025-03-01 después del asiento de reversión para confirmar que es cero. Colocarla antes de la reversión en 2025-03-01 provocará un error falso.

Seis acumulaciones comunes (patrones copy‑paste) 📋

Aquí tienes ejemplos listos para usar en acumulaciones empresariales habituales.

1. Alquiler no facturado

2025-01-31 * "Accrue January rent" #accrual
Expenses:Rent 3000.00 USD
Liabilities:Accrued:Rent

2. Salarios devengados pero no pagados

2025-03-31 * "Accrue March wages" #accrual
Expenses:Payroll:Wages 8500.00 USD
Liabilities:Accrued:Payroll

3. Pago de vacaciones (PTO) devengado

2025-03-31 * "Accrue PTO earned in March" #accrual
Expenses:Payroll:PTO 900.00 USD
Liabilities:Accrued:Payroll

4. Intereses acumulados sobre un préstamo

2025-02-29 * "Accrue monthly loan interest" #accrual
Expenses:Interest 210.00 USD
Liabilities:Accrued:Interest

5. Honorarios profesionales (auditoría/legal)

2025-12-31 * "Accrue year-end audit fees" #accrual
Expenses:Professional:Audit 4200.00 USD
Liabilities:Accrued:Professional

6. Servicios públicos usados pero no facturados

2025-04-30 * "Accrue April utilities" #accrual
Expenses:Utilities 95.00 USD
Liabilities:Accrued:Utilities

Informes: “¿Qué debo a una fecha determinada?”

bean-query es tu herramienta para obtener respuestas. Aquí tienes cómo obtener una instantánea adecuada del balance de tus gastos acumulados.

Obtener todos los saldos de pasivos acumulados al final del período

Esta consulta te da el saldo de cada cuenta de pasivo acumulado al 31 de marzo de 2025.

bean-query main.beancount '
SELECT account, UNITS(SUM(position)) AS balance
FROM OPEN ON 2025-01-01 CLOSE ON 2025-04-01 CLEAR
WHERE account "^Liabilities:Accrued"
GROUP BY 1
ORDER BY 1;
'
  • OPEN ON establece los saldos iniciales al comienzo del período.
  • CLOSE ON trunca las transacciones antes de esa fecha (es exclusivo). Por eso usamos 2025-04-01 para obtener datos hasta e incluyendo 2025-03-31.
  • CLEAR anula Ingresos y Gastos, dándote una vista limpia del balance (Activos, Pasivos, Patrimonio).

Ver un registro de todas las anotaciones de acumulación

Si deseas ver el historial bruto de transacciones para tus cuentas de acumulación:

bean-query main.beancount '
SELECT date, payee, narration, position
WHERE account "^Liabilities:Accrued"
ORDER BY date;
'

Obtener un total único de todas las acumulaciones

Para un resumen rápido del total que debes:

bean-query main.beancount '
SELECT UNITS(SUM(position)) AS total_accruals
FROM OPEN ON 2025-01-01 CLOSE ON 2025-04-01 CLEAR
WHERE account "^Liabilities:Accrued";
'

Controles y “gotchas” específicos de Beancount

  • Momento de las aserciones de balance: Como se mencionó, las aserciones verifican el balance al inicio del día. 2025-03-01 balance … se ejecuta antes de cualquier transacción del 2025-03-01. Planifica en consecuencia.
  • Nomenclatura y jerarquía: Un árbol ordenado como Liabilities:Accrued:* no es solo estética. Facilita tus consultas y hace que tus informes sean instantáneamente comprensibles.
  • Uso cuidadoso de pad: La directiva pad puede corregir saldos de apertura, pero evita usarla para “arreglar” acumulaciones recurrentes. Las entradas explícitas proporcionan una pista de auditoría clara.
  • Informes “a fecha”: Para instantáneas de balance, siempre prefiere OPEN … CLOSE … CLEAR en bean-query. Así evitas que cuentas de ingresos y gastos contaminen tus totales de pasivo.

Prepagado vs. Acumulado (contraste rápido)

Es fácil confundirlos. Son imágenes espejo:

  • Gasto acumulado: Servicio consumido ahora, efectivo pagado después. Genera un pasivo.
  • Gasto prepagado: Efectivo pagado ahora, servicio consumido después. Genera un activo.

La lógica contable es la misma en Beancount; solo cambian las cuentas (Assets:Prepaid:* vs. Liabilities:Accrued:*).

Plantilla lista para usar (inicio del archivo)

Estos son los directivos open que necesitarás para los ejemplos usados en este artículo. Añádelos al principio de tu archivo de libro contable una sola vez.

; --- Accounts (open once) ---
2025-01-01 open Assets:Bank:Checking
2025-01-01 open Expenses:Utilities
2025-01-01 open Expenses:Payroll:Wages
2025-01-01 open Expenses:Interest
2025-01-01 open Expenses:Professional:Audit
2025-01-01 open Liabilities:Accrued:Utilities
2025-01-01 open Liabilities:Accrued:Payroll
2025-01-01 open Liabilities:Accrued:Interest
2025-01-01 open Liabilities:Accrued:Professional

Notas finales

Si llevas tus libros bajo base de efectivo, no registrarás acumulaciones en absoluto: los gastos se registran simplemente cuando se pagan. Si trabajas bajo base de acumulación, usar los patrones anteriores es esencial para correlacionar costos con el período en que consumiste el servicio.

Los ejemplos aquí ofrecen una guía educativa general. Consulta siempre a tu contador público certificado para tratamientos específicos de la industria, especialmente en cuanto a bonos, impuestos sobre nómina y umbrales de capitalización.

Elección de S-Corp, Explicada para Usuarios de Beancount

· 17 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Qué es, cuándo vale la pena y cómo modelarlo limpiamente en su libro mayor (con ejemplos).

⚠️ Esta guía es específica para EE. UU. y solo tiene fines educativos. Consulte con un profesional de impuestos para su situación.

TL;DR

  • Una S-corp es un estado fiscal que elige con el IRS (a través del Formulario 2553) para que las ganancias comerciales pasen a las declaraciones de impuestos personales de los propietarios. Un requisito clave es que debe pagar a los propietarios-operadores un salario W-2 razonable antes de tomar cualquier ganancia como dividendos o distribuciones.
  • Las fechas límite importan: Para una empresa existente, debe presentar la solicitud a más tardar el 15º día del 3er mes del año fiscal en que desea que comience el estado de S-corp. Para una elección del año calendario 2025, el 15 de marzo de 2025 cae en sábado, por lo que la fecha límite práctica es el siguiente día hábil, lunes 17 de marzo de 2025.
  • ¿Por qué hacer esto? El principal atractivo es el potencial ahorro de impuestos sobre el trabajo por cuenta propia. Si bien su salario W-2 está sujeto a impuestos FICA, las distribuciones no lo están. Sin embargo, este beneficio conlleva costos adicionales de nómina, cumplimiento y, en algunos estados, impuestos adicionales a nivel de entidad.
  • En Beancount, es fundamental separar los salarios de las distribuciones. Deberá realizar un seguimiento de los pasivos de nómina, manejar la contabilidad especial del seguro médico para los accionistas que posean más del 2% de la empresa y registrar las distribuciones explícitamente a través de cuentas de capital.

2025-08-08-s-corp-election

¿Qué es una elección de S-corp?

En esencia, una elección de S-corp es una solicitud que realiza al IRS para cambiar la forma en que se gravan los impuestos de su empresa. Al presentar el Formulario 2553, le pide al IRS que grave los impuestos de su corporación o LLC según el Subcapítulo S del Código de Rentas Internas. Esto convierte a su empresa en una entidad "de transferencia", lo que significa que sus ingresos, pérdidas, deducciones y créditos se transfieren directamente a las declaraciones de impuestos personales de los accionistas. Es puramente una clasificación fiscal, no un tipo diferente de entidad comercial legal.

Efectos clave para un propietario-operador

Una vez que la elección está activa, su función se divide fundamentalmente en dos: ahora es tanto accionista como empleado de su empresa.

Esta distinción es crucial. La compensación que recibe por su trabajo debe pagarse como salario W-2, que está sujeto a los impuestos estándar sobre la nómina (Seguridad Social y Medicare). Cualquier ganancia restante se puede pagar como distribuciones, que generalmente no están sujetas a impuestos sobre el trabajo por cuenta propia. El IRS insiste en que se pague un salario razonable por su trabajo antes de tomar cualquier distribución.

¿Debería elegir el estado de S-corp?

A menudo vale la pena evaluar la elección de S-corp una vez que su empresa genera ganancias constantes y significativas. Una regla general común es considerarla cuando su ganancia comercial continua pueda respaldar cómodamente un salario a precio de mercado para su puesto, con suficiente restante para que las distribuciones valgan la pena después de cubrir todos los nuevos costos administrativos.

El punto de equilibrio exacto es único para su situación y depende de varios factores:

  • Su "Salario Razonable": ¿Qué pagaría una empresa por alguien con sus habilidades y responsabilidades en su industria? Esta cifra es la base de su salario W-2 y está sujeta al escrutinio del IRS.
  • Impuestos y Tarifas Estatales: Algunos estados tienen sus propias reglas. California, por ejemplo, impone un impuesto del 1.5% sobre los ingresos netos de una S-corp, más un impuesto mínimo anual de franquicia de $800.
  • Costos Adicionales: Necesitará un servicio de nómina y pagará un seguro de desempleo. Sus tarifas de contabilidad y preparación de impuestos también probablemente aumentarán debido a la complejidad adicional.
  • Deducción QBI (Sección 199A): La elección de S-corp puede afectar su deducción de Ingresos Comerciales Calificados. El salario W-2 que se paga a sí mismo puede ayudarlo a calificar para la deducción completa o, en niveles de ingresos más altos, convertirse en un factor limitante.

Elegibilidad y Cronograma

No todas las empresas pueden convertirse en una S-corp. Estos son los requisitos de alto nivel:

  • Debe ser una corporación nacional o una LLC elegible.
  • No puede tener más de 100 accionistas.
  • Solo puede tener una clase de acciones.
  • Los accionistas deben ser individuos, ciertos fideicomisos o patrimonios (es decir, no sociedades, corporaciones o accionistas extranjeros no residentes).

Cuándo presentar el Formulario 2553

El tiempo es crítico y las reglas difieren ligeramente para las empresas nuevas y las existentes.

  • Para una empresa nueva: Debe presentar la solicitud dentro de 2 meses y 15 días después del primer día de su primer año fiscal. Por ejemplo, si el año fiscal de su empresa comienza el 7 de enero, su fecha límite es el 21 de marzo.
  • Para una C-corp existente (o una LLC gravada como una C-corp): Puede presentar la solicitud en cualquier momento durante el año fiscal anterior o antes del 15º día del 3er mes del año en que desea que la elección entre en vigor. Si esta fecha cae en fin de semana o feriado, la fecha límite se traslada al siguiente día hábil, una disposición otorgada por la Sección 7503 del IRC.

¿Qué sucede si no cumple con la fecha límite? No se asuste. El IRS proporciona una vía para el alivio de elecciones tardías bajo el Procedimiento de Ingresos 2013-30. A menudo puede solicitar este alivio dentro de los 3 años y 75 días posteriores a la fecha de entrada en vigor prevista, siempre que tenga una causa razonable para la presentación tardía.

Salario Razonable: La Parte Que Hace Tropezar a la Gente

Este es el aspecto más escrutado de la estructura de S-corp. El IRS es muy claro: a los empleados-accionistas se les debe pagar una compensación razonable por los servicios que brindan antes de que se tomen las ganancias como distribuciones.

¿Qué significa "razonable"? No hay una cantidad única en dólares. El IRS y los tribunales analizan una variedad de factores para determinar si su salario es apropiado, incluidos sus deberes y responsabilidades, el tiempo que dedica al trabajo, su nivel de experiencia y lo que las empresas comparables pagarían por servicios similares. Espere que el IRS lo examine detenidamente si se paga un salario W-2 muy bajo mientras toma grandes distribuciones. Esto a menudo se considera una señal de alerta para intentar evadir los impuestos sobre la nómina.

Seguro Médico y Beneficios Adicionales para Accionistas >2%

Existe una regla especial sobre cómo las S-corp manejan el seguro médico para los accionistas que poseen más del 2% de la empresa. Si la S-corp paga o reembolsa estas primas de seguro médico, el costo es deducible por la S-corp.

Sin embargo, el valor de esas primas también debe incluirse en el salario W-2 del empleado-accionista. Si bien esta cantidad está sujeta a retención del impuesto federal sobre la renta, está exenta de los impuestos de Seguridad Social y Medicare (FICA) siempre que se maneje correctamente. Debe coordinarse con su proveedor de nómina para garantizar que estas cantidades se informen correctamente en su W-2.

Problemas a Nivel Estatal (Ejemplos)

El estado federal de S-corp no siempre se traduce directamente a nivel estatal. Siempre verifique las reglas específicas de su estado.

  • California: Las S-corp están sujetas a un impuesto del 1.5% sobre sus ingresos netos de origen de California. Además, la mayoría de las corporaciones deben pagar un impuesto mínimo de franquicia de $800 cada año (aunque se aplican algunas excepciones para el primer año).
  • Nueva York: Hacer una elección federal de S-corp no es suficiente. También debe presentar una elección separada a nivel estatal, el Formulario CT-6, para ser tratado como una corporación S de Nueva York. Si no lo hace, significa que se le gravarán impuestos como una C-corp estándar a nivel estatal.

Cómo Modelar una S-corp Limpiamente en Beancount

La contabilidad de texto plano es perfecta para gestionar la complejidad añadida de una S-corp. A continuación, se explica cómo estructurar su libro mayor.

Plan de Cuentas Sugerido (Inicial)

Esta estructura básica separa sus gastos de nómina de las distribuciones y crea cuentas de pasivo para rastrear los impuestos que debe.

; Banco y ingresos principales
1970-01-01 open Assets:Bank:Checking USD
1970-01-01 open Income:Sales USD
1970-01-01 open Income:Other USD

; Gastos y pasivos de nómina
1970-01-01 open Expenses:Payroll:Wages USD
1970-01-01 open Expenses:Payroll:EmployerTaxes USD
1970-01-01 open Expenses:Benefits:HealthInsurance USD
1970-01-01 open Liabilities:Payroll:Federal:FIT USD
1970-01-01 open Liabilities:Payroll:FICA USD
1970-01-01 open Liabilities:Payroll:Medicare USD
1970-01-01 open Liabilities:Payroll:State:Withholding USD

; Capital
1970-01-01 open Equity:ContributedCapital USD
1970-01-01 open Equity:Distributions USD
1970-01-01 open Equity:RetainedEarnings USD

Ejecución de Nómina Típica (Simplificada)

Su proveedor de nómina (por ejemplo, Gusto, ADP) debitará de su cuenta bancaria su pago neto y la obligación tributaria total. Su transacción de Beancount debe desglosar esto en el salario bruto, los impuestos del empleador y los pasivos correspondientes.

; Esta transacción registra un salario anual de $100k, pagado mensualmente.
2025-01-31 * "Gusto" "Nómina de enero — empleado-accionista"
Expenses:Payroll:Wages 8,333.33 USD ; Salario bruto
Expenses:Payroll:EmployerTaxes 637.50 USD ; FICA/Medicare del empleador
Liabilities:Payroll:Federal:FIT -1,200.00 USD ; Retención del empleado
Liabilities:Payroll:FICA -516.67 USD ; Retención del empleado
Liabilities:Payroll:Medicare -120.83 USD ; Retención del empleado
Assets:Bank:Checking -7,133.33 USD ; Pago neto debitado del banco

Cuando su proveedor de nómina remita esos impuestos al gobierno en su nombre, registrará otra transacción para liquidar los pasivos.

; Esto representa el pago de impuestos realizado por su proveedor de nómina.
2025-02-15 * "EFTPS" "Depósito de impuestos federales sobre la nómina"
Liabilities:Payroll:Federal:FIT 1,200.00 USD
Liabilities:Payroll:FICA 516.67 USD
Liabilities:Payroll:Medicare 120.83 USD
Assets:Bank:Checking -1,837.50 USD ; Esta cantidad coincide con la porción de impuestos del débito de Gusto.

Seguro Médico para un Accionista >2%

Registre el pago de la prima como un gasto comercial. Puede usar metadatos para recordarse a sí mismo que esto debe informarse en el W-2.

2025-02-01 * "BlueCross" "Seguro médico del accionista (informar en el W-2)"
Expenses:Benefits:HealthInsurance 600.00 USD ; w2: "true"
Assets:Bank:Checking -600.00 USD

Distribuciones del Propietario (No Salarios)

Las distribuciones son una reducción del capital, no un gasto comercial. Regístrelas por separado de la nómina.

2025-03-31 * "Distribución del Propietario" "Distribución del primer trimestre"
Equity:Distributions 20,000.00 USD
Assets:Bank:Checking -20,000.00 USD

Seguimiento de la Base del Accionista (Opcional, pero Recomendado)

Su base de accionista determina si las distribuciones están libres de impuestos y si puede deducir las pérdidas comerciales en su declaración personal. Si bien el cálculo oficial se realiza en su declaración de impuestos, puede realizar un seguimiento de una estimación en Beancount utilizando una subcuenta de capital dedicada o metadatos. Conciliarás esto con el Anexo K-1 que recibes de la S-corp anualmente.

Una Nota sobre la Deducción QBI (Sección 199A)

Los propietarios de empresas de transferencia, incluidas las S-corp, pueden ser elegibles para una deducción de hasta el 20% sobre sus ingresos comerciales calificados (QBI). Sin embargo, para los contribuyentes con ingresos por encima de cierto umbral, esta deducción puede estar limitada por la cantidad de salarios W-2 que paga la empresa. Esto crea una interacción compleja: se requiere pagar un salario razonable para una S-corp, y esos mismos salarios pueden afectar su deducción QBI, a veces ayudándola, a veces limitándola. Esta es un área clave para modelar con su profesional de impuestos.

¿Qué Cambia Operativamente Después de que Elige?

Cambiar a una S-corp agrega algunas capas administrativas:

  • Ejecutar Nómina: Debe ejecutar formalmente la nómina, con retenciones de impuestos, pagos de impuestos del empleador, presentaciones trimestrales y W-2 de fin de año.
  • Presentar el Formulario 1120-S: Esta es la declaración anual de impuestos de la corporación S. También emitirá un Anexo K-1 a cada accionista detallando su parte de los resultados financieros de la empresa.
  • Manejar el Seguro Médico del Accionista Correctamente: Asegúrese de que las primas para los propietarios de >2% estén incluidas en sus salarios W-2.
  • Cumplir con las Reglas Estatales: Manténgase al tanto de cualquier elección de S-corp a nivel estatal requerida o impuestos a nivel de entidad (como en CA y NY).

Errores Comunes que Debe Evitar

  • Elección Tardía o Inválida: Verifique las fechas límite y asegúrese de que todos los accionistas requeridos firmen el Formulario 2553. Si no lo cumple, investigue el alivio bajo el Proc. de Ingresos 2013-30.
  • Salario Irrazonable: No se sienta tentado a pagarse un salario artificialmente bajo. Documente por qué su compensación es razonable según su puesto y los datos del mercado.
  • Mezclar Salarios y Distribuciones: Mantenga estas transacciones limpias y separadas en sus libros. Las distribuciones no son nómina.
  • Ignorar los Requisitos Estatales: Olvidar una elección estatal o no pagar un impuesto a nivel de entidad puede generar sanciones y dolores de cabeza de cumplimiento.

Lista de Verificación Rápida

  • Confirme que es elegible y que los ahorros fiscales potenciales superan los nuevos costos.
  • Anote en el calendario la fecha límite de presentación del Formulario 2553 (y recuerde la regla de fin de semana/feriado).
  • Configure un servicio de nómina y determine un salario razonable bien documentado.
  • Planee tomar distribuciones solo después de que se paguen el salario y los gastos comerciales.
  • Investigue y cumpla con los requisitos de presentación y los impuestos específicos de S-corp de su estado.
  • Actualice su libro mayor de Beancount con las cuentas necesarias para la nómina, los pasivos y el capital de los accionistas.

Beancount S‑Corp Starter (plantilla neutral)

;
; Beancount S‑Corp Starter (plantilla neutral)
; Generado: 2025-08-09
; ---
; Cómo usar esto:
; 1) Busque "TODO" y complete su(s) estado(s), proveedor de nómina, EIN y nombres de bancos.
; 2) Mantenga los salarios y las distribuciones del propietario separados.
; 3) Coordine con su proveedor de nómina para informar el seguro médico de los accionistas >2% en el W‑2 (Casilla 1).
; 4) Elimine o adapte los ejemplos de CA/NY si se encuentra en un estado diferente.
;
; Notas:
; - Esta es una plantilla de contabilidad, no un consejo fiscal.
; - Moneda operativa asumida USD. Cámbiela según sea necesario.
;

option "title" "Libro Mayor de S‑Corp"
option "operating_currency" "USD"
commodity USD

; === Cuentas (abiertas al 2025-01-01; ajuste las fechas según sea necesario) ==================
2025-01-01 open Assets:Bank:Checking USD ; TODO: Cambiar el nombre a su banco (por ejemplo, Assets:Bank:Chase:Operating)
2025-01-01 open Assets:Bank:Savings USD
2025-01-01 open Assets:AccountsReceivable USD
2025-01-01 open Assets:PrepaidExpenses USD

2025-01-01 open Liabilities:CreditCard:Corporate USD
2025-01-01 open Liabilities:Payroll:Federal:FIT USD
2025-01-01 open Liabilities:Payroll:Federal:FICA USD
2025-01-01 open Liabilities:Payroll:Federal:Medicare USD
2025-01-01 open Liabilities:Payroll:Federal:FUTA USD
2025-01-01 open Liabilities:Payroll:State:Withholding USD ; TODO: Cambiar el nombre del estado (por ejemplo, CA, NY)
2025-01-01 open Liabilities:Payroll:State:Unemployment USD
2025-01-01 open Liabilities:Payroll:Local USD

2025-01-01 open Equity:ContributedCapital USD
2025-01-01 open Equity:Distributions USD
2025-01-01 open Equity:RetainedEarnings USD
2025-01-01 open Equity:OpeningBalances USD

2025-01-01 open Income:Sales USD
2025-01-01 open Income:Other USD

2025-01-01 open Expenses:COGS USD
2025-01-01 open Expenses:Payroll:Wages USD
2025-01-01 open Expenses:Payroll:EmployerTaxes:FICA USD
2025-01-01 open Expenses:Payroll:EmployerTaxes:Medicare USD
2025-01-01 open Expenses:Payroll:EmployerTaxes:FUTA USD
2025-01-01 open Expenses:Payroll:EmployerTaxes:State USD
2025-01-01 open Expenses:Benefits:HealthInsurance USD
2025-01-01 open Expenses:Benefits:HSA USD
2025-01-01 open Expenses:Benefits:Retirement:Match USD
2025-01-01 open Expenses:Taxes:State:S‑Corp USD ; por ejemplo, impuesto de nivel de entidad del 1.5% de CA
2025-01-01 open Expenses:Taxes:State:Franchise USD ; por ejemplo, impuesto mínimo de franquicia de $800 de CA
2025-01-01 open Expenses:Professional:Payroll USD
2025-01-01 open Expenses:Professional:Accounting USD
2025-01-01 open Expenses:Professional:Legal USD
2025-01-01 open Expenses:BankFees USD
2025-01-01 open Expenses:Software USD
2025-01-01 open Expenses:Office USD
2025-01-01 open Expenses:Meals USD
2025-01-01 open Expenses:Travel USD
2025-01-01 open Expenses:Insurance:GeneralLiability USD

; === Ejemplo: Capitalización del propietario =================================================
2025-01-02 * "Propietario" "Aporte inicial de capital"
Assets:Bank:Checking 25,000.00 USD
Equity:ContributedCapital -25,000.00 USD

; === Ejemplo: Pago del cliente =====================================================
2025-01-15 * "Stripe" "Recibos de suscripción de enero"
Assets:Bank:Checking 12,000.00 USD
Income:Sales -12,000.00 USD

; === Ejemplo: Nómina mensual (empleado-accionista único) ========================
; Números elegidos para equilibrar perfectamente. Adapte los números de FIT/Estado a su realidad.
; Salario bruto: 8,333.33 | FIT del empleado: 1,200.00 | Retención estatal: 300.00
; FICA del empleado (6.2%): 516.67 | Medicare del empleado (1.45%): 120.83
; FICA del empleador: 516.67 | Medicare del empleador: 120.83
; Pago neto: 6,195.83
2025-01-31 * "Gusto" "Nómina de enero — empleado-accionista"
Expenses:Payroll:Wages 8,333.33 USD
Expenses:Payroll:EmployerTaxes:FICA 516.67 USD
Expenses:Payroll:EmployerTaxes:Medicare 120.83 USD
Liabilities:Payroll:Federal:FIT -1,200.00 USD
Liabilities:Payroll:Federal:FICA -1,033.34 USD ; empleado + empleador
Liabilities:Payroll:Federal:Medicare -241.66 USD ; empleado + empleador
Liabilities:Payroll:State:Withholding -300.00 USD
Assets:Bank:Checking -6,195.83 USD

; === Ejemplo: Depósitos de impuestos sobre la nómina (EFTPS y estatales) =================================
2025-02-15 * "EFTPS" "Depósito federal de nómina (FIT, FICA, Medicare)"
Liabilities:Payroll:Federal:FIT 1,200.00 USD
Liabilities:Payroll:Federal:FICA 1,033.34 USD
Liabilities:Payroll:Federal:Medicare 241.66 USD
Assets:Bank:Checking -2,475.00 USD

2025-02-16 * "STATE DOR" "Retención estatal de nómina"
Liabilities:Payroll:State:Withholding 300.00 USD
Assets:Bank:Checking -300.00 USD

; === Ejemplo: Seguro médico para accionistas >2% =================================
; Coordine con la nómina para que el total de la prima anual se incluya en el W‑2 Casilla 1.
; La prima en sí es deducible aquí; NO retenga SS/Medicare sobre ella cuando se maneje correctamente.
2025-02-01 * "BlueCross" "Seguro médico del accionista (la inclusión del W‑2 la maneja la nómina)"
Expenses:Benefits:HealthInsurance 600.00 USD ; w2: "true"
Assets:Bank:Checking -600.00 USD

; === Ejemplo: Distribución del propietario (no salarios) =======================================
2025-03-31 * "Distribución del Propietario" "Distribución del primer trimestre"
Equity:Distributions 20,000.00 USD
Assets:Bank:Checking -20,000.00 USD

; === Ejemplos estatales (elimine/edite si no corresponde) =================================
; Impuesto mínimo de franquicia de California (no siempre el primer año; verifique las reglas)
2025-04-15 * "California FTB" "Impuesto anual de franquicia"
Expenses:Taxes:State:Franchise 800.00 USD
Assets:Bank:Checking -800.00 USD

; Impuesto de nivel de entidad del 1.5% de California S‑Corp (ejemplo de pago estimado)
2025-06-15 * "California FTB" "Estimación de impuestos de S‑Corp"
Expenses:Taxes:State:S‑Corp 1,500.00 USD
Assets:Bank:Checking -1,500.00 USD

; La elección S separada de Nueva York (CT‑6) no tiene impacto directo en el libro mayor; nota de marcador de posición.
2025-01-05 note Equity:RetainedEarnings "Elección S de NY (CT‑6) presentada — solo nota de contabilidad (sin entrada)"

; === Seguimiento de la base (opcional — memorándum fuera del libro) =====================================
2025-12-31 note Equity:RetainedEarnings "Prórroga de la base: +Capital 25,000 +Ingresos 60,000 −Distribuciones 20,000 = Base final 65,000 (conciliar con K‑1)"

; === Sugerencias de importación (CSV de Gusto/ADP) =============================================
; - Para los CSV del registro de nómina de Gusto, asigne columnas:
; Pago bruto -> Expenses:Payroll:Wages
; FIT/FICA/Medicare del empleado -> Liabilities:Payroll:Federal:FIT/FICA/Medicare (negativo)
; Retención estatal -> Liabilities:Payroll:State:Withholding (negativo)
; FICA/Medicare/FUTA/SUTA del empleador -> Expenses:Payroll:EmployerTaxes:* (positivo) Y
; si su CSV enumera los impuestos del empleador como montos adeudados, refléjelos como Liabilities:* (negativo),
; luego liquide con sus pagos de EFTPS/estatales.
; Pago neto -> Assets:Bank:Checking (negativo, coincide con la fecha de pago)
; - Seguro médico pagado por la empresa:
; Pago del proveedor -> Expenses:Benefits:HealthInsurance (positivo) / Banco (negativo);
; asegúrese de que la nómina incluya la prima anual en el W‑2 Casilla 1 para los accionistas >2%.
;
; Consejos:
; - Mantenga las distribuciones fuera de las cuentas de nómina.
; - Use etiquetas como #nómina #distribución para filtrar en Fava.
; - Considere subcuentas bancarias separadas para reservas de impuestos (federales/estatales).

Experiencia del usuario y comentarios sobre la contabilidad de texto plano asistida por LLM

· 6 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

La contabilidad de texto plano (CTP) ha sido durante mucho tiempo el arma secreta de los nerds de las finanzas expertos en tecnología. Al utilizar archivos de texto simples y herramientas como Beancount o Ledger, se obtiene un control, una transparencia y una propiedad sin precedentes sobre sus datos financieros. Pero seamos honestos, siempre ha tenido la reputación de ser, bueno, un dolor de cabeza. La curva de aprendizaje es pronunciada, la entrada de datos es tediosa y una coma fuera de lugar puede enviarlo a una frustrante búsqueda de depuración.

Pero, ¿qué pasaría si pudiera tener el poder de la CTP sin el dolor? Aquí entran los Modelos de Lenguaje Grande (LLM). La IA está comenzando a introducirse en todos los rincones del flujo de trabajo de la CTP, prometiendo automatizar las tareas aburridas y hacer que este poderoso sistema sea accesible para todos. Basándonos en un análisis profundo de los comentarios de los usuarios, exploremos cómo la IA está revolucionando la contabilidad de texto plano y si está a la altura de las expectativas.


La vieja usanza: El trabajo manual de la CTP

Durante años, la experiencia de la CTP se ha definido por algunos obstáculos comunes:

  • El muro de la intimidación: Los recién llegados a menudo se sienten abrumados. Como admitió un usuario, "Estuve intimidado durante años... pero parecía útil y eventualmente valdría la pena." Entre aprender la contabilidad de partida doble y navegar por las herramientas de línea de comandos, empezar es difícil.
  • El ciclo "Editar-Compilar-Depurar": A diferencia del software GUI que le grita en cuanto comete un error, los errores de la CTP a menudo se ocultan hasta que ejecuta una comprobación. Este lento ciclo de retroalimentación se siente como depurar código, convirtiendo una simple tarea de entrada de datos en una tarea pesada.
  • La pesadilla de la importación: Introducir sus datos en el sistema es un gran cuello de botella. A menudo implica descargar manualmente archivos CSV de varios bancos, limpiarlos y ejecutar scripts personalizados, un proceso frágil y que consume mucho tiempo. Un usuario pasó "unas 4 horas poniéndose al día con la importación de los últimos ~8 meses" de transacciones, incluso con cierta automatización.

Llega el asistente de IA: Cómo los LLM están reduciendo la carga de trabajo

Aquí es donde la IA está cambiando las reglas del juego, actuando como un poderoso asistente para manejar las partes más tediosas de la CTP.

Automatizando el trabajo pesado: Categorización e importaciones

Esta es la fruta madura para la IA. En lugar de escribir reglas complejas para averiguar qué es "STARBUCKS #12345", simplemente puede preguntarle a un LLM.

Los usuarios informan de un gran éxito al alimentar las descripciones de las transacciones a modelos como GPT-4 y obtener categorizaciones perfectas, como Expenses:Food:Coffee. Herramientas como Beanborg incluso están integrando ChatGPT para sugerir inteligentemente categorías cuando sus propias reglas fallan.

Aún mejor, los LLM se están convirtiendo en importadores de datos sobre la marcha. En lugar de escribir un script de Python para analizar el desordenado archivo CSV de un banco, ahora puede pegar los datos en una ventana de chat y pedirle a la IA que los convierta al formato Beancount. No siempre es 100 % perfecto, pero convierte horas de codificación en unos pocos minutos de ingeniería de prompts.

Haciendo que la CTP sea menos aterradora: Incorporación y manejo de errores

¿Ese muro inicial de intimidación? Los LLM están ayudando a los usuarios a escalarlo. Un nuevo usuario describió el uso de GPT-4 como un "tutor que lo lleva de la mano" para guiarlo en la configuración de su primer archivo de libro mayor. La IA explicó los conceptos, generó ejemplos de entradas y les ayudó a desarrollar la confianza para hacerlo solos.

La IA también proporciona la retroalimentación en tiempo real que la CTP siempre ha carecido. Los desarrolladores están creando extensiones de editor que utilizan LLM para comprobar su sintaxis mientras escribe, destacando los desequilibrios o errores con la familiar línea roja ondulada. Imagine una IA que no solo marca un error, sino que también explica por qué está mal y sugiere una solución.

Conversando con sus finanzas

Quizás el desarrollo más emocionante es el auge del análisis conversacional. En lugar de escribir una consulta específica de línea de comandos, ahora puede simplemente hacerle preguntas a su libro mayor en lenguaje natural.

Los usuarios están experimentando con la exportación de sus datos y el uso de herramientas como Claude para preguntar cosas como, "¿Cuánto gasté en comestibles en marzo en comparación con abril?" La IA puede analizar los datos, detectar tendencias e incluso ofrecer información. En el mundo empresarial, empresas como Puzzle.io ofrecen bots de Slack que permiten a los ejecutivos consultar las finanzas de la empresa en tiempo real. Este tipo de interfaz de lenguaje natural es un cambio de juego para hacer que los datos financieros sean accesibles.


La trampa: No despida a su cerebro todavía

Si bien las posibilidades son emocionantes, los usuarios tienen razón al ser cautelosos. Dos preocupaciones importantes surgen constantemente: la privacidad y la confianza.

  • La privacidad es primordial: Su historial financiero es increíblemente sensible. Como dijo un usuario, "Me preocupa estar alimentando alguna API con mi historial financiero." Enviar sus datos a un servicio en la nube de terceros como OpenAI es impensable para muchos. ¿La solución? Un número creciente de usuarios está ejecutando LLM de código abierto localmente en sus propias máquinas, asegurando que sus datos nunca salgan de su control.

  • Confiar, pero verificar: Los LLM pueden estar equivocados con confianza. A veces "alucinan" nombres de cuentas o cometen pequeños errores matemáticos que desequilibran una entrada. El consenso de la comunidad es claro: utilice la IA como asistente, no como un contable autónomo. Siempre ejecute su libro mayor a través de una comprobación final (bean-check) y mantenga a un humano en el ciclo para la aprobación final.


El futuro es aumentado, no reemplazado

La asistencia de LLM está transformando rápidamente la contabilidad de texto plano de un sistema de nicho, solo para expertos, en una herramienta poderosa que se vuelve más accesible cada día. La IA es fantástica para manejar las partes repetitivas y abrumadoras de la contabilidad: entrada de datos, categorización y análisis.

Esto libera a los humanos para hacer lo que mejor saben hacer: revisar, interpretar y tomar decisiones. El futuro no se trata de dejar que un robot administre su dinero. Se trata de una asociación donde la IA hace el trabajo pesado, brindándole los datos limpios y precisos que necesita para comprender verdaderamente su historia financiera.

Como dijo acertadamente un usuario, "Dejemos que los robots hagan la contabilidad repetitiva, para que los humanos puedan concentrarse en la comprensión y la toma de decisiones." Con ese enfoque equilibrado, el mundo, una vez doloroso, de la contabilidad de texto plano se ve más brillante que nunca.

Ventaja técnica de Beancount frente a Ledger, hledger y GnuCash

· 7 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Elegir un sistema de contabilidad personal implica encontrar un equilibrio entre rendimiento, arquitectura de datos y extensibilidad. Para los ingenieros y otros usuarios técnicos, la elección a menudo se reduce a qué sistema proporciona la base más robusta, predecible y programable.

A partir de un informe comparativo detallado, analicemos las especificaciones técnicas de Beancount frente a sus homólogos de código abierto más populares: Ledger-CLI, hledger y GnuCash.

2025-07-22-beancounts-technical-edge-a-deep-dive-on-performance-python-api-and-data-integrity-vs-ledger-hledger-and-gnucash


Velocidad y rendimiento: Pruebas de rendimiento cuantitativas 🚀

Para cualquier conjunto de datos serio, el rendimiento es innegociable. Beancount está diseñado para manejar décadas de datos transaccionales sin comprometer la velocidad. A pesar de estar implementado en Python (v2), su analizador sintáctico altamente optimizado es notablemente eficiente.

  • Beancount: El uso en el mundo real muestra que puede cargar y procesar libros contables con cientos de miles de transacciones en aproximadamente 2 segundos. El uso de memoria es modesto; analizar ~100k transacciones convierte el texto fuente en objetos en memoria utilizando solo decenas de megabytes de RAM.
  • La prueba de estrés de 1 millón de transacciones: Una prueba de rendimiento utilizando un libro contable sintético de 1 millón de transacciones, 1000 cuentas y 1 millón de entradas de precios reveló diferencias arquitectónicas significativas:
    • hledger (Haskell): Completó con éxito un análisis e informe completo en ~80,2 segundos, procesando ~12 465 transacciones/seg mientras usaba ~2,58 GB de RAM.
    • Ledger-CLI (C++): El proceso se terminó después de 40 minutos sin completarse, probablemente debido a una regresión conocida que causa un uso excesivo de memoria y CPU con libros contables muy complejos.
    • Beancount: Si bien no se incluyó en esa prueba específica de 1 millón, su curva de rendimiento sugiere que manejaría la tarea de manera eficiente. Además, se espera que el próximo Beancount v3, con su nuevo núcleo de C++ y API de Python, ofrezca otra mejora de un orden de magnitud en el rendimiento.
  • GnuCash (C/Scheme): Como una aplicación GUI que carga todo su conjunto de datos en la memoria, el rendimiento se degrada notablemente con el tamaño. Un archivo XML de ~50 MB (que representa más de 100 000 transacciones) tardó 77 segundos en abrirse. Cambiar al backend de SQLite solo mejoró marginalmente esto a ~55 segundos.

Conclusión: Beancount proporciona un rendimiento excepcional que escala de forma predecible, una característica crucial para la gestión de datos a largo plazo. Evita los problemas de rendimiento observados en Ledger y la latencia ligada a la interfaz de usuario de GnuCash.


Arquitectura de datos: Texto plano vs. Bases de datos opacas 📄

La forma en que un sistema almacena sus datos dicta su transparencia, portabilidad y durabilidad. Beancount utiliza un formato de texto plano limpio y legible por humanos que es superior para los usuarios técnicos.

  • Compacto y eficiente: Un archivo Beancount de 100 000 transacciones tiene solo ~8,8 MB. Esto es más compacto que el archivo Ledger equivalente (~10 MB) en parte porque la sintaxis de Beancount permite la inferencia del monto de saldo final en una transacción, reduciendo la redundancia.
  • Estructuralmente forzado: Beancount exige directivas explícitas YYYY-MM-DD\ open\ Account. Este enfoque disciplinado evita que los errores tipográficos en los nombres de las cuentas creen silenciosamente cuentas nuevas e incorrectas, un error común en sistemas como Ledger y hledger que crean cuentas sobre la marcha. Esta estructura hace que los datos sean más fiables para la manipulación programática.
  • Listo para el control de versiones: Un libro contable de texto plano es perfectamente adecuado para el control de versiones con Git. Obtiene un historial completo y auditable de cada cambio financiero que realiza.
  • Contraste con GnuCash: GnuCash utiliza por defecto un archivo XML comprimido con gzip, donde los datos son detallados y están envueltos en etiquetas con GUID para cada entidad. Si bien ofrece backends SQLite, MySQL y PostgreSQL, esto abstrae los datos de la manipulación y el control de versiones de texto simple y directo. Es posible editar el XML sin formato, pero es mucho más engorroso que editar un archivo Beancount.

Conclusión: El formato de datos de Beancount no es solo texto; es un lenguaje bien definido que maximiza la claridad, impone la corrección y se integra perfectamente con herramientas de desarrollo como git y grep.


La característica clave: Una verdadera API de Python y arquitectura de plugins 🐍

Esta es la ventaja técnica que define a Beancount. No es una aplicación monolítica, sino una biblioteca con una API de Python estable y de primera clase. Esta decisión de diseño desbloquea posibilidades ilimitadas de automatización e integración.

  • Acceso programático directo: Puede leer, consultar y manipular los datos de su libro contable directamente en Python. Es por eso que los desarrolladores migran. Como señaló un usuario, la frustración de intentar crear scripts contra los enlaces internos mal documentados de Ledger se evapora con Beancount.
  • Canalización de plugins: El cargador de Beancount le permite insertar funciones personalizadas de Python directamente en la canalización de procesamiento. Esto permite transformaciones y validaciones arbitrarias en el flujo de datos a medida que se carga, por ejemplo, escribir un plugin para exigir que cada gasto de un proveedor específico deba tener una determinada etiqueta.
  • Potente marco de importación: Vaya más allá de los torpes asistentes de importación de CSV. Con Beancount, escribe scripts de Python para analizar estados financieros de cualquier fuente (OFX, QFX, CSV). Las herramientas comunitarias como smart_importer incluso aprovechan los modelos de aprendizaje automático para predecir y asignar cuentas de registro automáticamente, convirtiendo horas de categorización manual en un proceso de un comando de segundos de duración.
  • Cómo se comparan los demás:
    • Ledger/hledger: La extensibilidad es principalmente externa. Canaliza datos hacia/desde el ejecutable. Si bien pueden generar JSON/CSV, no puede inyectar lógica en su ciclo de procesamiento central sin modificar el código fuente de C++/Haskell.
    • GnuCash: La extensibilidad se maneja a través de una curva de aprendizaje pronunciada con Guile (Scheme) para informes personalizados o a través de enlaces de Python (usando SWIG y bibliotecas como PieCash) que interactúan con el motor GnuCash. Es potente pero menos directo y "pitónico" que el enfoque de biblioteca nativa de Beancount.

Conclusión: Beancount está diseñado para el programador. Su diseño de biblioteca primero y su profunda integración con Python lo convierten en el sistema más flexible y automatizable de los cuatro.


Filosofía: Un compilador estricto para sus finanzas 🤓

La curva de aprendizaje de Beancount es un resultado directo de su filosofía central: sus datos financieros son un lenguaje formal y deben ser correctos.

El analizador sintáctico de Beancount funciona como un compilador estricto. Realiza una validación sintáctica y lógica robusta. Si una transacción no cuadra o una cuenta no se ha abierto, se negará a procesar el archivo y devolverá un error descriptivo con un número de línea. Esta es una característica, no un error. Garantiza que si su archivo "compila", los datos subyacentes son estructuralmente sólidos.

Este enfoque determinista garantiza un nivel de integridad de datos que es invaluable para construir sistemas automatizados confiables sobre él. Puede escribir scripts que consuman la salida de Beancount con confianza, sabiendo que los datos ya han sido validados rigurosamente.

¿Para quién es Beancount?

Basado en este análisis técnico, Beancount es la opción óptima para:

  • Desarrolladores e ingenieros que desean tratar sus finanzas como un conjunto de datos programable y controlado por versiones.
  • Manipuladores de datos que desean escribir consultas personalizadas, crear visualizaciones únicas con herramientas como Fava o alimentar sus datos financieros en otros modelos analíticos.
  • Cualquiera que valore la corrección y la automatización demostrables sobre la conveniencia de una GUI o la indulgencia de un formato menos estructurado.

Si desea un rendimiento de C++ sin procesar para informes estándar, Ledger es un competidor. Para una escalabilidad excepcional en un paradigma de programación funcional, hledger es impresionante. Para una GUI repleta de funciones con una configuración mínima, GnuCash sobresale.

Pero si desea construir un sistema de gestión financiera verdaderamente robusto, automatizado y profundamente personalizado, Beancount proporciona la base técnica superior.

La Guía Completa de Contabilidad de Criptomonedas con Beancount.io

· 13 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

¿Estás abrumado por las transacciones de criptomonedas en múltiples exchanges, luchando con la complejidad de DeFi o entrando en pánico por la temporada de impuestos? No estás solo. El panorama de las criptomonedas ha explotado, pasando de simples compras de Bitcoin a un sofisticado ecosistema de protocolos DeFi, recompensas por staking, yield farming y actividades entre cadenas que desafían los métodos contables tradicionales.

Aquí está la dura realidad: cada transacción de criptomonedas es potencialmente gravable, y el IRS está observando. Ya seas un tenedor ocasional de Bitcoin o un usuario avanzado de DeFi que gestiona posiciones en docenas de protocolos, mantener registros financieros precisos no es opcional, es esencial para el cumplimiento normativo y la claridad financiera.

¿El problema? El software de contabilidad tradicional tiene un soporte nativo limitado para la complejidad de las criptomonedas. Aunque herramientas como QuickBooks pueden manejar criptomonedas con plugins adicionales, y Excel puede importar datos de blockchain con scripts, la mayoría de las soluciones requieren una personalización significativa para una contabilidad de criptomonedas completa.

¿La solución? El sistema de contabilidad de texto plano de Beancount.io, construido sobre el potente lenguaje de código abierto Beancount. Nota importante: Beancount es un lenguaje de contabilidad de doble entrada de código abierto creado por Martin Blais, mientras que Beancount.io es un servicio de alojamiento comercial que proporciona una interfaz fácil de usar e infraestructura en la nube para Beancount. Esta guía cubre tanto los principios subyacentes de Beancount como la forma de utilizarlos eficazmente a través de la plataforma Beancount.io.

Guía Completa de Contabilidad de Criptomonedas

La Pesadilla Contable de las Criptomonedas (Y Por Qué Está Empeorando)

Tu Cartera de Criptomonedas Está Dispersa por Todas Partes

Seamos honestos con tu configuración. Probablemente tienes:

  • 3-5 intercambios diferentes (Coinbase para compras fáciles, Binance para altcoins, Kraken para ese token en particular...)
  • Múltiples billeteras (MetaMask para DeFi, Ledger para tenencias a largo plazo, esa billetera antigua que olvidaste...)
  • Posiciones DeFi en más de 10 protocolos (Uniswap, Compound, Aave, y cualquier nueva granja de rendimiento que haya captado tu atención)
  • Recompensas por staking llegando poco a poco de varios validadores
  • Airdrops aleatorios apareciendo en tu billetera como regalos de Navidad cripto

Cada plataforma habla un idioma diferente. Coinbase te da un CSV que no se parece en nada a la exportación de Binance. Uniswap ni siquiera tiene exportaciones. Y ni me hables de rastrear tus posiciones DeFi a través de redes de Capa 2.

Tipos de Transacciones que Desafían la Contabilidad Tradicional

Tus actividades cripto incluyen tipos de transacciones para los que los sistemas de contabilidad tradicionales no fueron diseñados originalmente:

  • Pérdida impermanente por la provisión de liquidez (intenta explicarle eso a QuickBooks)
  • Préstamos flash que toman prestado y devuelven millones en una sola transacción
  • Yield farming donde ganas 5 tokens diferentes por proveer liquidez
  • Puentes entre cadenas que hacen que los activos desaparezcan en una red y aparezcan en otra
  • Derivados de staking como stETH que acumulan valor de manera diferente al activo subyacente
  • Tokens de gobernanza DAO que recibiste por usar protocolos

El Campo Minado del Cumplimiento Fiscal

Esto es lo que mantiene despiertos a los inversores en criptomonedas por la noche:

  • Cada transacción es gravable (sí, incluso ese intercambio de ETH a USDC)
  • El seguimiento del costo base se vuelve imposible con cientos de microtransacciones
  • Las recompensas de staking son ingresos en el momento en que las recibes (a valor justo de mercado)
  • Las recompensas DeFi son ingresos incluso si aún no puedes venderlas
  • El IRS exige el Formulario 8949 con cada transacción listada
  • Las penalizaciones son severas por equivocarse

El software de contabilidad tradicional requiere una personalización significativa para esta complejidad. Aunque existen soluciones, a menudo requieren plugins adicionales, scripts o procesos manuales para manejar el alcance completo de las actividades de criptomonedas.

Presentamos Beancount.io: La Solución Contable para Criptomonedas que Esperabas

¿Y si te dijera que existe un sistema contable diseñado precisamente para este caos? Beancount.io no es solo otra herramienta contable; es una revolución de la contabilidad en texto plano que maneja la complejidad de las criptomonedas como si hubiera nacido para ello.

Por qué Beancount.io Domina la Contabilidad de Criptomonedas

🔍 Transparencia Total: Cada cálculo es visible. Sin cajas negras, sin algoritmos de "confía en nosotros". Ves exactamente cómo se calcula tu base de costo, cómo se computan las ganancias y a dónde fue cada satoshi.

📊 Flexibilidad Ilimitada: Crea cualquier estructura de cuenta que necesites. Rastrea posiciones DeFi, derivados de staking, activos entre cadenas o ese token extraño que obtuviste de una votación DAO. Si puedes imaginarlo, puedes rastrearlo.

🎯 Base de Costo Precisa: Seguimiento basado en lotes con identificación específica. Elige exactamente qué Bitcoin estás vendiendo para resultados fiscales óptimos. FIFO, LIFO o selecciona tus lotes—tu elección.

🔗 A Prueba de Futuro: El formato de texto plano significa que tus datos son tuyos para siempre. Sin dependencia del proveedor, sin formatos propietarios, sin correos electrónicos de "lo sentimos, estamos cerrando".

⚡ Poder de Scripting: Automatiza las importaciones, genera informes personalizados e intégrate con cualquier herramienta. Porque tu cartera de criptomonedas es única, tu contabilidad también debería serlo.

Configurando tu Centro de Comando Cripto

Diseñando la Arquitectura de tus Cuentas

Piensa en esto como el diseño del plano para tu imperio cripto. Estamos creando una estructura que puede manejar desde tu primera compra de Bitcoin hasta estrategias DeFi multiprotocolo complejas:

Nota: Los ejemplos utilizan 1970-01-01 como fecha de apertura de cuenta provisional. Para uso real, reemplázala con tus fechas de apertura de cuenta reales, especialmente si utilizas herramientas de importación automatizadas que filtran transacciones por fecha.

; Exchange Accounts
1970-01-01 open Assets:Crypto:Coinbase:USD
1970-01-01 open Assets:Crypto:Coinbase:BTC
1970-01-01 open Assets:Crypto:Coinbase:ETH
1970-01-01 open Assets:Crypto:Binance:USD
1970-01-01 open Assets:Crypto:Binance:BTC
1970-01-01 open Assets:Crypto:Binance:ETH
1970-01-01 open Assets:Crypto:Binance:ADA

; Wallet Accounts
1970-01-01 open Assets:Crypto:Wallet:MetaMask:ETH
1970-01-01 open Assets:Crypto:Wallet:MetaMask:USDC
1970-01-01 open Assets:Crypto:Wallet:MetaMask:UNI
1970-01-01 open Assets:Crypto:Wallet:Ledger:BTC
1970-01-01 open Assets:Crypto:Wallet:Ledger:ETH

; DeFi Protocol Accounts
1970-01-01 open Assets:DeFi:Compound:cUSDC
1970-01-01 open Assets:DeFi:Uniswap:ETH-USDC-LP
1970-01-01 open Assets:Staking:Ethereum:ETH
1970-01-01 open Assets:Crypto:Mining:BTC

; Income Accounts
1970-01-01 open Income:Crypto:Staking:ETH
1970-01-01 open Income:Crypto:Mining:BTC
1970-01-01 open Income:Crypto:Airdrops
1970-01-01 open Income:Crypto:DeFi:Yield
1970-01-01 open Income:CapitalGains:Crypto
1970-01-01 open Income:Crypto:Trading:Margin

; Expense Accounts
1970-01-01 open Expenses:Crypto:Fees:Trading
1970-01-01 open Expenses:Crypto:Fees:Network
1970-01-01 open Expenses:Crypto:Fees:Withdrawal

; Additional accounts for advanced scenarios
1970-01-01 open Assets:Crypto:Binance:BTC-Margin
1970-01-01 open Liabilities:Crypto:Binance:Borrowed
1970-01-01 open Liabilities:Crypto:Binance:BTC
1970-01-01 open Assets:Checking
1970-01-01 open Expenses:Crypto:Mining:Electricity

Definiciones de Materias Primas

Define tus criptomonedas como materias primas con los metadatos adecuados:

1970-01-01 commodity BTC
name: "Bitcoin"
asset-class: "cryptocurrency"
price-source: "coinbase"

1970-01-01 commodity ETH
name: "Ethereum"
asset-class: "cryptocurrency"
price-source: "coinbase"

1970-01-01 commodity ADA
name: "Cardano"
asset-class: "cryptocurrency"
price-source: "binance"

1970-01-01 commodity USDC
name: "USD Coin"
asset-class: "stablecoin"
price-source: "coinbase"

1970-01-01 commodity UNI
name: "Uniswap"
asset-class: "cryptocurrency"
price-source: "coinbase"

1970-01-01 commodity UNI-V2-ETH-USDC
name: "Uniswap V2 ETH-USDC LP Token"
asset-class: "liquidity-pool"

Dominando las Transacciones de Criptomonedas: De lo Simple a lo Sofisticado

¿Listo para ver Beancount.io en acción? Recorramos escenarios del mundo real que harían fallar a otros sistemas contables, pero que aquí se manejan con elegancia.

1. Tu Primera Compra de Bitcoin (La Puerta de Entrada)

Cada viaje en el mundo de las criptomonedas comienza en algún lugar. A continuación, te mostramos cómo registrar ese momento trascendental en el que compraste tu primer Bitcoin:

2024-01-15 * "Compra de 0.5 BTC en Coinbase"
Assets:Crypto:Coinbase:BTC 0.5 BTC {30000.00 USD}
Assets:Crypto:Coinbase:USD -15025.00 USD
Expenses:Crypto:Fees:Trading 25.00 USD

2. Realizar Ganancias (O Cortar Pérdidas) Como un Profesional

El momento de la verdad: vender tus criptomonedas. Aquí es donde la mayoría de los sistemas contables fallan, pero Beancount.io brilla con un seguimiento preciso del costo base:

2024-03-20 * "Sell 0.3 BTC on Coinbase"
Assets:Crypto:Coinbase:BTC -0.3 BTC {30000.00 USD}
Assets:Crypto:Coinbase:USD 10470.00 USD
Expenses:Crypto:Fees:Trading 30.00 USD
Income:CapitalGains:Crypto 1440.00 USD ; 10470 - (0.3 × 30000) - 30 = 1440

3. Recompensas por Staking: Gana mientras duermes

Ingresos pasivos en su máxima expresión. Pero recuerda, el IRS exige que las recompensas por staking se declaren como ingresos gravables al recibirlas, basándose en el valor justo de mercado en el momento de la recepción (según la guía de Activos Digitales del IRS, 2024). Si bien existe un litigio en curso (Jarrett v. United States), la posición oficial actual exige la declaración inmediata. Así es como se les da seguimiento correctamente:

2024-02-01 * "Recompensas por Staking de ETH"
Assets:Staking:Ethereum:ETH 0.05 ETH {2500.00 USD}
Income:Crypto:Staking:ETH 125.00 USD

4. Cultivo de Rendimiento DeFi: Donde la cosa se pone picante 🌶️

Bienvenido a la contabilidad DeFi avanzada. El cultivo de rendimiento DeFi implica transacciones complejas de múltiples tokens que requieren un seguimiento sofisticado. A continuación, se explica cómo contabilizar correctamente una posición de liquidez en Uniswap:

; Provisión inicial de liquidez
2024-01-10 * "Añadir liquidez al pool ETH-USDC"
Assets:Crypto:Wallet:MetaMask:ETH -10 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC -25000 USDC {1.00 USD}
Assets:DeFi:Uniswap:ETH-USDC-LP 100 UNI-V2-ETH-USDC {500.00 USD}

; Reclamación de recompensas
2024-02-10 * "Reclamar recompensas de LP de Uniswap"
Assets:Crypto:Wallet:MetaMask:UNI 50 UNI {8.00 USD}
Income:Crypto:DeFi:Yield 400.00 USD

5. Transferencias entre Exchanges

Trasladar Bitcoin de Coinbase a la billetera Ledger:

2024-01-20 * "Transfer BTC from Coinbase to Ledger"
Assets:Crypto:Coinbase:BTC -1.0 BTC {30000.00 USD}
Assets:Crypto:Wallet:Ledger:BTC 0.9995 BTC {30000.00 USD}
Expenses:Crypto:Fees:Withdrawal 0.0005 BTC {30000.00 USD}

Escenarios Avanzados de Criptomonedas

Negociación de Margen

Registro de posiciones apalancadas:

; Apertura de una posición larga apalancada (préstamo de BTC)
2024-02-15 * "Open 2x leveraged BTC position"
Assets:Crypto:Binance:BTC-Margin 1.0 BTC {35000.00 USD}
Liabilities:Crypto:Binance:BTC -1.0 BTC {35000.00 USD}
Expenses:Crypto:Fees:Trading 50.00 USD
Assets:Crypto:Binance:USD -50.00 USD

; Cierre de la posición con ganancias
2024-02-20 * "Close leveraged BTC position"
Assets:Crypto:Binance:BTC-Margin -1.0 BTC {35000.00 USD}
Assets:Crypto:Binance:USD 37950.00 USD
Liabilities:Crypto:Binance:BTC 1.0 BTC {35000.00 USD}
Income:Crypto:Trading:Margin -2900.00 USD
Expenses:Crypto:Fees:Trading 50.00 USD

Lanzamientos Aéreos y Bifurcaciones

Registrando distribuciones gratuitas de tokens:

2024-03-01 * "Received UNI airdrop"
Assets:Crypto:Wallet:MetaMask:UNI 400 UNI {8.00 USD}
Income:Crypto:Airdrops 3200.00 USD

Operaciones Mineras

Para mineros de criptomonedas:

2024-01-01 * "Recompensa por minería de Bitcoin"
Assets:Crypto:Mining:BTC 0.1 BTC {45000.00 USD}
Income:Crypto:Mining:BTC 4500.00 USD

; Gastos de minería
2024-01-31 * "Costos de electricidad de minería"
Expenses:Crypto:Mining:Electricity 800.00 USD
Assets:Checking -800.00 USD

Informes fiscales y cumplimiento

Seguimiento del Costo Base

Beancount.io realiza un seguimiento automático del costo base utilizando el sistema basado en lotes:

; Múltiples compras a diferentes precios
2024-01-01 * "Comprar BTC lote 1"
Assets:Crypto:Coinbase:BTC 1.0 BTC {40000.00 USD}
Assets:Crypto:Coinbase:USD -40000.00 USD

2024-02-01 * "Comprar BTC lote 2"
Assets:Crypto:Coinbase:BTC 1.0 BTC {45000.00 USD}
Assets:Crypto:Coinbase:USD -45000.00 USD

; Venta de lotes específicos (FIFO, LIFO o identificación específica)
2024-03-01 * "Vender BTC usando FIFO"
Assets:Crypto:Coinbase:BTC -0.5 BTC {40000.00 USD}
Assets:Crypto:Coinbase:USD 22470.00 USD
Expenses:Crypto:Fees:Trading 30.00 USD
Income:CapitalGains:Crypto 2440.00 USD ; 22470 - 20000 - 30 = 2440

Generación de Informes Fiscales

Utilice el sistema de consulta y los plugins de Beancount para generar informes fiscales:

  • Formulario 8949: Ganancias y pérdidas de capital (a través de bean-query o plugins de terceros)
  • Anexo D: Resumen de ganancias de capital (requiere scripting adicional)
  • Formulario 1040: Ingresos por staking, minería, airdrops (a través de informes personalizados)
  • Registros detallados de transacciones: Para fines de auditoría

Nota: La generación de informes fiscales requiere plugins adicionales, scripts o integración con software fiscal especializado. Beancount proporciona la base de datos, pero los formularios fiscales específicos suelen requerir desarrollo personalizado o herramientas de terceros.

Mejores prácticas para la contabilidad de criptomonedas

1. Reconciliación Regular

  • Importar datos de intercambio semanalmente
  • Verificar saldos de billetera mensualmente
  • Cotejar con exploradores de blockchain

2. Documentación Adecuada

  • Conserve todas las confirmaciones de transacciones
  • Documente el propósito de cada transacción
  • Mantenga registros de los precios de mercado en el momento de la transacción

3. Separar Negocios y Personal

; Inversiones personales en criptomonedas
Assets:Personal:Crypto:Coinbase:BTC

; Operaciones empresariales con criptomonedas
Assets:Business:Crypto:Treasury:BTC

4. Registrar Todas las Fuentes de Ingresos

  • Recompensas por staking (gravable como ingreso)
  • Recompensas por minería (gravable como ingreso)
  • Airdrops (gravable al valor justo de mercado)
  • Rendimiento DeFi (gravable como ingreso)

5. Gestión de Comisiones

Registre todas las comisiones por separado para una deducción fiscal adecuada:

Expenses:Crypto:Fees:Trading     ; Comisiones de negociación del exchange
Expenses:Crypto:Fees:Network ; Comisiones de red de la blockchain
Expenses:Crypto:Fees:Withdrawal ; Comisiones de retiro

Integración con Herramientas Cripto Populares

Integración con API de Intercambios

Beancount.io puede integrarse con los principales intercambios:

  • API de Coinbase Pro: Importación automática de transacciones
  • API de Binance: Actualizaciones de saldo en tiempo real
  • API de Kraken: Sincronización de datos históricos

Análisis de Blockchain

Conéctate con exploradores de blockchain:

  • Etherscan: verificación de transacciones de Ethereum
  • Blockchain.info: seguimiento de transacciones de Bitcoin
  • BscScan: monitoreo de Binance Smart Chain

Seguimiento de Cartera

Sincronización con herramientas de gestión de cartera:

  • CoinTracker: Generación de informes fiscales
  • Koinly: Agregación de múltiples intercambios
  • Blockfolio: Seguimiento de cartera móvil

Descargos de Responsabilidad Importantes

Aviso Fiscal y Legal: Esta guía proporciona información general sobre la contabilidad de criptomonedas usando Beancount y no constituye asesoramiento fiscal, legal o financiero profesional. El tratamiento fiscal de las transacciones de criptomonedas varía según la jurisdicción y las circunstancias individuales. Escenarios complejos como puentes entre cadenas (cross-chain bridges), pérdida impermanente (impermanent loss) y préstamos flash (flash loans) pueden tener implicaciones fiscales poco claras bajo las regulaciones actuales. Para obtener orientación específica sobre si las transacciones constituyen disposiciones gravables, consulte las Preguntas Frecuentes del IRS (IRS FAQ) Q-15 a Q-18 (2024) o consulte las regulaciones fiscales locales. Siempre consulte con un profesional fiscal calificado o un CPA (Contador Público Certificado) familiarizado con la tributación de criptomonedas en su jurisdicción antes de tomar decisiones relacionadas con impuestos.

Aclaración sobre el Software: Los ejemplos en esta guía utilizan la sintaxis estándar de Beancount. Aunque Beancount.io proporciona una interfaz fácil de usar para Beancount, los principios contables subyacentes se aplican a cualquier implementación de Beancount.

Conclusión

La contabilidad de criptomonedas no tiene por qué ser abrumadora. Con el potente sistema de contabilidad de texto plano de Beancount, accesible a través de la plataforma Beancount.io, usted puede:

  • Mantener Transparencia Total: Cada transacción es visible y auditable
  • Asegurar el Cumplimiento Fiscal: Seguimiento adecuado del costo base y declaración de ingresos
  • Escalar con su Cartera: Manejar desde operaciones simples hasta estrategias DeFi complejas
  • Integrar sin Problemas: Conectar con intercambios, billeteras y herramientas fiscales
  • Preparar sus Registros para el Futuro: El formato de texto plano asegura la accesibilidad a largo plazo

Ya sea que sea un poseedor ocasional de Bitcoin o un sofisticado inversor en rendimiento DeFi, Beancount proporciona la base y la flexibilidad necesarias para dominar la contabilidad de criptomonedas. Comience con transacciones básicas e incorpore gradualmente escenarios más complejos a medida que evoluciona su viaje cripto.

Los ejemplos de esta guía proporcionan una base sólida, pero recuerde que la contabilidad de criptomonedas es un campo en evolución. Manténgase informado sobre los cambios regulatorios, consulte con profesionales fiscales y adapte sus prácticas contables según sea necesario.

¿Listo para tomar el control de sus finanzas de criptomonedas? Regístrese en Beancount.io y experimente el poder de una contabilidad cripto transparente y programable, construida sobre la sólida base de Beancount.

Guía de Cumplimiento Fiscal de Criptomonedas: Dominando los Requisitos del IRS con Beancount.io

· 10 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

La tributación de criptomonedas ha evolucionado de una preocupación de nicho a un requisito de cumplimiento crítico para millones de inversores. Con el IRS aumentando la aplicación de la ley y exigiendo informes detallados, el mantenimiento preciso de registros no es solo una buena práctica, es esencial para evitar sanciones y optimizar su obligación tributaria.

Esta guía completa le muestra cómo lograr el cumplimiento fiscal completo de criptomonedas utilizando el potente sistema de contabilidad de texto plano de Beancount.io, asegurándose de cumplir con todos los requisitos del IRS mientras maximiza la eficiencia fiscal.

Guía de Cumplimiento Fiscal de Criptomonedas

Entendiendo los Requisitos Fiscales de las Criptomonedas

Tratamiento de las Criptomonedas por el IRS

El IRS trata las criptomonedas como propiedad, no como moneda, lo que genera implicaciones fiscales específicas:

  • Cada transacción es potencialmente gravable: Negociación, venta, gasto o intercambio de cripto
  • Se debe rastrear el costo base: Para cada unidad de criptomoneda poseída
  • El período de tenencia determina la tasa impositiva: Ganancias de capital a corto plazo vs. a largo plazo
  • Reconocimiento de ingresos requerido: Para minería, staking, airdrops y recompensas DeFi
  • Registros detallados obligatorios: Documentación a nivel de transacción para auditorías

Principales Formularios de Impuestos para Criptomonedas

Formulario 1040 - Declaración de Impuestos sobre la Renta Individual

  • Línea 1: Informar ingresos de criptoactivos (staking, minería, airdrops)
  • Anexo 1: Fuentes de ingresos adicionales
  • Pregunta sobre Activos Digitales: Debe responder "Sí" si tuvo transacciones de criptomonedas

Formulario 8949 - Ventas y Otras Enajenaciones de Activos de Capital

  • Parte I: Ganancias/Pérdidas de capital a corto plazo (mantenidos ≤ 1 año)
  • Parte II: Ganancias/Pérdidas de capital a largo plazo (mantenidos > 1 año)
  • Informe detallado de transacciones: Fecha de adquisición, fecha de venta, producto de la venta, base de costo

Anexo D - Ganancias y Pérdidas de Capital

  • Resumen del Formulario 8949: Ganancias/pérdidas de capital agregadas
  • Ganancia/pérdida de capital neta: Cálculo final para la obligación tributaria

Configuración de Contabilidad Cripto Conforme a la Normativa Fiscal

Estructura de Cuentas para la Declaración de Impuestos

Diseñe su jerarquía de cuentas para que se alinee con los requisitos fiscales:

; Activos - Organizados por período de tenencia y origen
1970-01-01 open Assets:Crypto:ShortTerm:Coinbase:BTC
1970-01-01 open Assets:Crypto:LongTerm:Coinbase:BTC
1970-01-01 open Assets:Crypto:Trading:Binance:ETH
1970-01-01 open Assets:Crypto:Investment:Ledger:BTC

; Ingresos - Separados por tratamiento fiscal
1970-01-01 open Income:Crypto:Staking:Ordinary ; Gravado como ingreso ordinario
1970-01-01 open Income:Crypto:Mining:Ordinary ; Gravado como ingreso ordinario
1970-01-01 open Income:Crypto:Airdrops:Ordinary ; Gravado como ingreso ordinario
1970-01-01 open Income:CapitalGains:ShortTerm ; Ganancias de capital a corto plazo
1970-01-01 open Income:CapitalGains:LongTerm ; Ganancias de capital a largo plazo

; Gastos - Categorías deducibles de impuestos
1970-01-01 open Expenses:Crypto:Fees:Deductible ; Comisiones de trading
1970-01-01 open Expenses:Crypto:Mining:Equipment ; Equipo de minería
1970-01-01 open Expenses:Crypto:Mining:Electricity ; Electricidad de minería
1970-01-01 open Expenses:CapitalLoss:ShortTerm ; Pérdidas de capital a corto plazo
1970-01-01 open Expenses:CapitalLoss:LongTerm ; Pérdidas de capital a largo plazo

Metadatos para Cumplimiento Fiscal

Utilice metadatos para rastrear información fiscalmente relevante:

2024-01-15 * "Buy BTC for long-term investment" ^investment-btc #long-term
purchase-date: "2024-01-15"
intended-holding: "long-term"
tax-lot-id: "BTC-001"
Assets:Crypto:LongTerm:Coinbase:BTC 1.0 BTC {45000.00 USD}
Assets:Crypto:Coinbase:USD -45000.00 USD
Expenses:Crypto:Fees:Deductible 50.00 USD
Assets:Crypto:Coinbase:USD -50.00 USD

Registro de eventos gravables de criptomonedas

1. Ventas de Criptomonedas

Ganancias de Capital a Corto Plazo (≤ 1 año)

2024-06-15 * "Venta de BTC - Ganancia de capital a corto plazo" ^btc-sale-001
date-acquired: "2024-01-15"
holding-period: "151 days"
form-8949-code: "A"
Assets:Crypto:ShortTerm:Coinbase:BTC -0.5 BTC {45000.00 USD}
Assets:Crypto:Coinbase:USD 24000.00 USD
Expenses:Crypto:Fees:Deductible 30.00 USD
Assets:Crypto:Coinbase:USD -30.00 USD
Income:CapitalGains:ShortTerm 1470.00 USD ; 24000 - 22500 - 30

Ganancias de Capital a Largo Plazo (> 1 año)

2025-02-01 * "Venta de BTC - Ganancia de capital a largo plazo" ^btc-sale-002
date-acquired: "2024-01-15"
holding-period: "382 days"
form-8949-code: "D"
Assets:Crypto:LongTerm:Coinbase:BTC -0.5 BTC {45000.00 USD}
Assets:Crypto:Coinbase:USD 28000.00 USD
Expenses:Crypto:Fees:Deductible 35.00 USD
Assets:Crypto:Coinbase:USD -35.00 USD
Income:CapitalGains:LongTerm 5465.00 USD ; 28000 - 22500 - 35

2. Operaciones de Criptomoneda a Criptomoneda

Cada operación de criptomoneda a criptomoneda es gravable:

2024-03-20 * "Intercambio de BTC por ETH - Intercambio gravable"
; Disposición de BTC (evento gravable)
Assets:Crypto:Trading:Binance:BTC -1.0 BTC {46000.00 USD}
Income:CapitalGains:ShortTerm 2000.00 USD ; 48000 - 46000

; Adquisición de ETH (nuevo costo base)
Assets:Crypto:Trading:Binance:ETH 20 ETH {2400.00 USD}

; Comisiones de operación
Expenses:Crypto:Fees:Deductible 40.00 USD
Assets:Crypto:Trading:Binance:USD -40.00 USD

3. Recompensas por Staking (Ingresos Ordinarios)

2024-01-31 * "ETH Staking Rewards - January"
reward-type: "staking"
fair-market-value: "2500.00 USD per ETH"
taxable-income: "200.00 USD"
Assets:Staking:Ethereum:ETH 0.08 ETH {2500.00 USD}
Income:Crypto:Staking:Ordinary 200.00 USD

4. Ingresos por Minería

2024-01-15 * "Recompensa por Minería de Bitcoin"
mining-pool: "Slush Pool"
block-height: "825000"
fair-market-value: "45000.00 USD per BTC"
Assets:Crypto:Mining:BTC 0.01 BTC {45000.00 USD}
Income:Crypto:Mining:Ordinary 450.00 USD

; Gastos de minería (deducibles)
Expenses:Crypto:Mining:Electricity 120.00 USD
Assets:Checking -120.00 USD

5. Airdrops y Hard Forks

2024-03-01 * "Airdrop de Tokens UNI"
fuente-airdrop: "Protocolo Uniswap"
valor-justo-mercado: "8.00 USD por UNI"
monto-imponible: "3200.00 USD"
Assets:Crypto:Billetera:MetaMask:UNI 400 UNI {8.00 USD}
Income:Crypto:Airdrops:Ordinarios 3200.00 USD

6. Actividades DeFi

Recompensas por Agricultura de Rendimiento

2024-02-28 * "Compound Protocol Yield"
protocol: "Compound"
reward-token: "COMP"
fair-market-value: "85.00 USD per COMP"
Assets:Crypto:Wallet:MetaMask:COMP 12 COMP {85.00 USD}
Income:Crypto:DeFi:Ordinary 1020.00 USD

Comisiones del Pool de Liquidez

2024-02-15 * "Uniswap LP Fees Claimed"
protocol: "Uniswap V3"
pool: "ETH-USDC"
Assets:Crypto:Wallet:MetaMask:ETH 0.2 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC 300 USDC
Income:Crypto:DeFi:Ordinary 820.00 USD

Estrategias de Optimización Fiscal

1. Recolección de Pérdidas Fiscales

Realice pérdidas sistemáticamente para compensar ganancias:

; Identificar posiciones con pérdidas
2024-12-15 * "Tax Loss Harvesting - Sell ADA at loss"
purchase-date: "2024-06-01"
purchase-price: "0.60 USD per ADA"
sale-price: "0.45 USD per ADA"
Assets:Crypto:Trading:Binance:ADA -1000 ADA {0.60 USD}
Assets:Crypto:Trading:Binance:USD 445.00 USD
Expenses:Crypto:Fees:Deductible 5.00 USD
Assets:Crypto:Trading:Binance:USD -5.00 USD
Expenses:CapitalLoss:ShortTerm 150.00 USD ; Pérdida realizada

2. Consideraciones sobre la Venta de Lavado

Aunque las reglas de venta de lavado no se aplican oficialmente a las criptomonedas, evite posibles problemas:

; Esperar 31 días antes de recomprar
2025-01-16 * "Recompra de ADA después del período de venta de lavado"
wash-sale-safe: "31+ días transcurridos"
Assets:Crypto:Trading:Binance:ADA 1000 ADA {0.45 USD}
Assets:Crypto:Trading:Binance:USD -450.00 USD
Expenses:Crypto:Fees:Deductible 5.00 USD
Assets:Crypto:Trading:Binance:USD -5.00 USD

3. Método de Identificación Específica

Elija qué lotes vender para obtener los resultados fiscales óptimos:

; High-cost basis lot for loss harvesting
2024-11-30 * "Sell high-cost ETH lot for tax loss"
lot-selection: "specific-identification"
cost-basis: "3500.00 USD per ETH"
sale-price: "2400.00 USD per ETH"
Assets:Crypto:Trading:Coinbase:ETH -5 ETH {3500.00 USD}
Assets:Crypto:Trading:Coinbase:USD 11950.00 USD
Expenses:Crypto:Fees:Deductible 50.00 USD
Assets:Crypto:Trading:Coinbase:USD -50.00 USD
Expenses:CapitalLoss:ShortTerm 5500.00 USD ; Significant loss

4. Planificación a Largo Plazo vs. Corto Plazo

Programe estratégicamente las ventas para un tratamiento fiscal favorable:

; Mantener para tratamiento a largo plazo
2024-12-20 * "BTC acercándose al estado de largo plazo"
purchase-date: "2024-01-01"
days-held: "354"
long-term-date: "2025-01-02"
note: "Mantener 11 días más para tratamiento a largo plazo"

Informes Fiscales Automatizados

Generación del Formulario 8949

Utilice las consultas de Beancount.io para generar datos del Formulario 8949:

-- Ganancias/pérdidas de capital a corto plazo
SELECT
date,
narration,
-position as quantity_sold,
cost(position) as cost_basis,
value(position) as proceeds,
value(position) + cost(position) as gain_loss
WHERE account ~ "Income:CapitalGains:ShortTerm"
OR account ~ "Expenses:CapitalLoss:ShortTerm"
ORDER BY date;

Resumen del Anexo D

-- Resumen de ganancias de capital
SELECT
'Corto plazo' as type,
sum(position) as total_gain_loss
WHERE account ~ "Income:CapitalGains:ShortTerm"
OR account ~ "Expenses:CapitalLoss:ShortTerm"

UNION ALL

SELECT
'Largo plazo' as type,
sum(position) as total_gain_loss
WHERE account ~ "Income:CapitalGains:LongTerm"
OR account ~ "Expenses:CapitalLoss:LongTerm";

Informe de Ingresos Ordinarios

-- Ingresos ordinarios de cripto
SELECT
account,
sum(position) as total_income
WHERE account ~ "Income:Crypto.*:Ordinary"
GROUP BY account
ORDER BY total_income DESC;

Mantenimiento de Registros y Documentación

Documentación Esencial

Mantenga registros exhaustivos para cada transacción:

2024-01-15 * "BTC Purchase - Complete Documentation" ^btc-001
exchange: "Coinbase Pro"
transaction-id: "abc123def456"
confirmation-hash: "0x789..."
ip-address: "192.168.1.100"
timestamp: "2024-01-15T14:30:00Z"
market-price-source: "CoinGecko"
Assets:Crypto:LongTerm:Coinbase:BTC 1.0 BTC {45000.00 USD}
Assets:Crypto:Coinbase:USD -45000.00 USD

Mantenimiento de la Pista de Auditoría

Crear pistas de auditoría detalladas:

; Vincular transacciones relacionadas
2024-01-15 * "BTC Purchase" ^btc-purchase-001
2024-01-20 * "BTC Transfer to Wallet" ^btc-purchase-001
2024-06-15 * "BTC Sale" ^btc-purchase-001

Verificación de Precios

Documente las fuentes de precios para el valor razonable de mercado:

2024-01-15 price BTC 45000.00 USD
source: "CoinGecko"
timestamp: "2024-01-15T14:30:00Z"
verification: "Promedio de múltiples intercambios"

Errores Comunes en el Cumplimiento Fiscal

1. Transacciones Faltantes

  • Problema: No reportar todos los eventos imponibles
  • Solución: Seguimiento exhaustivo de transacciones en Beancount.io

2. Base de Costo Incorrecta

  • Problema: Uso de un método de cálculo de la base de costo incorrecto
  • Solución: Seguimiento por lotes con identificación específica

3. Falta de Informe de Ingresos

  • Problema: No declarar ingresos por staking, minería o airdrops
  • Solución: Cuentas de ingresos separadas para todas las fuentes

4. Documentación Inadecuada

  • Problema: Registros insuficientes para la defensa en una auditoría
  • Solución: Metadatos detallados y vinculación de transacciones

5. Problemas de Temporización

  • Problema: Cálculos incorrectos del periodo de tenencia
  • Solución: Seguimiento de fechas automatizado y alertas

Integración con Software Fiscal

Generar informes compatibles con los principales programas fiscales:


# Exportar a formato TurboTax
def export_turbotax_format():
return {
'form_8949_short_term': query_short_term_gains(),
'form_8949_long_term': query_long_term_gains(),
'schedule_1_income': query_ordinary_income(),
'deductible_expenses': query_deductible_expenses()
}

Preparación Profesional de Impuestos

Proporcione a los Contadores Públicos Certificados informes completos:

-- Paquete fiscal completo para Contadores Públicos Certificados
SELECT
'Resumen de Ganancias de Capital' as report_type,
account,
sum(position) as amount
WHERE account ~ "Income:CapitalGains"
OR account ~ "Expenses:CapitalLoss"
GROUP BY account

UNION ALL

SELECT
'Resumen de Ingresos Ordinarios' as report_type,
account,
sum(position) as amount
WHERE account ~ "Income:Crypto.*:Ordinary"
GROUP BY account;

Planificación Fiscal de Fin de Año

Estrategias Fiscales de Diciembre

Implementar la optimización fiscal de fin de año:

; Lista de verificación de planificación fiscal de diciembre
2024-12-01 * "Revisión de planificación fiscal de fin de año"
unrealized-gains: "Calcular posiciones no realizadas"
loss-harvesting: "Identificar oportunidades de cosecha de pérdidas"
income-timing: "Considerar aplazar ingresos al próximo año"
expense-timing: "Acelerar gastos deducibles"

Impuestos Estimados Trimestrales

Realice un seguimiento de sus obligaciones fiscales trimestrales:

2024-01-15 * "Pago de Impuestos Estimados del T1"
Expenses:Taxes:Estimated:Federal 5000.00 USD
Expenses:Taxes:Estimated:State 1200.00 USD
Assets:Checking -6200.00 USD

Conclusión

La declaración de impuestos de criptomonedas no tiene por qué ser abrumadora. Con el sistema integral de contabilidad de texto plano de Beancount.io, usted puede:

  • Asegurar el Cumplimiento Total: Cumplir con todos los requisitos de declaración del IRS
  • Optimizar la Obligación Tributaria: Implementar estrategias fiscales sofisticadas
  • Mantener Registros Listos para Auditoría: Documentación completa y pistas de auditoría
  • Automatizar la Generación de Informes: Generar formularios e informes fiscales automáticamente
  • Escalar con la Complejidad: Manejar desde operaciones simples hasta estrategias DeFi complejas

Beneficios clave para el cumplimiento fiscal de criptomonedas:

  • Cálculos Transparentes: Vea exactamente cómo se calculan los números fiscales
  • Informes Flexibles: Genere cualquier formato de informe necesario
  • Integración Profesional: Trabaje sin problemas con contadores públicos y software fiscal
  • Registros a Prueba de Futuro: El formato de texto plano garantiza la accesibilidad a largo plazo

Comience a implementar hoy mismo el cumplimiento fiscal adecuado para criptomonedas. La inversión en un mantenimiento de registros preciso le ahorrará tiempo, dinero y estrés durante la temporada de impuestos, al tiempo que le asegura el pleno cumplimiento de los requisitos del IRS.

¿Listo para dominar el cumplimiento fiscal de criptomonedas? Comience con Beancount.io y tome el control de sus obligaciones fiscales de cripto.

Contabilidad DeFi Simplificada: Seguimiento de Yield Farming, Pools de Liquidez y Recompensas de Staking con Contabilidad de Texto Plano

· 9 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Las Finanzas Descentralizadas (DeFi) han revolucionado la forma en que interactuamos con los servicios financieros, ofreciendo oportunidades sin precedentes para la generación de rendimiento, la provisión de liquidez y el comercio descentralizado. Sin embargo, con estas oportunidades surge el desafío de rastrear con precisión las transacciones complejas para el cumplimiento fiscal y la gestión de cartera.

Los métodos contables tradicionales tienen dificultades con las características únicas de DeFi: creadores de mercado automatizados, minería de liquidez, pérdida impermanente y recompensas multi-token. Esta guía completa le muestra cómo dominar la contabilidad DeFi utilizando el potente sistema de contabilidad en texto plano de Beancount.io.

Contabilidad DeFi Simplificada

Comprensión de los desafíos contables de DeFi

La Complejidad de las Transacciones DeFi

Los protocolos DeFi crean desafíos contables que no existen en las finanzas tradicionales:

  • Transacciones de múltiples tokens: Operaciones únicas que involucran múltiples criptomonedas
  • Capitalización automática: Recompensas reinvertidas automáticamente
  • Pérdida impermanente: Cambios de valor debido a la divergencia de precios en los pools de liquidez
  • Optimización de las tarifas de gas: Estructuras de tarifas complejas a través de diferentes redes
  • Gobernanza de protocolo: Derechos de voto y distribuciones de tokens de gobernanza
  • Interacciones entre protocolos: Transacciones que abarcan múltiples plataformas DeFi

Implicaciones Fiscales de las Actividades DeFi

El IRS trata las actividades DeFi como eventos imponibles:

  • Provisión de liquidez: Puede desencadenar eventos imponibles al depositar activos
  • Recompensas de yield farming: Imponibles como ingresos ordinarios a valor justo de mercado
  • Pérdida impermanente: Posibles implicaciones fiscales al retirar de los pools
  • Tokens de gobernanza: Airdrops y recompensas imponibles como ingresos
  • Recompensas por staking: Imponibles como ingresos al ser recibidas

Configuración de Cuentas DeFi en Beancount.io

Estructura de Cuentas Integral

Cree una jerarquía de cuentas detallada que capture todas las actividades DeFi:

; Cuentas de Billetera
1970-01-01 open Assets:Crypto:Wallet:MetaMask:ETH
1970-01-01 open Assets:Crypto:Wallet:MetaMask:USDC
1970-01-01 open Assets:Crypto:Wallet:MetaMask:DAI
1970-01-01 open Assets:Crypto:Wallet:MetaMask:WBTC

; Fondos de Liquidez de Uniswap V3
1970-01-01 open Assets:DeFi:Uniswap:ETH-USDC-LP
1970-01-01 open Assets:DeFi:Uniswap:DAI-USDC-LP
1970-01-01 open Assets:DeFi:Uniswap:WBTC-ETH-LP

; Protocolo Compound
1970-01-01 open Assets:DeFi:Compound:cUSDC
1970-01-01 open Assets:DeFi:Compound:cETH
1970-01-01 open Assets:DeFi:Compound:cDAI

; Protocolo Aave
1970-01-01 open Assets:DeFi:Aave:aUSDC
1970-01-01 open Assets:DeFi:Aave:aETH
1970-01-01 open Assets:DeFi:Aave:DebtETH

; Protocolos de Staking
1970-01-01 open Assets:Staking:Ethereum:ETH
1970-01-01 open Assets:Staking:Lido:stETH
1970-01-01 open Assets:Staking:RocketPool:rETH

; Cuentas de Ingresos
1970-01-01 open Income:DeFi:Yield:Uniswap
1970-01-01 open Income:DeFi:Yield:Compound
1970-01-01 open Income:DeFi:Yield:Aave
1970-01-01 open Income:DeFi:Staking:Ethereum
1970-01-01 open Income:DeFi:Governance:Tokens
1970-01-01 open Income:DeFi:Airdrops

; Cuentas de Gastos
1970-01-01 open Expenses:DeFi:Gas:Ethereum
1970-01-01 open Expenses:DeFi:Gas:Polygon
1970-01-01 open Expenses:DeFi:Gas:Arbitrum
1970-01-01 open Expenses:DeFi:ImpermanentLoss

Productos Básicos Específicos de DeFi

Define tokens y tokens de LP con metadatos adecuados:

1970-01-01 commodity UNI-V3-ETH-USDC
name: "Uniswap V3 ETH-USDC LP Token"
asset-class: "liquidity-pool"
protocol: "uniswap-v3"

1970-01-01 commodity cUSDC
name: "Compound USDC"
asset-class: "lending-token"
protocol: "compound"

1970-01-01 commodity stETH
name: "Lido Staked Ethereum"
asset-class: "staking-derivative"
protocol: "lido"

Seguimiento de Actividades DeFi Comunes

1. Aportación de liquidez en Uniswap

Añadiendo Liquidez a un Pool

2024-01-15 * "Añadir liquidez al pool Uniswap V3 de ETH-USDC"
Assets:Crypto:Wallet:MetaMask:ETH -5.0 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC -12500 USDC
Assets:DeFi:Uniswap:ETH-USDC-LP 100 UNI-V3-ETH-USDC {250.00 USD}
Expenses:DeFi:Gas:Ethereum 0.01 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.01 ETH {2500.00 USD}

Reclamando Comisiones de LP

2024-02-15 * "Reclamar comisiones de LP de Uniswap"
Assets:Crypto:Wallet:MetaMask:ETH 0.2 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC 300 USDC
Income:DeFi:Yield:Uniswap 820.00 USD
Expenses:DeFi:Gas:Ethereum 0.005 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.005 ETH {2600.00 USD}

Retirando Liquidez con Pérdida Impermanente

2024-03-15 * "Retirar liquidez del pool ETH-USDC"
Assets:DeFi:Uniswap:ETH-USDC-LP -100 UNI-V3-ETH-USDC {250.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH 4.8 ETH {2800.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC 12800 USDC
Expenses:DeFi:ImpermanentLoss 240.00 USD ; cálculo de PI
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2800.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2800.00 USD}

2. Préstamos del Protocolo Compound

Suministrando Activos a Compound

2024-01-20 * "Suministrar USDC a Compound"
Assets:Crypto:Wallet:MetaMask:USDC -10000 USDC
Assets:DeFi:Compound:cUSDC 500 cUSDC {20.00 USD}
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2500.00 USD}

Ganando Interés Compuesto

2024-02-20 * "Devengo de interés compuesto"
Assets:DeFi:Compound:cUSDC 5.2 cUSDC {20.50 USD}
Income:DeFi:Yield:Compound 106.60 USD

Reclamo de recompensas COMP

2024-02-20 * "Reclamar tokens de gobernanza COMP"
Assets:Crypto:Wallet:MetaMask:COMP 12 COMP {85.00 USD}
Income:DeFi:Governance:Tokens 1020.00 USD
Expenses:DeFi:Gas:Ethereum 0.006 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.006 ETH {2600.00 USD}

3. Operaciones del Protocolo Aave

Depósitos y Préstamos

; Deposit ETH as collateral
2024-01-25 * "Deposit ETH to Aave"
Assets:Crypto:Wallet:MetaMask:ETH -10 ETH {2500.00 USD}
Assets:DeFi:Aave:aETH 10 aETH {2500.00 USD}
Expenses:DeFi:Gas:Ethereum 0.01 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.01 ETH {2500.00 USD}

; Borrow USDC against ETH collateral
2024-01-25 * "Borrow USDC from Aave"
Assets:Crypto:Wallet:MetaMask:USDC 15000 USDC
Liabilities:DeFi:Aave:DebtUSDC -15000 USDC
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2500.00 USD}

Amortización de Préstamos con Intereses

2024-03-25 * "Pagar préstamo de USDC a Aave"
Liabilities:DeFi:Aave:DebtUSDC 15000 USDC
Expenses:DeFi:Interest:Aave 450 USDC ; Intereses devengados
Assets:Crypto:Wallet:MetaMask:USDC -15450 USDC
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2700.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2700.00 USD}

4. Participación de Ethereum

Staking Directo de Ethereum

2024-01-10 * "Staking de ETH en Ethereum 2.0"
Assets:Crypto:Wallet:MetaMask:ETH -32 ETH {2500.00 USD}
Assets:Staking:Ethereum:ETH 32 ETH {2500.00 USD}
Expenses:DeFi:Gas:Ethereum 0.01 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.01 ETH {2500.00 USD}

Recompensas por Staking

2024-02-10 * "Recompensas por staking de ETH"
Assets:Staking:Ethereum:ETH 0.15 ETH {2600.00 USD}
Income:DeFi:Staking:Ethereum 390.00 USD

Staking Líquido con Lido

2024-01-12 * "Stake ETH with Lido"
Assets:Crypto:Wallet:MetaMask:ETH -10 ETH {2500.00 USD}
Assets:Staking:Lido:stETH 10 stETH {2500.00 USD}
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2500.00 USD}

Escenarios Avanzados de DeFi

Estrategias de Cultivo de Rendimiento

Agricultura de Rendimiento Multi-Protocolo

; Paso 1: Depositar USDC en Compound
2024-01-30 * "Depositar USDC en Compound para agricultura de rendimiento"
Assets:Crypto:Wallet:MetaMask:USDC -20000 USDC
Assets:DeFi:Compound:cUSDC 1000 cUSDC {20.00 USD}

; Paso 2: Pedir prestado DAI contra cUSDC
2024-01-30 * "Pedir prestado DAI de Compound"
Assets:Crypto:Wallet:MetaMask:DAI 15000 DAI
Liabilities:DeFi:Compound:DebtDAI -15000 DAI

; Paso 3: Proporcionar liquidez DAI-USDC a Uniswap
2024-01-30 * "Añadir liquidez DAI-USDC para agricultura"
Assets:Crypto:Wallet:MetaMask:DAI -15000 DAI
Assets:Crypto:Wallet:MetaMask:USDC -5000 USDC ; USDC Adicional
Assets:DeFi:Uniswap:DAI-USDC-LP 200 UNI-V3-DAI-USDC {100.00 USD}

Operaciones DeFi Inter-cadena

Puenteo de Activos

2024-02-05 * "Puenteo de ETH a Polygon"
Assets:Crypto:Wallet:MetaMask:ETH -5 ETH {2600.00 USD}
Assets:Crypto:Wallet:Polygon:ETH 5 ETH {2600.00 USD}
Expenses:DeFi:Bridge:Fees 0.01 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.01 ETH {2600.00 USD}

Préstamos Flash y Arbitraje

2024-02-10 * "Oportunidad de arbitraje con préstamo flash"
; Préstamo flash
Assets:Crypto:Temp:FlashLoan 100000 USDC
Liabilities:DeFi:Aave:FlashLoan -100000 USDC

; Operación de arbitraje
Assets:Crypto:Temp:FlashLoan -100000 USDC
Assets:Crypto:Temp:Arbitrage 101500 USDC

; Reembolso de préstamo flash
Liabilities:DeFi:Aave:FlashLoan 100000 USDC
Assets:Crypto:Temp:Arbitrage -100090 USDC ; Incluyendo comisiones

; Ganancia
Assets:Crypto:Wallet:MetaMask:USDC 1410 USDC
Income:DeFi:Arbitrage:Profit 1410.00 USD

Consideraciones sobre los Informes Fiscales de DeFi

Reconocimiento de Ingresos

Todas las recompensas DeFi están sujetas a impuestos como ingresos ordinarios:

; Registrar todas las fuentes de ingresos por separado
Income:DeFi:Yield:Uniswap ; Comisiones de LP
Income:DeFi:Yield:Compound ; Intereses ganados
Income:DeFi:Staking:Ethereum ; Recompensas por staking
Income:DeFi:Governance:Tokens ; Airdrops de tokens de gobernanza
Income:DeFi:Airdrops ; Airdrops de protocolo

Deducciones de Gastos

Registra gastos deducibles:

Expenses:DeFi:Gas:Ethereum          ; Tarifas de gas
Expenses:DeFi:Gas:Polygon ; Tarifas de Capa 2
Expenses:DeFi:Interest:Aave ; Costos de endeudamiento
Expenses:DeFi:ImpermanentLoss ; PI de posiciones de LP

Seguimiento de Ganancias de Capital

Utilice la contabilidad por lotes para un seguimiento preciso de las ganancias de capital:

; Different cost basis for same token
Assets:DeFi:Compound:cUSDC 100 cUSDC {20.00 USD} ; Batch 1
Assets:DeFi:Compound:cUSDC 100 cUSDC {21.00 USD} ; Batch 2

Mejores Prácticas para la Contabilidad DeFi

1. Registro de Transacciones en Tiempo Real

  • Registrar transacciones inmediatamente después de su ejecución
  • Usar hashes de transacción para verificación
  • Monitorear mempool para transacciones pendientes

2. Seguimiento de la Optimización de Tarifas de Gas

; Seguimiento de estrategias de optimización de tarifas de gas
Expenses:DeFi:Gas:Ethereum:Standard ; Precio de gas estándar
Expenses:DeFi:Gas:Ethereum:Fast ; Precio de gas rápido
Expenses:DeFi:Gas:Ethereum:Instant ; Precio de gas instantáneo

3. Gestión de Riesgos del Protocolo

; Seguimiento de riesgos específicos del protocolo
Expenses:DeFi:Risk:SmartContract ; Fallos de contratos inteligentes
Expenses:DeFi:Risk:Liquidation ; Eventos de liquidación
Expenses:DeFi:Risk:Slippage ; Costos de deslizamiento

4. Reconciliación Automatizada

  • Configurar fuentes de precios automatizadas
  • Usar APIs de protocolo para la verificación de saldos
  • Implementar importaciones automatizadas de transacciones

5. Estándares de Documentación

  • Mantener notas detalladas de las transacciones
  • Documentar la lógica de la estrategia
  • Mantener registros de interacción del protocolo

Integración con Herramientas DeFi

Seguimiento de Portafolio

  • DeBank: Resumen de portafolio DeFi
  • Zapper: Panel de control multiprotocolo
  • Zerion: Billetera y rastreador DeFi

Informes Fiscales

  • Koinly: Cálculos fiscales DeFi
  • CoinTracker: Soporte multiprotocolo
  • TokenTax: Informes DeFi especializados

Plataformas de Análisis

  • DeFi Pulse: Análisis de protocolos
  • DeFiLlama: Seguimiento de TVL y rendimientos
  • APY.vision: Seguimiento de la pérdida impermanente

Conclusión

La complejidad de la contabilidad DeFi no debería impedirte participar en la revolución de las finanzas descentralizadas. Con el potente sistema de contabilidad de texto plano de Beancount.io, puedes:

  • Realiza un seguimiento de transacciones complejas: Gestiona interacciones multiprotocolo sin interrupciones
  • Garantiza el cumplimiento fiscal: Reconocimiento adecuado de ingresos y seguimiento de gastos
  • Supervisa el rendimiento de la cartera: Obtén información en tiempo real sobre las posiciones DeFi
  • Gestiona el riesgo: Realiza un seguimiento de la pérdida impermanente y los riesgos del protocolo
  • Escala operaciones: Desde el staking simple hasta estrategias complejas de yield farming

La clave para una contabilidad DeFi exitosa es la consistencia, la precisión y la categorización adecuada. Comienza con protocolos básicos y expande gradualmente a estrategias más complejas a medida que te familiarices con los patrones contables.

¿Listo para dominar la contabilidad DeFi? Comienza tu viaje con Beancount.io y toma el control de tu cartera de finanzas descentralizadas hoy mismo.