REST + WebSocket. JSON over HTTPS. All endpoints authenticated with bearer tokens.
24
REST endpoints
1.8s
Avg verification
12
Webhook events
Base URL
https://api.verifypay.uk/v1Authorization
Authorization: Bearer vp_live_sk_•••••••••••••••••/v1/verificationsStart verification
Initiate an OIDC flow with OneID or Yoti. Returns a redirect URL.
{
"provider": "oneid",
"outlet_id": "out_camden_01",
"redirect_uri": "https://pay.verifypay.uk/cb"
}/v1/verifications/{id}Get verification
Returns the current status of a verification attempt.
{
"id": "vrf_a8f...",
"status": "verified",
"age_band": "18+",
"liveness_score": 0.97
}/v1/checkout/sessionsCreate checkout session
Creates a Stripe Checkout session bound to a verified customer.
{
"verification_id": "vrf_a8f...",
"product_id": "p_mint_10",
"amount": 550,
"currency": "gbp"
}/v1/webhooks/stripeStripe webhook
Receives signed payment events. Triggers tablet confirmation via WebSocket.
Stripe event payload (signed)/v1/tablet/{tablet_id}/streamTablet stream
Persistent WebSocket connection. Server pushes payment events in real time.
{
"type": "payment.confirmed",
"reference": "VP-002431",
"amount": 550,
"product": "Mint Strong 10mg"
}/v1/productsList products
Returns active products available across outlets.
{
"data": [
{ "id": "p_mint_10", "name": "Mint Strong 10mg", "price": 550 }
]
}/v1/transactionsList transactions
Paginated. Filter by outlet, status, date range.
{
"data": [...],
"page": 1,
"total": 2418
}