● v1.0 PHP 8.1+ Laravel 10.0+ Filament 4.0+

The simplest CSV/Excel import for Filament PHP

Import thousands of rows in seconds. Automatic mapping, row validation, duplicate handling, dark mode — all in a beautiful 3-step wizard.

15k+ downloads 1.2k stars 246 packages MIT
myapp.test/admin/import
1
Upload File
CSV, XLSX, or ODS — up to 50MB
2
Column Mapping
Auto-detected 12 of 12 columns ✓
3
Preview & Import
Waiting for confirmation...
Row Name Email Status
1Alice Chenalice@co...Valid
2Bob Wangbob@co...Valid
.........
Import 247 rows → Cancel
Interface

Interface Preview

What you see is what you get!

Batch import by uploading files

Upload File

Field mapping supports field splitting and field merging operations;

Field mapping

Import Preview: By default, the first ten imported data items will be previewed!

Import Preview

Importing a large amount of data can achieve efficient data import!

Batch Import

Import logs to view import information and re-import!

Import log

By viewing the logs, you can see the errors that occurred during the import process!

Log Viewing

/
Features

Why Choose Us

Features that make your work twice as productive!

Dead Simple

That's it. No config arrays, no field mapping boilerplate, no CSV parsing code. The plugin reads your Eloquent model, detects the columns, matches them to your CSV headers, validates everything, previews it, and imports it — all from that single line. Most users never need more than this.

// That's it.
Import::make(User::class);
1 Line Setup

Smart Column Mapping

Your CSV says "Full Name" or "姓名" or "Customer Name"? Doesn't matter — it'll map to your `name` field. Column order reversed? Headers have extra spaces or typos? The engine handles it. Pro users als...

Streaming Engine

Most import tools load the entire spreadsheet into memory — fine for 500 rows, terrifying for 50,000. Raise Import reads row by row with OpenSpout's streaming engine, so memory usage stays flat no mat...

Validation Before Commit

Ever imported 500 rows only to discover row 300 had a bad email and now you have 299 good rows + 1 broken record in your database? Raise Import validates every row first, then writes. Row-level Larave...

Data Pipeline

Real-world data is messy. Usernames have trailing spaces, emails are in mixed case, dates are in five different formats, passwords are plain text. The pipeline system is like Laravel middleware for yo...

Elegant Wizard

Import tools shouldn't require a developer to operate. Your product manager needs to upload a user list? Your operations team needs to update product data? Customer success wants to bulk-import client...

Full Traceability

Who imported what, when, from which file, with what results? Every import job is automatically logged. Browse the full import history in a dedicated Filament resource — filter by date, by model, by st...

Flexible Integration
Raise Import isn't just a button in your Filament panel. Five REST API endpoints let you trigger imports from anywhere:...
Zero-Risk Pricing
The Community edition is genuinely free — MIT open source, forever. It covers the full import workflow and handles 80% o...
Quick Start

Ready to simplify your imports?

Install with one Composer command and start importing in minutes.

Code
# Install the package
$ composer require raise-studio/import

# Add to your Filament resource
use Raise\Import\Import;

// That's it. One line import.
Import::make(User::class);
Live Result
Rows imported 1,234
Duplicates skipped 12
Validation errors 3
Duration 2.3s
Pricing

Choose Your Plan

Start Free, Scale as You Grow

Free Plan

Free

  • Multi-format import CSV, XLSX, ODS with OpenSpout streaming engine, delimiter auto-detect, upload validation
  • Auto field detection reads columns from your Eloquent model, plus `Field::make()->label()->rules()` chainable API
  • Auto column mapping fuzzy match (similar_text ≥ 70%) with Chinese/English aliases, zero config in most cases
  • 3-step wizard UI Upload → Mapping → Preview, with in-browser data preview table and validation status
  • Row-level validation powered by Laravel Validator, support all built-in and custom rules
  • Duplicate handling 3 strategies: Skip existing / Update existing / Error, configurable per model
  • Template download + data transform download CSV templates with headers & samples; `mutateBeforeCreate` callback for pre-insert transforms
  • Polished DX dark mode, English/简体中文 bilingual, one-line `RaiseImportPlugin::make()` registration
Use Community
✦ Most Popular

Pro Plan

$9.90 one-time
  • Pipeline system 8 built-in pipes: Trim, Lowercase, Bcrypt, DateFormat, DefaultValue, MergeColumns, SplitColumn + custom Closure pipes for any logic
  • Advanced column mapping merge multiple CSV columns into one field, split one column into many, ignore unwanted columns, reorder, multi-column mapping
  • Import history CRUD full Filament resource with list, detail view, filtering, and sorting for every import job
  • Stats dashboard widget 4 stat cards showing total records, imported, failed, and skipped at a glance
  • 5 REST API endpoints programmatic upload, preview, import, template download, and error export for headless workflows
  • Queue support auto-queue large imports via `ShouldQueue`, configurable threshold, non-blocking background processing
  • Re-import + error report one-click retry failed records, download row-level error details as CSV for debugging
  • Priority support + guarantee priority email support from the maintainer, 14-day no-questions-asked money-back guarantee
Get Pro Now →
FAQ

FAQ

Frequently asked questions

Community is free and MIT-licensed, suitable for most projects. Pro adds advanced features like the pipeline system, import history, queue support, and REST API — designed for teams and production workflows.
One-time payment. $10 gives you lifetime access to all Pro features and future updates.
Yes. We offer a 14-day money-back guarantee. Contact us and we'll process it through Paddle.
After purchase, you'll receive a license key by email. Add RAISE_IMPORT_LICENSE_KEY=your-key to your .env file. See activation guide.