Choose a view
Member view
What a member sees: which verifications they still owe, a button that takes them to their wallet to complete them, and the ballot once they are eligible.
Enter as a member →Admin view
What the organization sees: every member, whether they may vote, and exactly which requirement is unmet for those who may not.
Enter as an administrator →How it works
- The member verifies once, in their own wallet. Identity, phone and address are separate credentials with separate lifetimes, held by the member — not by us and not by the voting app.
-
The voting app asks for proof, not data. It receives
address_verified: true, never the address. This demo could not display a member's street address or phone number if it wanted to. -
Socious Verify returns the verdict. The backend calls
GET /verifications/{verification_id}/individuals/{customer_id}with the organization's Secret Key, and a member is eligible only when that record'sstatusisVERIFIED. The per-requirement breakdown is an explanation layered on top, never the decision.
Source: src/shinid/ in this repository — the same code the
API integration guide
publishes. The members in this demo are fictional.