How to Account for Refunds and Returns in E-commerce

Título de artículo largo 'Cómo contabilizar reembolsos y devoluciones' con un gráfico de recibo superpuesto en el lado derecho.

A refund is not a negative sale. It's four separate accounting events wearing one trench coat.


It's the second week of January. Q4 was your best quarter ever — December alone did more revenue than the entire first half of last year. Then the returns window opened.

Now the refunds are pouring in, and the books have stopped making sense. Your payouts are noticeably smaller than your sales. Half the refunds you're processing belong to orders from December — a month you thought was closed. And when you total up what left your account versus what you refunded customers, the numbers don't match, because the processing fees from the original sales seem to have vanished into nowhere.

If you've been staring at this and wondering whether you broke something, you didn't. You're just discovering that nobody ever taught you how to account for refunds in ecommerce — and the intuitive approach almost everyone starts with is wrong in a specific, fixable way.

Here's the intuition, stated plainly: "A refund is just a negative sale. Subtract it and move on."

That's the lie. It feels right because the customer's experience is symmetrical — money in, money out. But your books aren't recording the customer's experience. They're recording four separate financial events, and a refund reverses each one differently. Some fully, some partially, and one not at all.

How to Account for Refunds in E-commerce: One Refund, Four Ledgers

Let's make this concrete with a clearly fictional order.

In December, a customer bought a jacket for $120 total: $112 for the product, $8 in sales tax. Your processor charged you a $3.50 processing fee on the sale. The jacket cost you $45 wholesale, which you recorded as cost of goods sold.

In January, the customer returns it. Here's what actually has to happen in your books.

1. Revenue: contra-revenue, not deleted income

Your first instinct might be to delete or reduce the original sale. Don't. That December sale really happened — erasing it destroys your gross revenue figure, your refund-rate visibility, and your audit trail.

En su lugar, los 112 $ se registran en una cuenta de contraingresos, normalmente llamada "Reembolsos y Devoluciones" o "Devoluciones y Bonificaciones sobre Ventas", que se encuentra debajo de ingresos y tiene saldo deudor. Los ingresos brutos se mantienen intactos, los reembolsos se muestran como su propia línea y los ingresos netos son la diferencia. Ahora puede ver que su tienda tuvo 112 $ en ventas y 112 $ en devoluciones, lo que es información muy diferente a "No pasó nada".

2. Processing fees: the money that doesn't come back

Esta es la parte que rompe la mayoría de las conciliaciones de enero. La mayoría de los procesadores, incluidos los Pagos de Shopify, no devuelven la comisión de procesamiento cuando reembolsa al cliente.

Así que el cliente recupera sus 120 $ completos, pero su comisión de 3,50 $ de gasto de diciembre sobrevive. No hay ninguna entrada de reversión que hacer: la comisión simplemente permanece en sus libros como un costo real. Lo que significa que cada reembolso le cuesta dinero en silencio, y un pago durante una semana con muchos reembolsos será menor de lo que predice "ventas menos reembolsos". Esa diferencia no es un error. Son las comisiones.

3. Sales tax: reversing a liability, not income

Los 8 $ de impuesto sobre las ventas nunca fueron su dinero. Cuando los cobró, fueron a una cuenta de pasivo de impuesto sobre las ventas a pagar; usted los estaba reteniendo para el estado.

Cuando reembolsa el pedido, ese pasivo tiene que revertirse: débitos al impuesto sobre las ventas a pagar por 8 $, para que ya no lo deba. Omita este paso y remitirá impuestos sobre una venta que ya no existe. Los estados son famosos por ser poco flexibles a la hora de devolver ese dinero, por lo que es mucho mejor no enviarlo en primer lugar.

4. Inventory and COGS: only if the goods come back sellable

Si la chaqueta vuelve en condiciones revendibles, revierte el lado del costo: débitos al inventario por 45 $, créditos al costo de los bienes vendidos por 45 $. La chaqueta vuelve a ser un activo.

