OpenEUDI SDK gyorsindító: az első ellenőrzése 5 perc alatt

Lépésről lépésre bemutató az OpenEUDI SDK telepítéséhez, egy ellenőrzési munkamenet létrehozásához és az eredmény kezeléséhez, mindez 5 percen belül DEMO módban.

Az eIDAS Pro csapata
2026. március 24.
6 perc olvasás

Előfeltételek

  • Telepített Node.js 20+
  • TypeScript-projekt (vagy JavaScript ESM-mel)
  • Terminál és a kedvenc szerkesztője

Ennyi. Nincs API-kulcs, nincs regisztráció, nincs WRPAC-tanúsítvány. A DEMO mód azonnal működik.

1. lépés: telepítés

npm install @openeudi/core

Vagy a kívánt csomagkezelővel:

pnpm add @openeudi/core
yarn add @openeudi/core

2. lépés: ellenőrző létrehozása

import { VerificationService, DemoMode, InMemorySessionStore } from '@openeudi/core';
const service = new VerificationService({
  mode: new DemoMode(),
  store: new InMemorySessionStore(),
});

A mode opció szabályozza az SDK működését:

MódViselkedésFelhasználási eset
new DemoMode()3 másodperc után automatikusan befejeződikBemutatók, értékesítési demók, landing oldalak
new MockMode()Szimulált tárcaválaszok konfigurálható adatokkalIntegrációs tesztek, CI/CD pipeline-ok
new ProductionMode(config)Valódi EUDI Tárca-ellenőrzésÉles ellenőrzések (WRPAC kell, 2026 dec.)

3. lépés: ellenőrzési munkamenet létrehozása

const session = await service.createSession({ type: 'AGE' });

// session.qrCodeUrl egy data URL a QR-kód képéhez
// session.sessionId az egyedi munkamenet-azonosító
// session.deepLink a mobilról mobilra folyamatokhoz használható

Az attributes tömb mondja meg, mit szeretne ellenőrizni. Az eIDAS Pro adatvédelem-központú logikai attribútumokra épül: igen/nem választ kap, nyers személyes adatot soha.

AttribútumVisszatérési értékLeírás
age_over_18Logikai értékBetöltötte-e a felhasználó a 18. életévét?
age_over_21Logikai értékBetöltötte-e a felhasználó a 21. életévét?
age_over_16Logikai értékBetöltötte-e a felhasználó a 16. életévét?
age_over_14Logikai értékBetöltötte-e a felhasználó a 14. életévét?

Az országszintű megfelelőség (mely országok engedélyezettek) a kereskedői beállításokban fehér- vagy feketelistával konfigurálható. Az SDK ezt automatikusan alkalmazza, anélkül hogy személyes adatot kérne a felhasználótól.

Megjegyzés: DEMO módban az attribútumok szintetikus adatokat adnak vissza. PRODUCTION módban a tárca kriptográfiailag bizonyítja a logikai értéket anélkül, hogy a tényleges születési dátumot feltárná.

4. lépés: a QR-kód megjelenítése

A munkamenet tartalmaz egy QR-kódot, amelyet a felhasználó az EUDI Tárca alkalmazásával beszkennel.

// Webes környezetben
const img = document.createElement('img');
img.src = session.qrCodeUrl;
document.getElementById('qr-container').appendChild(img);

// Reactben
function VerificationQR({ session }) {
  return <img src={session.qrCodeUrl} alt="Szkennelje be az EUDI Tárcával" />;
}

// Next.js-ben (next/image használatával)
import Image from 'next/image';
function VerificationQR({ session }) {
  return <Image src={session.qrCodeUrl} alt="Szkennelje be az EUDI Tárcával" width={256} height={256} />;
}

5. lépés: várakozás az eredményre

// Eseményalapú API (webalkalmazásokhoz ajánlott)
service.on('verified', (result) => {
  console.log('Az ellenőrzés sikeres!');
  console.log('18 év feletti:', result.verified);     // true
  console.log('Ország engedélyezett:', result.countryAllowed); // true (a fehérlista alapján)
  console.log('Munkamenet-azonosító:', result.sessionId);
  console.log('Időbélyeg:', result.verifiedAt);
});

