무료
개발, 테스트 및 초기 사용자 확보에 적합합니다.
- 매월 500건의 전체 KYC 인증
- 신분증, 라이브니스, 얼굴 매칭, 기기 및 IP 확인
- 200개 이상의 사기 신호, 차단 목록, 중복 확인
- Didit 네트워크 전반에서 KYC 재사용 가능
- 워크플로우 빌더, 케이스 관리, SDK
- AI 지원 콘솔 내 AI 에이전트, 문서, 커뮤니티.
7개국에서 사용되는 5가지 국가 eID(MitID, BankID Sweden, Finnish Trust Network, Smart-ID, Mobile-ID)로 eID 인증을 실행하세요. 각 eID는 서명된 이름, 생년월일, 그리고 스웨덴 주민등록번호(MitID는 가명화된 번호)와 같은 제도 식별자를 반환합니다. eID가 없는 사용자는 동일한 워크플로우 내에서 220개 이상의 국가 및 지역에서 문서 확인을 통해 인증을 완료할 수 있습니다.
전 세계 3,000개 이상의 기관에서 신뢰합니다.
eID 로그인이 제공하는 것
eID(전자 신분증) 로그인은 문서 사진을 해당 체계가 서명한 데이터로 대체합니다. Didit은 서명을 확인하고 그 결과를 세션에 기록합니다.
워크플로우 빌더에서 ID Verification 단계를 열고, 국가를 선택한 다음 'Wallets accepted'에서 허용할 eID를 체크합니다. 그런 다음 로그인 실패 시의 동작을 선택합니다: 문서 캡처로 대체하거나 거부합니다.
메서드 카탈로그에서 바로
카탈로그에 포함
지원 국가
eIDAS 높음
MitID · Danish Agency for Digital Government
하나 이상의 지갑을 지원하는 국가
국가
EUDI Wallet 지원
지원 범위는 카탈로그 국가별로 다릅니다. 여기에 표시된 국기는 해당 국가에 지갑이 등록되어 있음을 의미하며, 실제 서비스가 제공되고 있음을 뜻하지는 않습니다.
136개 eID 제도 중 136개
MitID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Mobile-ID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Smart-ID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Estonian ID card and Digi-ID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Finnish Trust Network (bank IDs)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
FINeID citizen certificate (ID card)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Mobiilivarmenne
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Auðkenni (app, SIM and card)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Mobile-ID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Smart-ID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Asmens tapatybės kortelė (identity card)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Smart-ID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
eParaksts mobile
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
eID karte (identity card)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
eParaksts karte
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
BankID (Norway)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Buypass ID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Vipps
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Commfides eID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
MinID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
BankID Sweden
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Freja eID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
SverigeID
아직 출시되지 않았습니다
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
ID Austria
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Smart-ID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
itsme
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Belgian eID card
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
MyGov.be key
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Swiss E-ID (swiyu)
아직 출시되지 않았습니다
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
SwissID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Online-Ausweisfunktion (Personalausweis)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
d-you
아직 출시되지 않았습니다
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
FranceConnect
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
France Identité
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
L'Identité Numérique La Poste
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
eID.li
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
itsme
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Luxembourg eID card
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
LuxTrust
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
iDIN
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
itsme
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
DigiD
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
eHerkenning (business login)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Yivi
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
GOV.UK Wallet
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
OneID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
GOV.UK One Login
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Government Digital Wallet
아직 출시되지 않았습니다
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
MyGovID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Digital Identity (IdentiTek)
아직 출시되지 않았습니다
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
e-Albania
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
B-Trust Mobile
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
eAuth
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Electronic identity certificate (identity card)
아직 출시되지 않았습니다
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Evrotrust eID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Cyprus national eID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Bank iD
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
MojeID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
eDoklady
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
eObčanka (identity card)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Identita občana (NIA)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Mobilní klíč eGovernmentu
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Cartera Digital Beta
아직 출시되지 않았습니다
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Cl@ve
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
DNIe (DNI 3.0 and 4.0)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
MiDNI
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Gov.gr Wallet
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
TAXISnet credentials
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Certilia mobile.ID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
eOI (identity card)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
NIAS (e-Građani)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
DÁP (Digitális Állampolgárság)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Ügyfélkapu+
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
CIE and CieID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
IT-Wallet
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
SPID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Carte de identitate (identity card)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
EVO
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
EVOSign
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
MPass
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Semnătura Mobilă
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Evrotrust eID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
m.Uslugi
아직 출시되지 않았습니다
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
OneID (KIBS)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
uslugi.gov.mk eID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Maltese e-ID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
e-dowód (identity card)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
login.gov.pl
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
mObywatel
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Profil Zaufany
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Autenticação.gov
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Cartão de Cidadão
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Chave Móvel Digital
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Carte electronică de identitate
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
ROeID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
eID.gov.rs (ConsentID)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Lična karta (identity card)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
eOI and eOsebna
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
SI-PASS
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
eID karta (identity card)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
MeID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Slovensko v mobile
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
e-Devlet
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
T.C. Kimlik Kartı (identity card)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Diia
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
BankID NBU
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
UAE PASS
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Kuwait Mobile ID (Hawyti)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Absher
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Nafath
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
ConnectID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
myID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
National Online Identity Authentication
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Identitas Kependudukan Digital (IKD)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Aadhaar e-KYC
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
DigiLocker
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
My Number Card (JPKI)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Mobile ID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
RealMe verified identity
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
PhilSys (PhilID, ePhilID)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Singpass (Myinfo)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
NDID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
ThaID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Mi Argentina
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
gov.br
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Service d'authentification gouvernementale
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Llave MX
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
DNIe 3.0
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Apple Wallet Digital ID
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Google Wallet ID Pass
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
ID.me
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Login.gov
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
State mobile driver's licences (mDL)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Cédula digital wallet
아직 출시되지 않았습니다
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
National Identification Number (NIN)
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
Smart ID card
국가
Didit 상태
보증 수준
사용자 작업
반환되는 데이터
로그인당 가격
최종 검토: 2026년 10월 5일. 법적 자문이 아닙니다. 보증 수준은 eIDAS(전자 신원 확인에 관한 EU 규정) 또는 국가 규정에 따른 해당 eID 제도 자체의 수준으로, 발급 기관 또는 EU에 통보된 제도 목록에 게시된 내용과 같습니다. 가격은 완료된 로그인당 부과됩니다. '요청 시'로 표시된 eID 제도의 경우 당사에 문의하십시오. 해당 국가에서는 칩 판독을 통한 문서 경로가 이미 작동합니다.
01
선택기는 사용자의 국가에서 허용되는 eID 목록과 공식 마크를 표시합니다.
02
사용자는 코드가 일치하는지 확인한 다음, eID 앱에서 PIN으로 확인합니다. Didit은 PIN을 절대 보지 않습니다.
03
플로우는 사용자를 귀하에게 돌려보내고, 서명된 결과는 웹훅을 통해 전달됩니다.
{
"workflow_label": "eID onboarding",
"features": [
{
"feature": "OCR",
"config": {
"methods": {
"DNK": {
"document": { "enabled": true },
"wallet": { "enabled": true, "providers": ["mitid"], "on_failure": "fallback_to_document" }
},
"SWE": {
"document": { "enabled": true },
"wallet": { "enabled": true, "providers": ["bankid_se"], "on_failure": "fallback_to_document" }
}
}
}
}
]
}{ "uuid": "…" }{
"node_id": "ocr",
"status": "Approved",
"verification_method": "wallet",
"assurance": "cryptographic",
"wallet_provider": "mitid",
"wallet_verification": {
"provider": "mitid",
"issuing_country": "DNK",
"level_of_assurance": "substantial",
"signature_valid": true,
"attributes": {
"full_name": "Freja Nielsen",
"date_of_birth": "1988-03-02",
"cpr_alias": "b0f1c2d3-e4f5-4678-9abc-def012345678"
},
"portrait": null
}
}id_verifications[0]# Didit eID verification, integrate in 5 minutes
You are adding national eID sign-in to my_stack: the user verifies with the
eID they already use (a bank or government digital identity), and anyone
without one falls back to document capture in the same flow. Every URL,
header and enum value below is canonical. Do not paraphrase or "improve" them.
## 1. Provision an account
- Sign up: https://business.didit.me
- Create an application and copy its API key from the console.
## 2. Check which eIDs are live, per country
Availability is server-driven. Never hard-code a wallet list.
- Business Console: your application -> Workflows -> the ID Verification
step -> Countries -> "Wallets accepted". Coming-soon wallets are listed
but cannot be switched on. https://docs.didit.me/console/id-verification-methods
- Didit MCP server (https://mcp.didit.me/mcp), tool
didit_workflow_get_id_verification_methods_catalog; pass country as ISO
3166-1 alpha-3 to narrow it. The MCP server signs in with "Log in with
Didit" (OAuth). It does not accept the x-api-key.
https://docs.didit.me/integration/mcp/tools
- Public coverage table (no sign-in, read-only):
https://docs.didit.me/core-technology/id-verification/digital-id-wallets#supported-wallets
If your code holds only an API key, it cannot read the catalog itself: use the
wallet ids listed in this prompt, and treat the answer of the workflow save as
the check. A live application answers 400 for a wallet that is not available
in that country ("<wallet> is not offered in <ISO3>", "unknown wallet").
At the time this prompt was generated, the catalog marked these available:
- MitID: wallet id mitid, country keys DNK
- BankID: wallet id bankid_se, country keys SWE
- Finnish Trust Network: wallet id ftn, country keys FIN
- Smart-ID: wallet id smart_id, country keys EST, LVA, LTU, BEL
- Mobile-ID: wallet id mobile_id, country keys EST, LTU
Coming soon (cannot be enabled yet): BankID, Vipps, Buypass ID, itsme, iDIN, Personalausweis, Freja eID, UAE PASS, gov.br, OneID, GOV.UK Wallet, Bank iD, MojeID, Diia, FranceConnect, Auðkenni, ConnectID, EUDI Wallet, Estonian ID-card, eParaksts.
Check the catalog for your environment before you go live.
## 3. Create the workflow
POST https://verification.didit.me/v3/workflows/
-H "x-api-key: <your-api-key>"
-H "Content-Type: application/json"
The ID Verification feature's enum value is OCR (uppercase, strict). eIDs are
its wallet method, set per country under config.methods. Keys are ISO 3166-1
alpha-3. Keep document capture on, so a user without an eID can still finish.
{
"workflow_label": "eID onboarding",
"features": [
{
"feature": "OCR",
"config": {
"methods": {
"DNK": {
"document": { "enabled": true },
"wallet": { "enabled": true, "providers": ["mitid"], "on_failure": "fallback_to_document" }
},
"SWE": {
"document": { "enabled": true },
"wallet": { "enabled": true, "providers": ["bankid_se"], "on_failure": "fallback_to_document" }
}
}
}
}
]
}
Response: 201. The workflow id is uuid (workflow_id carries the same value);
the workflow is published straight away. Create it once and keep the id:
every call to this endpoint makes a new workflow.
is_desktop_allowed defaults to false: on a desktop browser the hosted flow
then shows a QR code to continue on a phone. Add "is_desktop_allowed": true
next to workflow_label to let people finish on desktop.
Rules the API enforces:
- providers is an accept-list, not a ranking; the user picks
- on_failure is fallback_to_document or decline; it covers a cancelled,
timed-out or failed sign-in
- fallback_to_document where document.enabled is false declines instead
- a wallet the catalog does not mark available in that country rejects the
whole save (400), including every other method in the same request
- enabled true with an empty providers list is rejected
- add { "feature": "LIVENESS" } and { "feature": "FACE_MATCH" } to features
if you need a selfie: the live eIDs do not share a portrait
## 4. Create a session
POST https://verification.didit.me/v3/session/
-H "x-api-key: <your-api-key>"
-H "Content-Type: application/json"
-d '{ "workflow_id": "<id from step 3>", "vendor_data": "<your user id>" }'
Response: 201 with session_id, session_token, url and status "Not Started".
Redirect the user to url (hosted flow) or open it in the Web, iOS, Android,
React Native or Flutter SDK. The field is named url on this response.
One unfinished session exists per workflow_id and vendor_data pair: calling
create again with the same pair answers 201 again with that same session.
The user picks their eID, then approves in the eID app: same-device hand-off
or a QR code on desktop for MitID, BankID and Finnish Trust Network; a
comparison code approved on the phone for Smart-ID and Mobile-ID. Didit never
asks for the user's PIN. A started sign-in stays valid for 10 minutes by
default.
## 5. Webhooks
Register a destination in the console (API & Webhooks), or over the API:
POST https://verification.didit.me/v3/webhook/destinations/
-H "x-api-key: <your-api-key>"
-H "Content-Type: application/json"
-d '{
"label": "Verification webhooks",
"url": "https://<your-public-host>/webhooks/didit",
"webhook_version": "v3",
"subscribed_events": ["status.updated", "data.updated"]
}'
label, url and subscribed_events are required. url must be a public HTTPS
address: Didit does not deliver to localhost or private addresses. Response:
201 with uuid and secret_shared_key. Store secret_shared_key as the webhook
secret (DIDIT_WEBHOOK_SECRET); it is unique to this destination. Remove a
destination with DELETE /v3/webhook/destinations/{uuid}/ (204).
What arrives:
- webhook_type is "status.updated" (the session changed status) or
"data.updated" (verification data was corrected after the fact)
- a destination receives the events of every session of the application,
so filter on workflow_id or vendor_data when several flows share it
- creating a session already sends status.updated with status
"Not Started". The decision key is present only when status is Approved,
Declined, In Review or Abandoned.
Verify every delivery:
Header: X-Signature-V2 (not X-Signature, not X-Signature-Simple)
Algorithm: HMAC-SHA256, hex digest, over the canonical JSON of the payload
(Python json.dumps(sort_keys=True, separators=(",", ":"),
ensure_ascii=False) after whole-valued floats become ints).
Use the reference handler below as written: it rebuilds those
bytes from the raw body text. Never hash the raw request bytes.
Freshness: the signed body field timestamp is the dispatch time (Unix
seconds, refreshed on every retry). Reject when
abs(now - timestamp) > 300 seconds, and reject when the
X-Timestamp header does not equal it.
Idempotency: event_id is the same on every retry of one event, so store it
and skip a delivery you already processed. One session can
still send the same status under two event ids, and the
console's Try Webhook test deliveries carry no event_id, so
also make the handler safe to run twice for one
(session_id, status, webhook_type).
Compare: constant-time (crypto.timingSafeEqual)
Reference handler (Express). Keep the verification lines as written.
The handler is a fragment. Put this above it and app.listen(process.env.PORT)
below it. It needs Express and Node 21 or newer (an older Node rejects
every delivery). It expects a JSON body: answer 400 yourself if you accept
anything else on this route, and refuse to start without the secret.
const express = require("express");
const app = express();
const SECRET = process.env.DIDIT_WEBHOOK_SECRET; // secret_shared_key of the destination
// Your endpoint receives a signed payload
const crypto = require("node:crypto"); // ESM: import crypto from "node:crypto"
// X-Signature-V2 = HMAC over the canonical JSON, never the raw bytes. Match the sender byte for
// byte: keys sorted by code point, integers digit for digit, floats in Python's repr.
class Num { constructor(src) { this.src = src; } } // a number as written on the wire, not a double
const num = (s) => { if (/^-?\d+$/.test(s)) return BigInt(s).toString(); const n = +s; // ints stay exact
if (Number.isInteger(n)) return BigInt(n).toString(); const [m, e] = n.toExponential().split("e"); // 27.0 -> 27
return +e >= -4 ? String(n) : `${m}e-${String(-e).padStart(2, "0")}`; }; // 1e-05, not 0.00001
const byCodePoint = (a, b) => Buffer.compare(Buffer.from(a), Buffer.from(b)); // UTF-8 order = Python's
const canon = (v) => Array.isArray(v) ? `[${v.map(canon)}]` : v instanceof Num ? num(v.src)
: v && typeof v === "object" ? `{${Object.keys(v).sort(byCodePoint).map((k) => `${JSON.stringify(k)}:${canon(v[k])}`)}}`
: JSON.stringify(v);
// Read the body as text: express.json() would round 1000000000000000129 to a double first.
// Register this route ABOVE any global app.use(express.json()): the first parser to run
// consumes the stream, and a body it already parsed has lost the digits the signature covers.
app.post("/webhooks/didit", express.text({ type: "application/json" }), (req, res) => {
const exact = JSON.parse(req.body, (k, v, c) => typeof v === "number" ? new Num(c.source) : v); // Node 21+
const body = JSON.parse(req.body);
const mac = crypto.createHmac("sha256", SECRET).update(canon(exact), "utf8").digest("hex");
const sig = Buffer.from(String(req.headers["x-signature-v2"] ?? ""));
// Freshness comes from the signed body timestamp; the header alone is unsigned and replayable.
const ts = body.timestamp, fresh = String(ts) === req.headers["x-timestamp"]
&& Math.abs(Date.now() / 1000 - ts) <= 300;
if (!fresh || sig.length !== mac.length
|| !crypto.timingSafeEqual(sig, Buffer.from(mac))) return res.sendStatus(401);
const { status, decision } = body;
// One entry per ID Verification node; pick yours by node_id when you run several.
const [idv] = decision?.id_verifications ?? [];
// idv.verification_method: "document" | "id_lookup" | "wallet"
res.sendStatus(200);
});
Status values (exact strings): Not Started, In Progress, Approved, Declined,
In Review, Resubmitted, Expired, Abandoned, Kyc Expired. Awaiting User only
appears on business verification sessions.
## 6. Read the eID result
The same V3 decision reaches you two ways:
- webhook body: body.decision.id_verifications[]
- GET https://verification.didit.me/v3/session/{session_id}/decision/
-H "x-api-key: <your-api-key>"
This response IS the decision object. Read id_verifications at the top
level: there is no decision wrapper here.
Until the user finishes the ID step, status is "Not Started" or "In Progress"
and id_verifications is null, not an empty array. Guard for it.
id_verifications[] has one entry per ID Verification node; with a single step
take index 0 (its node_id is "ocr" on a workflow made by the call in step 3).
The decision's features list names the step ID_VERIFICATION; the workflow
body still takes OCR. Each entry carries:
status Approved, Declined, In Review or Not Finished
verification_method "wallet" for an eID sign-in, "document" after a
fallback
assurance "cryptographic" for a wallet entry, "documentary"
for a document one
full_name, the normalised identity fields, on the entry itself
date_of_birth
wallet_provider the catalog wallet id, for example "mitid"
wallet_verification provider, provider_name, issuing_authority,
issuing_country, credential_type,
level_of_assurance (low | substantial | high),
verified_at, signature_valid, attributes, portrait,
face_match_score
fallback_from { method, reason, action } when the wallet sign-in failed
and on_failure declined the session; otherwise
null. After a document fallback that succeeds the
entry reads verification_method "document" with
fallback_from null
attributes holds what the scheme shares, and the names vary by scheme: MitID
returns cpr_alias (a pseudonymised identifier, not the CPR number), BankID
Sweden personal_number, Finnish Trust Network personal_identity_code, Smart-ID
and Mobile-ID personal_code. Use full_name and date_of_birth on the entry for
the normalised identity fields. No live eID returns an address or a portrait.
Check wallet_verification.level_of_assurance when your rules depend on it. If
a scheme returns a weaker level than the one requested, the sign-in fails
instead of downgrading.
## 7. Billing
- only a completed eID sign-in is billed; cancelled, timed-out, refused
and failed sign-ins are free
- a document fallback is billed as its own document check
- eID checks are outside the document free tier
- published prices per completed sign-in (USD):
- MitID personal: $0.25
- BankID Sweden: $0.20
- Finnish Trust Network: $0.25
- Smart-ID: $0.20
- Mobile-ID: $0.20
- full pricing: https://docs.didit.me/core-technology/id-verification/digital-id-wallets#pricing
## 8. Hard rules
- base URL for v3 endpoints: verification.didit.me
- auth header: x-api-key
- feature enum: OCR; methods: document, id_lookup, wallet
- wallet ids come from the catalog verbatim (mitid, bankid_se, ftn,
smart_id, mobile_id)
- country keys: ISO 3166-1 alpha-3, uppercase
- webhook: X-Signature-V2 plus X-Timestamp, canonical JSON, freshness from
the signed body timestamp
## 9. Verify your integration
Sandbox (an application in sandbox mode: nothing is billed and no real eID is
called). https://docs.didit.me/integration/sandbox-testing
- a sandbox application can enable every wallet in the catalog, the
coming-soon ones included. A workflow that saves in sandbox can still be
refused on a live application, so only use wallets marked available.
- open the session url, pick the wallet and confirm: the default approve
scenario simulates the sign-in. The entry then has verification_method
"wallet", assurance "cryptographic" and wallet_provider set, and the
normalised full_name and date_of_birth are filled. But
wallet_verification.signature_valid and level_of_assurance are null and
attributes is { "sandbox": true }: no real credential was checked.
Assert signature_valid === true and the level of assurance only against
a live application.
- to exercise on_failure, create the session with
"sandbox_scenario": "wallet_cancelled" (also wallet_timeout and
wallet_provider_error). The wallet sign-in then fails and the flow moves
to document capture or declines, as on_failure says. A fallback that
ends in an approved document reads verification_method "document".
- POST /v3/session/{session_id}/simulate/ forces a final status but writes
no id_verifications entry, so it cannot stand in for a sign-in.
Checks:
- create the workflow, create a session, and read its decision: expect 201,
201 with url, and 200 with status "Not Started"
- run one sandbox session per accepted eID through the hosted flow and
assert verification_method is "wallet" and wallet_provider is the eID you
picked
- run one session with sandbox_scenario "wallet_cancelled" and assert the
flow offers document capture
- assert your webhook accepts a correctly signed payload and rejects a
wrong X-Signature-V2, a changed body, and a payload whose signed
timestamp is older than 300 seconds, even when X-Timestamp is refreshed
- on a live application, assert wallet_verification.signature_valid is true
Docs: https://docs.didit.me/core-technology/id-verification/digital-id-wallets
개발, 테스트 및 초기 사용자 확보에 적합합니다.
25개 이상의 모듈, 투명한 가격 정책. 자동 볼륨 할인.
대규모 볼륨 및 규제 프로그램에 적합합니다.
사용량이 증가하면 볼륨 할인이 자동으로 적용됩니다. 협상이나 영업팀과의 통화가 필요 없습니다.
Didit은 신원 및 사기 방지 인프라입니다. 저희가 직접 제품을 개발하면서 필요하다고 느꼈던 플랫폼을 만들었습니다. 개방적이고 유연하며 개발자 친화적이어서, 단순히 연동하는 블랙박스가 아니라 스택의 핵심적인 부분으로 작동합니다.
하나의 API로 개인 확인(KYC, 고객 알기), 기업 확인(KYB, 사업체 알기), 암호화폐 지갑 심사(KYT, 거래 알기), 실시간 거래 모니터링을 모두 처리할 수 있습니다. Didit의 스택은 다음과 같은 특징을 가집니다:
내부적으로는 48개 이상의 언어로 된 14,000개 이상의 문서 유형, 1,000개 이상의 데이터 소스, 그리고 모든 세션에서 200개 이상의 사기 신호를 처리합니다. Didit 인프라는 모든 세션에서 동적으로 학습하며 매일 발전합니다.
eID 인증(전자 신원 확인)은 문서 사진을 요청하는 대신, 정부나 은행에서 발급 또는 승인한 디지털 신원을 통해 본인 여부를 확인하는 방식입니다. 사용자는 본인의 국가 eID로 로그인하고, eID 앱에서 데이터 공유를 승인하면, 해당 시스템이 디지털 서명과 함께 신원 속성을 반환합니다.
기업 입장에서는 받는 데이터의 차이가 있습니다. 문서 확인은 분석해야 하는 이미지를 제공하지만, eID 로그인은 발급 기관이 이미 확인하고 서명한 데이터를 제공합니다. 이름, 생년월일, 제도 식별자(예: 스웨덴 personnummer, MitID는 가명 처리된 식별자를 반환), 보증 수준입니다.
Didit은 워크플로우의 신원 확인 단계 내에서 eID 로그인을 실행합니다. 현재 5가지 국가 eID(MitID, BankID Sweden, Finnish Trust Network, Smart-ID, Mobile-ID)가 지원되며, eID가 없는 사용자는 동일 세션에서 문서 확인으로 완료됩니다. 이 페이지의 지원 현황 표에서 국가별 모든 시스템을 확인할 수 있습니다.
현재 7개국에서 5가지 국가 eID가 실제 서비스 중입니다:
더 많은 eID가 곧 추가될 예정입니다: iDIN, 독일 eID 카드(Personalausweis), Freja eID, 에스토니아 ID 카드, eParaksts, BankID Norway, Vipps, Buypass, itsme, OneID, ConnectID, UAE PASS, gov.br, GOV.UK Wallet, Bank iD, MojeID, Diia, FranceConnect, Auðkenni, 그리고 EUDI 지갑 지원도 예정되어 있습니다. 곧 출시될 eID는 콘솔에서 확인할 수 있지만, 실제 서비스가 시작되기 전까지는 활성화할 수 없습니다.
지원 현황 표에 있는 다른 모든 시스템에 대해서는 문의해 주세요. Didit은 요청에 따라 시스템을 추가하며, 해당 국가에서는 이미 칩 리딩을 통한 문서 경로가 작동합니다.
시스템이 서명한 속성들을 세션에 정규화하여 받게 됩니다. 현재 지원되는 모든 eID는 전체 이름과 생년월일, 그리고 각 시스템의 고유 식별자를 반환합니다:
각 결과에는 시스템이 주장한 보증 수준과 서명된 주장의 Didit 검증 결과인 signature_valid도 기록됩니다. 현재 지원되는 eID 중 주소나 초상화를 반환하는 것은 없으므로, 정책상 셀카가 필요하면 라이브니스 및 얼굴 매칭 단계를 추가하고, 주소가 필요하면 두 번째 소스를 추가하세요.
API에서는 이 결과가 결정의 신원 확인 항목에 있는 wallet_verification에 포함되며, verification_method는 wallet으로 설정됩니다.
보증 수준(LoA)은 eID가 본인임을 얼마나 확실하게 보장하는지를 나타냅니다. EU eIDAS 전자 신원 확인 규정은 낮음(low), 상당함(substantial), 높음(high)의 세 가지 수준을 정의합니다. 각 시스템의 수준은 EU 통보 시스템 목록 또는 해당 시스템 자체 규칙에 따라 결정되며, 많은 국가 시스템은 EU에 통보되지 않은 경우도 있습니다.
필요한 수준은 Didit이 아닌 귀하가 따르는 규정에 따라 달라집니다. 예를 들어, AMLR(EU 자금세탁방지 규정)은 고객 확인을 위해 상당 또는 높은 수준의 전자 신원 확인을 허용합니다.
Didit은 각 로그인에서 실제로 주장된 수준을 wallet_verification.level_of_assurance에 기록합니다. 시스템이 요청된 수준보다 낮은 수준을 반환하면, 조용히 등급을 낮추는 대신 로그인이 실패합니다. Didit은 MitID, BankID Sweden, Finnish Trust Network 로그인을 상당 수준으로, Smart-ID 및 Mobile-ID 로그인을 높은 수준으로 분류합니다.
신원 확인 부분에서는 충분할 수 있습니다. AMLR(규정 (EU) 2024/1624, 2027년 7월 10일부터 적용) 제22조 6항은 의무 대상 기관이 신분증 또는 eIDAS에 따른 전자 신원 확인으로 고객의 신원을 확인할 수 있도록 허용합니다. AMLA(EU 자금세탁방지 당국)의 고객 실사 최종 초안 표준(2026년 9월 30일자)은 eID를 기본 원격 경로로, 문서 기반 원격 확인을 정당화된 대안으로 취급합니다. 이는 위원회에 제출된 최종 초안이며 법률은 아닙니다.
신원 확인은 KYC(고객 알기)의 한 부분입니다. 제재 및 PEP 심사, 기업의 실소유주 확인, 지속적인 모니터링 및 기록 유지, 그리고 최종 결정은 여전히 귀하의 책임입니다. Didit은 동일한 워크플로우에서 이러한 확인을 실행하며, AML 심사는 건당 $0.20, 지속적인 모니터링은 연간 인당 $0.07입니다.
이는 법률 자문이 아닙니다. AMLR 페이지에서 각 조항과 Didit이 제공하는 기능을 확인할 수 있습니다.
동일 세션에서 문서 확인으로 완료됩니다. 각 국가별로 eID 로그인이 취소되거나, 시간 초과되거나, 실패했을 때의 동작을 선택할 수 있습니다: 문서 캡처로 대체하거나 거부할 수 있습니다.
문서 경로는 220개 이상 국가 및 지역의 14,000개 이상 문서 유형을 지원합니다. ID를 캡처하고, 네이티브 SDK에서 전자 여권 및 eID 카드의 칩(NFC)을 읽으며, 패시브 라이브니스 검사를 실행하고 얼굴을 문서 사진과 매칭합니다. 문서, 라이브니스, 얼굴 매칭, 기기 및 IP 분석을 포함한 전체 KYC 확인 비용은 $0.33입니다.
대체(fallback) 기능은 워크플로우의 일부이므로 통합 방식은 변경되지 않습니다. 하나의 세션을 생성하면 결과에서 사용자가 어떤 경로를 선택했는지(verification_method가 wallet 또는 document) 알려줍니다. 완료된 eID 로그인만 eID 확인으로 청구되며, 대체는 별도의 문서 확인으로 청구됩니다.
네. eID 로그인은 시스템이 서명한 생년월일을 반환하므로, 문서 사진을 요청하지 않고도 연령을 증명할 수 있습니다.
대량 처리의 경우, 연령 추정 우선 방식이 권장됩니다. 셀카로 연령을 추정하는 데는 건당 $0.10이 들며, 패시브 라이브니스가 포함되고, 전체 평균 절대 오차는 3.5년, 18세 미만에서는 1.5년입니다. 명확한 통과 및 실패는 거기서 끝나고, 경계선 결과만 더 강력한 확인(eID 로그인 또는 문서 확인)으로 넘어갑니다.
규제 기관은 이러한 방법을 다르게 취급합니다. 영국에서는 Ofcom이 얼굴 연령 추정 및 디지털 ID를 매우 효과적인 방법으로 나열합니다. EU에서는 디지털 서비스법(DSA) 지침에 따라 18세 이상 콘텐츠에 대한 추정을 임시적인 방편으로 간주하며, EU 연령 확인 앱 또는 EUDI 지갑을 선호합니다. 연령 확인 페이지에서 국가별 규정을 확인할 수 있습니다.
eID 로그인은 시스템별, 완료된 로그인 건별로 가격이 책정됩니다. 이 페이지의 지원 현황 표에는 각 활성 eID의 현재 공개 가격이 표시되어 있으며, 이는 가격 페이지와 동일한 가격 데이터를 기반으로 합니다. '요청 시'로 표시된 시스템은 개별적으로 견적됩니다.
로그인이 완료될 때만 비용을 지불합니다. 취소, 시간 초과, 거부, 실패한 로그인은 무료이며, 반복적인 콜백이나 상태 확인은 추가 요금을 발생시키지 않습니다. eID 확인은 무료 문서 티어에 포함되지 않습니다.
워크플로우의 나머지 부분은 공개된 가격에 따라 건별로 청구됩니다. 문서 포함 전체 KYC 확인은 $0.33, NFC 칩 리딩은 $0.15, 연령 추정은 $0.10, AML 심사는 $0.20, 지속적인 모니터링은 연간 인당 $0.07입니다. 문서 대체(fallback)는 별도의 문서 확인으로 청구됩니다. 계정을 생성하고 샌드박스에서 테스트한 후 결정할 수 있습니다.
아니요, 현재 지원되는 시스템에 대해서는 필요하지 않습니다. Didit은 MitID, BankID Sweden, Finnish Trust Network, Smart-ID, Mobile-ID에 대한 시스템 연결을 보유하고 있으므로, 각 시스템, 은행 또는 인증서 제공업체와 별도의 계약을 체결할 필요가 없습니다. 워크플로우에서 eID를 활성화하고 완료된 로그인 건별로 Didit에 비용을 지불하면 됩니다.
선택기 및 비교 코드 화면은 세션 브랜딩과 사용자 지정 도메인을 상속하므로 사용자는 귀하의 흐름 내에 머무릅니다. 시스템은 여전히 자체 앱과 동의 단계를 표시하는데, 이는 사용자가 데이터 공유를 승인하는 곳이기 때문입니다.
일부 시스템은 누가 이를 수락할 수 있는지에 대한 자체 규칙을 가지고 있으며, 일부 정부 로그인은 공공 서비스에만 개방됩니다. 아직 지원되지 않는 시스템에 대해서는 필요한 사항과 Didit이 어떻게 연결할 수 있는지 문의해 주세요.
둘 다 암호화 기술을 사용하지만, 증명하는 내용은 다릅니다. NFC 칩 리딩은 휴대폰으로 전자 여권이나 eID 카드 내부의 칩을 읽고 해당 데이터에 대한 발급 기관의 서명을 확인하여 문서가 위조되지 않았음을 보여줍니다. 하지만 이를 소지한 사람이 소유자인지 확인하기 위해 라이브니스 및 얼굴 매칭이 여전히 필요합니다. Didit에서는 네이티브 iOS 및 Android SDK에서 $0.15로 실행됩니다.
eID 로그인은 사용자가 자신의 국가 디지털 신원을 제어하고 있음을 보여줍니다. 사용자는 자신의 eID 앱에서 PIN 또는 생체 인식을 통해 승인하고, 시스템은 사용자의 속성에 서명합니다. 문서가 관여하지 않으며, 현재 지원되는 eID는 초상화를 공유하지 않습니다.
두 가지는 함께 잘 작동합니다. eID가 지원되는 곳에서는 eID를 제공하고, 다른 모든 사용자에게는 국가별로 동일한 워크플로우에서 칩 리딩을 통한 문서 캡처로 대체(fallback)합니다.
EUDI 지갑(EU Digital Identity Wallet)은 eIDAS 2(규정 (EU) 2024/1183)에 따라 모든 EU 회원국이 2026년 12월 24일까지 제공해야 하는 지갑입니다. 강력한 사용자 인증을 법적 또는 계약상 의무적으로 사용해야 하는 민간 기업은 2027년 12월 24일까지 사용자의 요청에 따라 이를 수락해야 합니다. 영세기업과 소기업은 면제됩니다. 이 기한은 최초 이행법이 2024년 12월 24일에 발효된 날로부터 36개월 후, 즉 2027년 12월 24일입니다.
이탈리아의 IT-Wallet과 덴마크의 AltID는 가장 발전된 국가 앱이며, 독일의 지갑 앱은 2027년 초에 출시될 예정입니다.
Didit에서는 EUDI 지갑 지원이 곧 제공될 예정입니다. Didit의 지갑 카탈로그에는 30개 EEA 국가에 대한 EUDI 지갑이 국가 eID와 동일한 워크플로로 등록되어 있습니다. 그때까지는 현재 사용 가능한 국가 eID 및 문서 경로를 통해 고객을 처리할 수 있습니다. EUDI 지갑 페이지에서 기업이 EUDI 지갑을 수락하는 데 필요한 사항을 설명합니다.
네. Didit은 요청에 따라 시스템을 추가하므로, 고객이 어떤 국가 eID, 은행 ID 또는 정부 로그인을 어떤 국가에서 사용하는지 알려주세요. 저희는 해당 시스템이 이를 수락하는 기업에 요구하는 사항(일부는 민간 기업에 개방되고 일부는 공공 서비스에만 개방됨)과 반환하는 데이터를 검토한 후, 연결하는 데 필요한 사항을 알려드립니다.
그동안 해당 국가에서 서비스를 시작하는 데 아무런 문제가 없습니다. 문서 경로는 현재 해당 국가에서 작동합니다. 14,000개 이상 문서 유형에 대한 문서 캡처, 전자 여권 및 eID 카드의 칩(NFC) 리딩, 패시브 라이브니스 및 얼굴 매칭, 그리고 1,300개 이상 목록에 대한 AML 심사가 가능합니다.
해당 시스템이 출시되면 해당 국가의 워크플로우에서 체크하면 되며, 통합 방식은 동일하게 유지됩니다. '문의하기'를 통해 시작하세요.
당일 바로 테스트할 수 있습니다. business.didit.me에서 계정을 생성하고, 워크플로우를 연 다음, 신원 확인 단계에서 국가를 선택하고 지원되는 지갑 아래의 eID를 체크하세요. 대체(fallback)를 설정한 후 저장하고 게시합니다.
가장 빠른 방법은 호스팅 플로우입니다. 하나의 API 호출(POST /v3/session/)로 세션을 생성하고, 반환된 URL로 사용자를 리디렉션합니다. Didit은 eID 선택기를 표시하고, eID 앱으로 넘겨주며, 서명된 결과를 웹훅으로 보냅니다. 사용자를 앱 내에 유지하고 싶다면 Web, iOS, Android, React Native, Flutter SDK가 동일한 플로우를 엽니다.
먼저 샌드박스 애플리케이션으로 테스트한 다음, 라이브 애플리케이션으로 전환하세요. 이 페이지의 통합 프롬프트는 코딩 에이전트가 전체 플로우를 구축하도록 도와줍니다.