Browser-based utility · open access Utilidad en el navegador · acceso abierto

Etsy CSV Cleaner Etsy CSV Cleaner

Drop your Etsy Monthly Statement CSV. Get back three clean files: the normalized raw statement (formatting fixed, data untouched), a per-order transaction summary, and a cascading journal entries file ready to import into Excel or Google Sheets. Suelta tu CSV del Monthly Statement de Etsy. Recibe tres archivos limpios: el raw statement normalizado (formato corregido, valores intactos), un resumen de transactions por orden y un archivo de asientos contables en cascada listo para importar a Excel o Google Sheets.

100% private · runs in your browser · no data is uploaded 100% privado · corre en tu browser · nada se sube a internet

Step 1 · Drop your Etsy CSV Paso 1 · Suelta tu CSV de Etsy

What exactly does this tool do? ¿Qué hace exactamente esta herramienta?

Output 1 · Clean Raw Statement Salida 1 · Raw Statement limpio

Three formatting changes, all of them cosmetic — not data values: Tres cambios de formato, todos cosméticos — no valores de data:

1. $ symbol stripped from currency cells. Etsy exports values as -$2.00. Most parsers and spreadsheet import tools expect -2.00 (no $ symbol). The cleaner removes the $ but preserves the negative sign and decimal exactly. Same number, different display. Etsy exporta valores como -$2.00. La mayoría de parsers y herramientas de importación esperan -2.00 (sin $). El cleaner remueve el $ pero preserva el signo negativo y los decimales exactamente. Mismo número, distinto display.

2. “--” replaced with empty in numeric columns. Etsy uses -- to mean “no value here.” Most numeric parsers reject this and fail the import. Empty also means “no value here.” The cleaner only does this for Amount, Fees & Taxes, and Net — the numeric columns. Text columns stay untouched. Etsy usa -- para significar “sin valor.” La mayoría de parsers numéricos rechaza esto y falla la importación. Vacío también significa “sin valor.” El cleaner solo hace esto para Amount, Fees & Taxes, y Net — las columnas numéricas. Las columnas de texto quedan intactas.

3. BOM removed from file start. Etsy exports CSVs with a UTF-8 BOM (Byte Order Mark) — an invisible character at the very start that some tools choke on. Removing it has zero effect on the data; it just helps strict parsers read the file. Etsy exporta CSVs con un BOM UTF-8 (Byte Order Mark) — un caracter invisible al inicio del archivo con el que algunos parsers se atragantan. Removerlo no afecta la data; solo ayuda a parsers estrictos leer el archivo.

What stays exactly the same: Lo que queda exactamente igual:

  • Number of rowsCantidad de filas
  • Number of columnsCantidad de columnas
  • Numeric values (signs, decimals, magnitude)Valores numéricos (signos, decimales, magnitud)
  • All text fields (Date, Type, Title, Info, Tax Details)Todos los campos de texto (Date, Type, Title, Info, Tax Details)
  • Order of rowsOrden de las filas

Output 2 · Consolidated Transactions Salida 2 · Transactions consolidadas

Etsy’s CSV is flat — one order generates 4-7 separate rows (the sale, the sales tax, multiple fee rows). To create a per-order summary (one row per order with all journal entry fields), the tool consolidates these rows by Order #. El CSV de Etsy es plano — una orden genera 4-7 filas separadas (la venta, sales tax, varias filas de fees). Para crear un resumen por orden (una fila por orden con todos los campos de asientos contables), la herramienta consolida estas filas por Order #.

For each unique Order #: Por cada Order # único:

  • Order ID — extracted from Sale row TitleOrder ID — extraído del Title de la fila Sale
  • Date — from the Sale row, normalized to ISO (YYYY-MM-DD)Date — de la fila Sale, normalizada a ISO (YYYY-MM-DD)
  • Item Price — the Sale row Amount (Etsy bundles item + customer-paid shipping into this single value)Item Price — el Amount de la fila Sale (Etsy junta item + shipping del cliente en este valor)
  • Sales Tax — from the matching Tax row with the same Order # in InfoSales Tax — de la fila Tax que matchea con el mismo Order # en Info
  • Status — “Completed” unless a Refund row exists for this Order #Status — “Completed” a menos que exista una fila Refund para este Order #

Each per-order row includes all fields needed for JE 1, JE 2, and JE 3. Combined with the Journal Entries file (File 3), you have all 4 journal entry types ready to import — zero manual data entry per order. Cada fila por orden incluye todos los campos necesarios para JE 1, JE 2 y JE 3. Combinado con el archivo de Journal Entries (Archivo 3), tienes los 4 tipos de asientos listos para importar — cero entrada manual por orden.

Fields the tool leaves blank (manual entry if needed): Buyer name, Discount, Ad Source/Cost (Etsy Ads are billed daily, not per-order), Shipping Cost Paid (USPS labels in the CSV don’t carry an Order # link), and COGS (not in Etsy data). The most useful per-order fields are populated. Campos que la herramienta deja en blanco (entrada manual si los quieres): Nombre del Buyer, Discount, Ad Source/Cost (los Etsy Ads se cobran por día, no por orden), Shipping Cost Paid (las etiquetas USPS en el CSV no traen link al Order #), y COGS (no está en data de Etsy). Los campos más útiles por orden sí se rellenan.

If you’re an accountant or auditor: the original CSV is your source document. Keep it archived. The cleaned + consolidated versions are derivatives for analysis — standard practice. The audit trail is preserved. Si eres contador o auditor: el CSV original es tu documento fuente. Archívalo. Las versiones limpia + consolidada son derivaciones para análisis — práctica estándar. El audit trail se preserva.