Blog

Tutorials, tips, and deep dives on CSV imports in Laravel.

Tutorials

Date format detection in CSV imports: ISO, European, and American

04/05/2026 -- is that April 5th or May 4th? How to detect and parse ambiguous date formats in CSV imports.

Product

Tapix under the hood: how we built a 4-step import wizard

The architecture behind Tapix: database-persisted state, batched per-column validation, immutable value objects, and chunked queue execution.

Best Practices

CSV import error recovery: from silent failures to user-friendly correction

The spectrum from silent failure to inline correction. Here's how to store, display, and resolve import errors without losing data.

Best Practices

The match-or-create pattern: linking CSV data to existing records

Three behaviors for handling CSV references to existing data: match only, match or create, and always create. Here's when to use each.

Tutorials

Building a contact importer for your CRM

End-to-end tutorial: build a CSV contact importer with name, email, phone, company relationships, choice fields, and currency parsing.

Best Practices

Intra-import deduplication: preventing duplicate records during CSV import

500 rows reference 'Acme Corp'. Without deduplication, you get 500 company records. Here's the normalized-key cache pattern that prevents it.

Tutorials

Parsing numbers and currencies from CSV files in Laravel

1,234.56 or 1.234,56? US or European? Here's how to parse numeric and currency values from CSV files without data corruption.

Tutorials

Multi-tenant CSV imports in Laravel

Tenant context disappears in queue jobs. Here's how to preserve it across the entire import pipeline -- from upload to entity resolution.

Best Practices

The hidden cost of building your own CSV importer

That two-day CSV import task? It always becomes two months. Here's the iceberg of complexity hiding beneath the upload button.

Tutorials

Auto-detecting CSV column types in Laravel

From emails to currencies, dates to booleans -- how to infer column types from CSV sample values and configure format-specific parsing.

Product

Laravel Excel vs Tapix: choosing the right import tool

Laravel Excel and Tapix solve different problems. Here's when to use each -- and why they work well together.

Best Practices

CSV column mapping UX patterns that reduce support tickets

Every user's CSV is different. Smart column mapping -- with auto-detection, preview values, and entity link mapping -- keeps imports flowing without support tickets.