Scanning business cards into Android Contacts

Short answer. Recognise the card on the device, treat every value as a guess you check and edit, and hand the card, saved once its name is filled in, to the contacts app's own new-contact screen or to a vCard file. The app needs no contacts permission because it never writes to Contacts itself; the final save happens in the contacts app. When a contact QR code disagrees with the printed text, the printed value stays in the field and the QR value is offered beside it. This applies to one side of one Korean or English card per image.

Dotori Business Card Scanner app icon

Dotori Business Card ScannerScans Korean and English business cards so you can review the details, then add them to Contacts or share a vCard.

Get it on Google Play

What runs on the phone, and under which conditions

The input is one image of one card side. Scan uses the phone's document scanner, which crops and straightens the card; From photos takes one image you already have. Text recognition and contact QR scanning run on the same image on the device, in parallel. Korean and English rules are applied together, so there is no recognition-language setting to pick first.

Three conditions matter before the first scan:

Every value is a guess until you check it

Names, companies and job titles are guessed from the layout, so compare each recognized value with the card image. Tap any field to edit it in place. There is no check mark to tap on each row, and a value that came from a QR code is a candidate like any other.

When the QR code and the printed card disagree

A contact QR code is decoded reliably, but that does not mean it is current or belongs to the same person as the print. The app therefore treats it as a strong candidate that never wins automatically.

What differsWhat the review screen shows
Name, company, job title or addressThe printed value stays in the field. The QR value appears as a chip under the row. Tapping the chip switches to it and counts as your edit; the printed value remains as a chip. If the QR value was also in the pre-filled memo and you have not edited the memo, the printed value takes its place there.
A phone number, email or websiteA value that exists only in the QR code becomes a separate entry to review. Remove the ones you do not want.
Same number, different labelThe number keeps its printed label, and a small line under it reads, for example, "QR says Office".
Several contact QR codesNone is merged. A note at the top says how many were found, and you enter the values you want from the card.
A URL QR codeIt appears in the Link (QR) field and is never opened automatically. The browser icon on the link row (Open link) opens it only when you tap it, and only for an http or https address. It is not exported as the contact's website.

If text recognition fails but exactly one contact QR code is found, the app can still fill the review screen from the QR code. Fields filled from QR have no highlight on the image, because there is no printed line behind them — compare them with the card yourself.

Phone numbers stay as printed

Each number keeps its label — mobile, office, direct, main or fax. Tapping the label button cycles through them if the guess is wrong, and Add phone adds a number that was missed.

A country code is added only when it is printed on the card or when you choose one under Default country for phone numbers in Settings. A Korean card does not get +82 just for being Korean, because it may list an overseas office. When a code is added, the formatted number appears in small text under the row; otherwise the printed form is what gets exported.

What reaches the contacts app and the vCard

Pressing Add to Contacts or Share vCard first saves the card, then opens the target.

Add to ContactsShare vCard
Where it goesYour contacts app's new-contact screen, filled inA .vcf file shared with an app you choose
Phones and emailsThe first of each in dedicated fields; the rest in the noteAll of them
WebsitesIn the noteAll of them
Other name, department, memo, extensionsIn the noteIn the note

Opening the new-contact screen is not the same as saving. You finish — or cancel — in the contacts app. The vCard is version 3.0 in UTF-8, and its file name carries a timestamp rather than the person's name. The field mapping, escaping and line folding are described in the tech notes.

A business card is someone else's personal information

Cards are kept in a local list inside the app. Card images are kept by default so you can look at the card again; the image still shows everything printed on it, and the app does not redact it.

Known limits of version 1

These points describe app version 1.0.0 as of 23 September 2026.

Dotori Business Card Scanner reads the card on your phone, lets you check and edit every value, and hands the saved card to your contacts app or a vCard file. More about Dotori Business Card Scanner

Get it on Google Play

Related notes