IDfier KYC verifies your customers from a government ID. Send a link with no integration, or build it into your own sign-up and login with the API.
The same results whichever way you use IDfier KYC.
Name, date of birth, nationality and document type from a government ID, or just a yes or no for an age.
You choose the fields. Customers see exactly that list and approve it before anything is shared.
No passport photos or ID numbers to store, check or delete. You get the verified details only.
Every result says how the customer was verified: document and face scan, BankID or an NFC chip.
Same verified identities, same consent screen for your customer. Pick what fits how you work today.
Send a link, see the result. Ready to use today.
Best for: Landlords, rental and hire companies, marketplaces and any team that verifies customers one by one.
You need: An IDfier Business account. Sign in with IDfier; your first 10 verifications are free.
KYC built into your own sign-up and login.
Best for: Websites and apps that onboard customers themselves: marketplaces, fintech, platforms, rentals at scale.
You need: A developer and API credentials. Most teams integrate in a day.
How Login with IDfier works under the hood: the same consent screen, started from your own website or app.
Your backend
POST /api/v3/business/auth/request clientid · clientsecret { "status": 100, "data": { "referenceId": "550e8400-e29b-…", "qrReferenceSecret": "abc123", "createdAt": "2026-03-12T10:00:00Z" } }
The session is valid for five minutes.
Pick the fields you need and a language. Get the scopes to set up on your account, ready-to-copy code for every step, and the response you'll receive.
ageOver18,fullname,emailScopes are set on your business account when we set up your API access, not sent with each request. Every response then contains only these fields plus a stable id. Age limit and range scopes are Coming soon.
IDfierasync function waitForUser(referenceId) {
for (let delay = 2000; ; delay = Math.min(delay * 1.5, 10000)) {
const res = await fetch("https://api.idfier.com/api/v3/business/auth/result", {
method: "POST",
headers: {
clientid: process.env.IDFIER_CLIENT_ID,
clientsecret: process.env.IDFIER_CLIENT_SECRET,
"Content-Type": "application/json",
},
body: JSON.stringify({ referenceId }),
});
const { data } = await res.json();
const { status, expiresAt } = data.session;
if (status === "approved") return data.user;
if (status === "denied" || status === "error") throw new Error(status);
if (new Date(expiresAt) < new Date()) throw new Error("expired");
await new Promise((r) => setTimeout(r, delay));
}
}
const user = await waitForUser(referenceId);
const { id, ageOver18, fullname, email } = user;Replace $IDFIER_CLIENT_ID and $IDFIER_CLIENT_SECRET with your credentials. Keep the secret on your server.
Create a session, show a signed QR code and fetch the result. See the quickstart, code samples, data fields and errors on the developer page.
Decide what assurance you need for each customer.
Document scan + face liveness
A government-issued ID was scanned and passed a live face match. Document fields are read from the image.
authLevel: "Bronze"Swedish BankID
Authenticated with BankID, Sweden's bank-issued electronic identity. Name and personal number come from the BankID record.
authLevel: "Silver"Document scan + face liveness + NFC chip
The ID's NFC chip is read and matched to a live face scan. The chip is signed by the issuing country, so the document is provably authentic.
authLevel: "Gold"Need only a yes or no for an age limit? See age verification. Want customers to be able to verify you? See reverse KYC.
Both are IDfier KYC, with the same verified identities and the same consent screen for your customer. Verification links work out of the box from the IDfier Business dashboard, with no integration. Login with IDfier is built into your own website or app through the API. Many businesses start with links and add the API later.
The IDfier app, with their identity verified once by document and face scan, an NFC chip read or Swedish BankID. On a computer they scan a QR code; on a phone the app opens directly.
Name, email, date of birth, age, an age check (for example 18+ or an age range, as a yes or no), gender, nationality, country, document type, IDfier handle and verification level. For Swedish users, the personal identity number is available on request.
No. You receive the verified details the customer approved, never images of the document or their face.
Verification links include 10 free verifications. After that, and for the API, pricing depends on your volume: contact us for a quote.