The open source
CSV importer
Onboard customer data faster than ever before

How It Works
1. Embed Importer
Embed the TableFlow import experience inside your app with just a few lines of code.
function MyComponent() {
const [isOpen, setIsOpen] = useState(false);
return (
<>
<button onClick={() => setIsOpen(true)}>Open TableFlow Importer</button>
<TableFlowImporter
importerId={"6de452a2-bd1f-4cb3-b29b-0f8a2e3d9353"} // Your importer ID
modalIsOpen={isOpen}
modalOnCloseTriggered={() => setIsOpen(false)}
metadata={{"user_id": 1234}} // Pass through user info
onComplete={(data) => console.log(data)}
/>
</>
);
}
const importer = createTableFlowImporter({
importerId: "6de452a2-bd1f-4cb3-b29b-0f8a2e3d9353", //Use your importer ID
modalOnCloseTriggered: () => importer.close(),
metadata: {"user_id": 1234}, // Pass through user or import info
onComplete: (data) => console.log(data)
});
const uploadButton = document.getElementById("uploadButton");
uploadButton.addEventListener("click", () => {
importer?.showModal();
});
<script src="https://unpkg.com/@tableflow/js@latest/build/index.js"></script>
</head>
<body>
<button id="uploadButton">Open TableFlow Importer</button>
<script>
const importer = createTableFlowImporter({
importerId: "6de452a2-bd1f-4cb3-b29b-0f8a2e3d9353", // Use your importer ID
modalOnCloseTriggered: () => importer.close(),
darkMode: true,
metadata: {"user_id": 1234}, // Pass through user or import info
onComplete: (data) => console.log(data),
});
const uploadButton = document.getElementById("uploadButton");
uploadButton.addEventListener("click", () => {
importer?.showModal();
});
</script>
</body>
2. Import Data
Customers upload CSV files, map columns, and resolve errors to complete the import.
3. Retrieve Data
Developers access the clean JSON data via frontend SDK or the TableFlow API.
"id": "170f9ae1-c109-4e26-83a1-b31f2caa81b2",
"num_rows": 2,
"metadata":
{
"user_id": 1234,
},
"rows": [
{
"index": 0,
"values": {
"age": "23",
"email": "maria@example.com",
"first_name": "Maria",
"last_name": "Martinez"
}
},
{
"index": 1,
"values": {
"age": "32",
"email": "robert@example.com",
"first_name": "Robert",
"last_name": "Jones"
}
}
]
}

How it works
How it works
Create an importer in the admin UI without any coding required.
Collect data by embedding the importer in your app or sharing a link with customers.
Retrieve the clean and validated data through the admin UI or through our API.
Simple user flow.
Powerful results.



Time Savings
Free your engineering team to focus on core product innovation and new features.
Accelerate new customer onboarding with TableFlow’s streamlined data import process.
Rescue your team from manual data cleanup using advanced error detection and auto-fix features.
without TableFlow
Features
Embed a customizable modal into your app using our frontend SDKS
Easily configure and customize your importer without writing code
Customize the import experience to match your application
Automatically detect header rows and map columns
Enforce requirements on all imported data
Validate and import millions of rows of data in seconds
Embed a customizable modal into your app using our frontend SDKS
Easily configure and customize your importer without writing code
Customize the import experience to match your application
Automatically detect header rows and map columns
Enforce requirements on all imported data
Validate and import millions of rows of data in seconds
In our clients' words
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere."
Co Founder, TableFlow
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere."
Co Founder, TableFlow
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere."
Co Founder, TableFlow
Data security is our priority
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore.Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo con.


