Skip to main content

BioPay

BioPay is Amani's biometric payment verification service. When a customer initiates a payment, their face is scanned and matched against their registered profile to confirm their identity before the transaction is approved.

The BioPay page shows a log of all verification attempts — who was checked, whether it was approved or rejected, and which customer profile was matched.

Route

  • /biopay

Tabs

TabLabelAccess
attemptsBioPay AttemptsAll authenticated users
settingsBioPay SettingsRequires can_view_biopay_devices permission; tab is disabled otherwise

Attempts Tab

View toggle

Use the toggle in the top-right of the table to switch between:

  • List View (default)
  • Grid View
  • Search by Profile ID: filters attempts by profile ID.
  • Press Enter or click the search button to apply.
  • Click the clear icon (appears when input is non-empty) to reset the search and reload.

Pagination

Server-side pagination. Available rows-per-page options: 20, 50, 100.

List View

Columns displayed:

ColumnContent
Useruser_info.full_name, or - if not available
TitleAttempt title, or - if not available
StatusApproved / Rejected capsule
ActionsExpand/collapse icon

Clicking a row expands it to show:

  • The attempt selfie image (200x200 px).
  • Matched Profile(s) section:
    • For each matched profile: a circular knob showing match percentage and a Go To Profile button that opens the profile in a new tab.
    • If no matches exist, displays "No matches found".

Grid View

Each attempt is shown as a card with:

  • Selfie image as the card background (full height, cover fit).
  • Customer full name and title overlaid at the bottom.
  • Status capsule (Approved / Rejected) in the top-right corner.
  • Go To Profile button — only shown for approved attempts.

Empty state

When no BioPay attempts exist, the table displays an info message indicating no attempts are available.


Settings Tab

Renders the BiopaySettings component. Only accessible to users with the can_view_biopay_devices permission.