Si vuelve dañada, usada, o no vuelve en absoluto, no hace ninguna reversión; los 45 $ permanecen en el costo de los bienes vendidos como el costo real de esa transacción. Esta es una decisión que el software no puede tomar completamente por usted, por eso su proceso de devoluciones necesita un punto de control de "vendible o no" que alimente su contabilidad.

Aquí está la imagen completa de nuestra devolución de 120 $, asumiendo que la chaqueta es revendible:

Parte Cuenta Débito Crédito
Ingresos Reembolsos y Devoluciones (contraingresos) $112.00
Impuesto sobre las ventas Impuesto sobre las ventas a pagar $8.00
Salida de efectivo Cuenta de compensación del procesador de pagos $120.00
Inventario Inventario $45.00
COGS Costo de los bienes vendidos $45.00

¿Y la comisión? No está en ninguna parte de esta entrada: los 3,50 $ originales permanecen exactamente donde los puso diciembre. Resultado neto: usted pierde 120 $ en efectivo, pierde 3,50 $ en comisiones para siempre y recuperó una chaqueta de 45 $. Eso es lo que es realmente un reembolso.

[IMAGEN: Diagrama que muestra un reembolso dividiéndose en cuatro flechas — ingresos, comisiones, impuesto sobre las ventas, inventario — cada una aterrizando en una cuenta diferente]

The Special Cases That Bite in January

La versión limpia de cuatro partes cubre un reembolso completo de un pedido de un solo artículo. Los eneros reales son más complicados. Aquí está la contabilidad de devoluciones que enfrentan las tiendas de comercio electrónico.

Partial refunds

Reembolse 40 $ de un pedido de 120 $ y cada parte se escala proporcionalmente — contraingresos parciales, reversión parcial del impuesto sobre las ventas — excepto el inventario, que normalmente no se mueve en absoluto, porque un reembolso parcial generalmente significa que el cliente se quedó con los productos. Un reembolso de apaciguamiento de 40 $ por una entrega tardía afecta a los ingresos, los impuestos y el efectivo. Nunca afecta al costo de los bienes vendidos.

Cross-period refunds: the December sale, refunded in January

This is the single biggest reason January books "break." The sale lives in December; the refund lives in January. You do not reopen December to net them against each other — the refund is a January event, recorded to January's contra-revenue.

The consequence: January's net revenue looks bad, because it's carrying the returns from December's volume without December's sales. That's not a bookkeeping error. That's reality, and seeing it clearly is the point. It also means your December numbers slightly overstate what you ultimately kept — worth remembering before you make January inventory bets based on Q4's top line.

Chargebacks vs. refunds

A chargeback is not a refund with attitude — it's a different mechanism. The customer's bank claws the money back through the processor, you're typically charged a dispute fee on top (which, unlike the refund itself, you may get back only if you win), and the whole thing can sit unresolved for weeks.

Book chargebacks to their own account rather than lumping them into refunds. The fee mechanics differ, the timing differs, and a rising chargeback rate is an operational alarm you want to be able to see.

Cancellations are a third species again, and it's worth seeing how sync software models the difference. In LedgerPort, a "Void QB orders for cancelled orders" setting voids the QuickBooks transaction when an already-synced order gets cancelled — a void, not a deletion and not a refund, so the record survives for your audit trail while the revenue comes out; orders cancelled before they ever synced are simply skipped. A refund, by contrast, always produces a linked reversing document against the original sale. And if you issue store credit instead of refunding cash, that's a fourth event: gift cards and store credit get recorded as liabilities, not revenue — the same logic as the sales tax leg above, applied to merchandise you now owe.

Pestaña de pedidos de configuración de sincronización de LedgerPort en el plugin de WooCommerce que muestra la tarjeta de método de sincronización y la tarjeta de desencadenantes y filtrado de sincronización con casillas de verificación de estado de pedido y manejo de pedidos cancelados
Refund, cancellation, and void are separate settings, not one lump — shown here in the WooCommerce plugin’s Orders tab. Full walkthrough: Managing the Sync Configuration in LedgerPort →

Restocking fees

If you charge a 10% restocking fee, you refund $108 on our $120 order but the contra-revenue entry is still based on the full product amount — the $12 you kept gets recorded as its own income line (restocking fee income) or as a reduction of the refund. Either way, don't let it silently vanish into a "close enough" refund amount, because it's the difference between your refund total and your cash-out total ever reconciling.