service.on('failed', (error) => {
  console.log('Az ellenőrzés sikertelen:', error.reason);
  // 'timeout' | 'rejected' | 'invalid_credential' | 'network_error'
});

service.on('expired', () => {
  console.log('A munkamenet lejárt - generáljon új QR-kódot');
});

Vagy használja az ígéretalapú API-t:

try {
  const result = await session.waitForResult({ timeout: 120000 }); // 2 perces timeout
  console.log('Ellenőrizve:', result.verified);
} catch (error) {
  console.log('Sikertelen vagy időtúllépett:', error.reason);
}

Teljes példa: Express.js API útvonal

import express from 'express';
import { VerificationService, DemoMode, InMemorySessionStore } from '@openeudi/core';
const service = new VerificationService({
  mode: new DemoMode(),
  store: new InMemorySessionStore(),
});

const app = express();

// Új ellenőrzési munkamenet létrehozása
app.post('/api/verify', async (req, res) => {
  const session = await service.createSession({ type: 'AGE' });

  res.json({
    sessionId: session.sessionId,
    qrCodeUrl: session.qrCodeUrl,
  });
});

// Munkamenet-állapot lekérése (vagy SSE használata valós időben)
app.get('/api/verify/:sessionId', async (req, res) => {
  const status = await service.getSessionStatus(req.params.sessionId);
  res.json(status);
});

// SSE végpont valós idejű frissítésekhez
app.get('/api/verify/:sessionId/events', (req, res) => {
  res.setHeader('Content-Type', 'text/event-stream');
  res.setHeader('Cache-Control', 'no-cache');
  res.setHeader('Connection', 'keep-alive');

  service.on('verified', (result) => {
    res.write(`data: ${JSON.stringify({ type: 'verified', result })}\n\n`);
    res.end();
  });

  service.on('failed', (error) => {
    res.write(`data: ${JSON.stringify({ type: 'failed', error })}\n\n`);
    res.end();
  });
});

app.listen(3000, () => console.log('Server running on port 3000'));

Mi történik DEMO módban?

Amikor ezt a kódot DEMO módban futtatja:

  1. létrejön egy QR-kód, amely vizuálisan megegyezik az éles változattal
  2. 3 másodperc után a munkamenet automatikusan befejeződik
  3. szintetikus ellenőrzési adatok érkeznek vissza (verified: true, countryAllowed: true)
  4. az onVerified callback megkapja az eredményt

Valódi tárca nem vesz részt a folyamatban. Így az EUDI Tárcák indulása előtt felépítheti és letesztelheti a teljes UI- és backendfolyamatot.

Következő lépések

  • Váltson MOCK módra, ha konfigurálható válaszokat szeretne tesztelni (siker, hiba, timeout)
  • Adja hozzá a WooCommerce plugint a WordPress-áruházához a pénztári ellenőrzéshez
  • Olvassa el az API referenciát a haladó konfigurációhoz (egyedi QR-stílusok, munkamenet-opciók, hibakezelés)
  • Csatlakozzon a GitHub-beszélgetésekhez, ha hibát jelentene vagy funkciót kérne

Amikor az EUDI Tárcák 2026 decemberében elindulnak, a mode: new DemoMode() értéket cserélje mode: new ProductionMode(config)-ra, és adja meg a WRPAC-hoz tartozó hitelesítő adatokat, vagy használja az eIDAS Pro menedzselt szolgáltatását, hogy ne kelljen tanúsítványkezeléssel foglalkoznia.


Az OpenEUDI MIT licencű. Az SDK jelenleg fejlesztés alatt áll; jelölje be a https://github.com/openeudi tárhelyet, hogy értesüljön az első nyilvános kiadásról.

Kapcsolódó cikkek

Cikk megosztása

Segítsen másoknak megismerni az eIDAS-ellenőrzést