How to upload a lot of data from an excel with patients (name, ID, address) to openemr?

I have an excel with 9000 patients, along with their full name, id, address. I need to move that information to openemr, but I don’t know how to do it quickly, without the need to register 1 by 1.

1 Like

Hi @Nikolas_Bustamante,

Welcome to the community. We do not currently have a way to batch import patients. However, with SQL knowledge and a little PHP (or really any language) you could write the import yourself.

There is certainly no need to register each patient 1 by 1

Hi Nikolas,

If you are unfamiliar with PHP or MySQL I have experience writing import and export scripts. Feel free to reach out if you would like me to assist you.


1 Like

The way I do it is to use PHPMyAdmin and export the patient data table as a CSV. That way you have the format needed to import the CSV into the table. When you fill out the CSV with the patient data. It can be imported in bulk.


@Nikolas_Bustamante i recently did what you are needing to do (only it was 3800 patients instead of 9000). I recommend going the PhpMyAdmin with a csv route like Sherwin mentioned.

In case you want more specific info, here is what I did. I printed out the table schema for “patient_data” table in oemr. I looked at my spreadsheet to see what data I had and looked at the table schema for what oemr was looking for. I made a backup copy of my spreadsheet in case i messed up the next part. Which was to rearrange the columns in the spread sheet to match the columns in the “patient_data” table. Adding blank columns where necessary because I didn’t have data for every column. In my case i had to change the format of all the date columns because the dates in my spread sheet had "/’ between the number. Easy enough to fix but it needs to be fixed before importing the data.

Once I had my spread sheet the way i needed it, i exported it as a csv. Went into phpMyAdmin, and imported it. Don’t be surprised if you you get an error the first time or two that you try to import. I had some other formatting issues i had to address that i didn’t see until trying to import the data.

Things to note: if there are other patients already in the patient_data table. You might want to make a copy of the table before importing the data. In case the import doesn’t go as planned you can revert back to the original table.

And if the first row of your spreadsheet has the column names in it. The import feature of phpMyAdmin will let you skip rows at the beginning of the table for import. You’ll want to make sure you do that otherwise you’ll get formatting errors from mysql.

I hope this info helps.

1 Like

It really depends on the columns you have. If you are trying to enter only names and addresses and other demographic things, the import should be quite simple. If you need to add insurace details and other things it makes the import more complicated.

is the PHPMyADmin a free program? I found it here but would like to now additional guidance to learn more on how to make the columns to import the names & demographics.

Yes, it is an open-source database management application. If you are using Ubuntu, it can be installed by typing in sudo apt install phpmyadmin.

Sorry, I don’t follow. I need to install Ubuntu on my CPU to use phony admin to create codes to import CVS excel file into OpenEMR? For patient info and demographics

I wrote “if you are using”. Follow the instructions on to install on whatever OS you are using. You will be fine.

@JJaylina there are other db admin programs out there in addition to phpmyadmin. On some servers i use Adminer. You only need to upload one file to your webserver (open emr server) to use adminer.

Ultimately if you aren’t familiar with the specific processes need to import data it might be worth while to get one of the paid support people here to do it for you. If the data isn’t brought in correct the first time it could cause many, many problems down the road.