Documentation Index
Fetch the complete documentation index at: https://docs.beltic.com/llms.txt
Use this file to discover all available pages before exploring further.
Products Used in This Guide
Everything in Beltic is built around the Workflow API. A workflow is a pipeline of verification blocks that you configure once and trigger with a single call. Credentialing is one of those blocks — add acredential_issue block and Beltic mints a signed JWT from the verified output automatically.
This guide uses the Workflow API to verify the human first, with the credential_issue block producing the identity credential the agent chain depends on. It then uses the Credentials API directly to issue the agent_authorization credential — because the agent credential isn’t an output of a verification workflow, it’s a standalone authorization that references the already-verified human.
If you have your own verification process, you can skip the workflow entirely and call the Credentials API directly — send Beltic the data you’ve already collected and it wraps it in a signed credential. The trust layer works the same way regardless of how the data got there.
The Problem
AI agents can now initiate transactions autonomously — placing orders, authorizing payments, booking services. The infrastructure to execute these transactions exists. What doesn’t exist is a standard way to prove that a real human authorized them. When an agent arrives at a payment endpoint today, the receiving system has no reliable way to answer: did a verified human authorize this? Under what constraints? Is that authorization still valid? Was the human even present? Without that proof, every agentic transaction is a trust gap. Payment processors flag it. Banks can’t satisfy AML requirements. Fraud systems default to blocking it. Beltic closes that gap with a signed, portable credential that travels with the agent and carries the human’s verification & authorization as a cryptographic fact. But that credential is only as strong as the identity behind it — which means the story starts with verifying the human first.Step 1: Verify the Human Through a Workflow
Before any agent can be authorized, the human delegating to it needs to be verified. This is where Beltic’s workflow engine comes in. A workflow is a configured pipeline of verification blocks — each block performs a discrete step. You define the pipeline once in the Console, then trigger it with a single API call. Beltic runs every block in sequence, handles edge cases internally, and returns the complete output when done. For a KYC verification, a typical workflow runs blocks like these in order:identity_check— validates the document, checks name and DOBliveness_check— confirms the person is physically presentsanctions_screening— runs against OFAC, UN, EU watchlistscredential_issue— mints a signed JWT-VC from the verified output
output is a block. The credential_issue block at the end takes the verified output of every preceding block and mints a signed credential from it — a tamper-proof record that the user passed every check.
Store credential_issue.credential_id and signed_payload against the user record. The subject.id — user_jane_doe_001 — is now the anchor for any agent the user subsequently authorizes. The chain that starts here is: verified human → authorized agent → agent transaction.
Replace
wf_kyc_standard with the ID of your own workflow. When setting up a workflow in the Console, you choose its name — that name becomes the workflowId you pass here.Step 2: Issue the Agent Authorization Credential
The user has been verified. Now they open your app and configure what their agent can do — which resources, which actions, up to what spend. Your backend receives that confirmation and calls Beltic to mint the agent credential:delegated_by_subject_id— thesubject.idof the KYC-verified user from Step 1. This is the cryptographic link that lets any verifier trace the agent back to a real, verified identity. Required on any wallet-scoped permission.human_present: true— attests that the human was actively present and confirmed this authorization at issuance time. A signal downstream systems rely on for AML and fraud scoring.
signed_payload JWT. Give this to the agent runtime — it presents it on every downstream call.
Step 3: The Agent Transacts — the Credential Travels With It
When the agent reaches a checkout or payment endpoint, it includes thesigned_payload JWT in the request. The merchant or payment processor receiving it calls Beltic’s public verify endpoint — no API key, no Beltic account needed:
- A real, KYC-verified human (
user_jane_doe_001) authorized this agent — traceable back to a workflow that ran identity check, liveness, and sanctions screening - The human was actively present at authorization time
- This specific action (
payment_authorize, $85, USD) is within the agent’s permitted scope - The authorization is still valid — not expired, not revoked
- The daily spend limit has not been exceeded
Step 4: Attest the Transaction Outcome
For high-value transactions or regulated flows, wrap the final outcome in a signedoutcome_attestation credential. This creates a portable record that the transaction was authorized by a verified human and completed — useful for AML audit trails, sponsor bank reporting, or dispute resolution.
Step 5: Revoke When the Session Ends
Agent credentials should be short-lived. When the session ends, the user removes the agent, or a suspicious action is detected — revoke immediately:valid: false — instantly, with no coordination between platforms. The agent is locked out everywhere at once.
The Complete Chain
Related
Executing a Workflow
Full reference for POST /v1/workflows/execute — block outputs, pause/resume, and all response shapes
Issuing a Credential
Full reference for agent_authorization credential claims and all four credential types
Fintech Company Using Beltic
The same identity credential used in a fintech onboarding and transaction authorization context
Verifying a Credential
The full verify pipeline — context evaluation, policy matching, and rejection codes