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.
Fastest: one-click demo in the web app
Open the app (https://<host>: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
# Seed a demo identity + wallet; returns the account + authenticate samples.
curl -sk -X POST https://<host>:8443/demo/seed | jq .
Or: drive it yourself (Python)
import base64, requests, urllib3; urllib3.disable_warnings()
B = "https://<host>: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.