Apache-2.0 · Sandbox is free, no credit card

Step-up authorization
in five minutes

One signed bridge for BankID, MitID, push, and custom providers. Drop a framework SDK into your stack, mount a route handler, and your code can pause for a real-world approval, then resume with an Ed25519-signed record.

1

Install the kit

Pick the framework SDK that matches your stack. The core kit ships every recognizer; the SDKs add a thin, fully-typed layer.

npm install @pointely/sdk @pointely/nextjs @pointely/react
2

Point at a bridge

Set two environment variables for your hosted bridge tenant, or self-host apps/handoff-cloud and point at your own URL.

HANDOFF_BRIDGE_URL=https://handoff.example.com
HANDOFF_API_KEY=phk_live_...
3

Mount the route handler

Drop a single Next.js route handler in. Express, Fastify, and pure Node have equivalent helpers.

import { createHandoffRouteHandler } from "@pointely/nextjs/server";
import { createHttpBridge } from "@pointely/sdk";

const bridge = createHttpBridge({
  baseUrl: process.env.HANDOFF_BRIDGE_URL!,
  apiKey: process.env.HANDOFF_API_KEY!,
});

export const { GET, POST } = createHandoffRouteHandler({ bridge });

Approver UI, AI-agent integration (Vercel AI / LangChain), and the full bridge interface are covered in the docs. Read the docs.

Open source SDKs

Apache-2.0 packages for Next.js, React, Express, Fastify, Vercel AI, and LangChain.

EU-only data

Hosted bridge runs in EU regions, encrypted at rest with per-tenant keys, signed in-flight.

One signed record

The same Ed25519-signed envelope across every provider. Verify once, audit once.