The Structure That Keeps This Sane

You don't fix refund accounting one entry at a time in January. You fix it with structure, set up once. Three pieces:

A dedicated contra-revenue account. If refunds are currently reducing your income line invisibly, create "Refunds and Returns" under income and route every refund there. Your P&L instantly starts telling you your refund rate — most store owners are surprised by the number.

Resumen mensual de asientos de reembolso. No necesita un asiento de diario de cuatro patas por reembolso. Lo que necesita es que los reembolsos de cada mes se resuman con precisión en las cuatro patas: ingresos, impuestos, inventario, dejando las comisiones intactas, para que el mes sea autosuficiente. Esto también es lo que hace que los reembolsos entre períodos no sean un evento: el resumen de enero simplemente incluye las devoluciones de diciembre.

Conciliación de pagos que espera reembolsos. Un pago con muchos reembolsos nunca será igual a las ventas menos los reembolsos, debido a las comisiones no devueltas. Su proceso de conciliación tiene que dividir cada pago en ventas, reembolsos y comisiones antes de compararlo con el depósito bancario; el método completo se encuentra en nuestra guía para conciliar pagos de Shopify en QuickBooks. Y si implementa esta estructura antes de fin de año, la temporada de impuestos dejará de ser un proyecto de arqueología; nuestra lista de verificación de preparación de impuestos para tiendas Shopify muestra dónde los datos limpios de reembolsos dan sus frutos.

Where Automation Picks This Up

Todo lo anterior se puede hacer manualmente. También es exactamente el tipo de trabajo repetitivo y de cuatro cosas a la vez que el software debería estar haciendo, que es donde una herramienta de sincronización se gana su sueldo.

El manejo de reembolsos de LedgerPort aplica esta estructura automáticamente para tiendas Shopify y WooCommerce: los reembolsos se registran en una cuenta de ingresos contrapartida en lugar de sobrescribir las ventas, las reversiones de impuestos sobre las ventas se calculan por reembolso, las comisiones de procesamiento no devueltas se mantienen separadas para que los pagos sigan coincidiendo, y los reembolsos entre períodos llegan al mes correcto sin tocar sus libros cerrados. En el plan Scale, los diarios de pago llegan con las comisiones y los reembolsos ya desglosados; los precios comienzan gratis, con planes de pago a partir de $25/mes y una garantía de devolución de dinero de 14 días.

El lado de QuickBooks refleja lo que su contador haría manualmente. Los pedidos que se sincronizan como facturas obtienen una nota de crédito vinculada a la factura original; los pedidos que se sincronizan como recibos de venta obtienen un recibo de reembolso vinculado a la venta original. De cualquier manera, la transacción original de diciembre permanece intacta, que es exactamente la regla de "no eliminar la venta" de la estructura de cuatro patas anterior, aplicada por el software. Los reembolsos parciales crean una transacción solo por el monto reembolsado, con artículos, impuestos y envío desglosados para que coincidan con lo que se reembolsó en Shopify.

Activarlo es una configuración: en Configuración de sincronización » Pedidos, marque Reembolsado, Parcialmente Reembolsado o ambos como desencadenantes del estado del pago.

Pestaña de pedidos de configuración de sincronización de LedgerPort que muestra la sección de desencadenantes de sincronización con casillas de verificación de estado de pago reembolsado y parcialmente reembolsado
Dos casillas de verificación deciden si los reembolsos llegan a QuickBooks o no; la mayoría de las tiendas deberían habilitar ambas. Tutorial completo: Gestión de la sincronización de reembolsos de Shopify en LedgerPort →

