# AmanPay demo samples Default biometric samples so co-authors can test the full pipeline **without capturing their own biometrics**. Two identities: - **alice** — enroll + authenticate pairs for **all three modalities** (face, fingerprint, voice). Voice clips are two utterances from the same LibriSpeech speaker (id 426), so enroll/auth genuinely match. - **bob** — a distinct identity (face + fingerprint) for impostor / negative tests. Layout is described in [`manifest.json`](manifest.json). ## Fastest: one-click demo in the web app Open the app (`https://:8443/`) → **Pay** tab → **▶ Load demo**. This calls `POST /demo/seed`, which server-side enrolls the tri-modal `alice` identity, records consent, links a token-backed Chase account, and pre-fills the pay form with alice's *authenticate* samples. Then hit **Pay with biometrics**. ## Or: seed via the API ```bash # Seed a demo identity + wallet; returns the account + authenticate samples. curl -sk -X POST https://:8443/demo/seed | jq . ``` ## Or: drive it yourself (Python) ```python import base64, requests, urllib3; urllib3.disable_warnings() B = "https://:8443"; S = requests.Session(); S.verify = False def b(p, mt): return f"data:{mt};base64," + base64.b64encode(open(p, "rb").read()).decode() fe = b("examples/alice_face_enroll.jpg", "image/jpeg") pe = b("examples/alice_fp_enroll.png", "image/png") ve = b("examples/alice_voice_enroll.wav", "audio/wav") S.post(B+"/unified/enroll", json={"user_id": "alice", "face_image": fe, "fingerprint_image": pe, "voice_audio": ve}) ``` These files are small, synthetic/benchmark-derived, and safe to commit — no real personal biometric data.