Algunos compromisos honestos que debes conocer antes de depender de él. Un reembolso solo puede adjuntarse a un pedido que ya existe en QuickBooks; si la venta original nunca se sincronizó, el reembolso no tiene nada sobre lo que aterrizar hasta que sincronices el pedido primero. Si un reembolso se edita en Shopify después de haber sido emitido, la cantidad sincronizada puede llegar incorrecta hasta que la vuelvas a enviar. Y si no se habilita ninguno de los desencadenantes de reembolso, los reembolsos se excluyen de la sincronización por completo y el saldo de tu QuickBooks se desvía silenciosamente de Shopify. Ninguno de estos son problemas de rehacer los libros: cuando uno se escapa, vuelves a sincronizar manualmente el pedido específico y LedgerPort crea la transacción de reembolso faltante.

On WooCommerce: refunds are per-gateway plumbing

La historia anterior es la edición de Shopify. En WooCommerce, los reembolsos son una entidad sincronizada de primera clase por derecho propio: el plugin LedgerPort registra un webhook dedicado refund.created, por lo que la emisión de un reembolso dispara su propio evento de sincronización en lugar de inferirse de una edición del pedido. Y debido a que diferentes pasarelas liquidan los reembolsos de manera diferente, la sincronización de reembolsos se configura por pasarela en Configuración de Sincronización » Pagos: cada pasarela de pago que LedgerPort detecta en tu tienda obtiene su propio interruptor de habilitación de reembolso, su propia cuenta de compensación y su propia numeración de referencia de reembolso —un formato de prefijo/sufijo o el ID de reembolso de WooCommerce— para que cada reembolso en QuickBooks se remonte al evento exacto de la tienda que lo creó.

La recompensa operativa es la verificación. La pestaña Pagos de la página Sincronización Manual reemplaza la búsqueda de texto con dos filtros desplegables —pasarela de pago y estado de sincronización—, por lo que "cada pago de Stripe que aún no ha llegado a QuickBooks" es una consulta de dos desplegables. Ese mismo par de filtros es cómo confirmas, durante una semana con muchos reembolsos, que el flujo de ingresos contra-ingresos realmente se ejecutó para cada pasarela en lugar de asumir que lo hizo.

Pestaña de pagos de sincronización manual de LedgerPort en el plugin de WooCommerce que muestra filtros desplegables para la pasarela de pago y el estado de sincronización encima de una lista de pagos para enviar a QuickBooks
Pasarela más estado de sincronización: los dos desplegables que te dicen si cada reembolso llegó realmente a QuickBooks. Se muestra la edición del plugin WooCommerce. Tutorial completo: Cómo enviar datos históricos a QuickBooks en LedgerPort →

Una advertencia honesta: ninguna herramienta puede decirte si una chaqueta devuelta es vendible. La parte del inventario todavía necesita una decisión humana en el mostrador de devoluciones. Lo que la automatización elimina es todo lo que sucede después de esa decisión.

Refunds Never Become Fun. That's Not the Goal.

Aquí está la verdad tragicómica de todo esto: incluso con libros de contabilidad perfectos, los reembolsos de enero todavía duelen. Todavía estás devolviendo efectivo de tu mejor trimestre, todavía estás comiendo las tarifas de procesamiento, todavía estás viendo cómo los ingresos netos bajan mientras pasa la ola de devoluciones.

Lo que cambia es que el dolor se vuelve legible. El pago coincide. La obligación tributaria es correcta. Diciembre permanece cerrado. La tasa de reembolso es un número en un informe en lugar de una mala sensación en el estómago. Los reembolsos pasan de ser una crisis a ser aburridos, y aburrido, en contabilidad, es el objetivo final.

Si tu enero se parece al de la parte superior de esta publicación —pagos reducidos, reembolsos de diciembre que persisten en enero, comisiones desaparecidas— la estructura de cuatro patas es la solución, y puedes tenerla funcionando antes de la próxima oleada de devoluciones. Empieza gratis con LedgerPort y deja que registre correctamente el próximo reembolso por ti →

Deja de Introducir Datos Manualmente Para Siempre

Conecta tu tienda con QuickBooks en 15 minutos y deja que LedgerPort se encargue del resto.

Empezar Gratis Ver precios →

Conectemos:

Automatiza Tu Contabilidad de E-commerce Hoy Mismo

Conecta tu tienda Shopify o WooCommerce con QuickBooks en menos de 15 minutos, sin necesidad de código.

Garantía de devolución de 14 días · Plan gratuito disponible