SDK Quick Start — Banking & Financial Services
Getting started: Banking & Financial Services
This guide takes you from install to your first attributed governance record in banking & financial services. You will install the SDK, configure a provider, instrument a workflow step with the real OTel attribute vocabulary from this vertical, and have a reviewable evidence record in your portal within an afternoon. There is no scaffolding project — just your API key and the three steps below.
Why this matters right now. As of March 2026, agentic AI in banking is deployed across: real-time payment fraud scoring, autonomous AML alert triage, AI-assisted loan underwriting, autonomous treasury liquidity management, customer onboarding KYC/KYB automation, AI-driven trade surveillance, autonomous regulatory report generation (DORA, Basel, HMDA), and AI-assisted credit risk model validation. Each subdomain carries distinct regulatory obligations that must be traceable through OTel spans to OPA policy decisions.
How the layering works
You are not adopting a separate product surface for this vertical. You are adding a market-specific vocabulary layer on top of the same core session model used everywhere in VeriProof.
| Layer | What you configure | What changes downstream |
|---|---|---|
| Core SDK | API key, application identity, session lifecycle, export path, base governance metadata | The same trace, evidence, and export foundation used across every implementation |
| Banking & Financial Services | OTel attributes, permitted values, and workflow metadata drawn from this vertical catalog | Portal evidence records, policy inputs, and exports become standards-literate for this market |
| Review surfaces | Rules, evidence packages, and internal reviewer workflows | The same labels and values appear without translation during review or audit |
If you need the cross-industry baseline first, open the core SDK reference, Python core, or .NET core before continuing here.
Step 1 — Install
TypeScript / Node.js
npm install @veriproof/sdk-corePython
pip install veriproof-sdk.NET
dotnet add package Veriproof.SdkStep 2 — Configure
Call the configuration helper once, before any AI framework initialises. After that call, every OTel span in the process — whether emitted by your code or by a framework adapter — is exported automatically to VeriProof.
Your API key comes from the VeriProof portal. Try a live demo to see the portal before you register, or start a free Builder account and use the environment variable pattern above directly.
Need a production credential path rather than sandbox exploration? Get API access for a Builder account, or contact the team if you need an architecture or compliance review alongside implementation.
Step 3 — Instrument your workflow
The governance vocabulary for this vertical lives in the Banking & Financial Services reference. Use the OTel attribute names below — they are the same names the portal uses in evidence records and the same names your policy engine will evaluate. Consistency here is the point.
| OTel attribute | Sample value | Category |
|---|---|---|
banking.payment.iso20022_status | ACTC | PaymentStatusISO20022 |
banking.payment.message_type | pain.001 | PaymentMessageType |
banking.payment.rail | fednow | PaymentRailType |
banking.payment.purpose_code | BEXP | PaymentPurposeCode |
banking.payment.agent_action | initiate_credit_transfer | PaymentAgentActionType |
banking.sanctions.screening_outcome | clear | SanctionsScreeningOutcome |
TypeScript example
import { configureVeriproof, VeriproofClient, VeriproofSdkOptions, SessionMetadata } from '@veriproof/sdk-core';
import { PaymentStatusISO20022, PaymentStatusISO20022Meta, PaymentMessageType, PaymentMessageTypeMeta } from '@veriproof/sdk-core/verticals/banking-financial-services';
// Call once at application startup
configureVeriproof(
VeriproofSdkOptions.createProduction({
apiKey: process.env.VERIPROOF_API_KEY!,
applicationId: 'banking-financial-services-app',
}),
{ serviceName: 'banking-financial-services-app', setGlobal: true },
);
// Instrument a governed workflow
const client = new VeriproofClient(
VeriproofSdkOptions.createProduction({ apiKey: process.env.VERIPROOF_API_KEY! }),
);
const session = client
.startSession('banking.financial.services.review')
.withSessionMetadata(SessionMetadata.forTransaction('txn-001').withEnvironment('production'))
.addStep('evaluate', { output: { status: 'completed' } })
.withMetadata(PaymentStatusISO20022Meta.otelAttribute, PaymentStatusISO20022.ACTC)
.withMetadata(PaymentMessageTypeMeta.otelAttribute, PaymentMessageType.pain.001)
await session.complete();Python example
import os
from opentelemetry import trace
from veriproof_sdk import VeriproofClientOptions, configure_veriproof
from veriproof_sdk.verticals import banking_financial_services as bfs
# Call once at application startup
configure_veriproof(
VeriproofClientOptions(
api_key=os.environ["VERIPROOF_API_KEY"],
application_id="banking-financial-services-app",
),
service_name="banking-financial-services-app",
set_global=True,
)
tracer = trace.get_tracer(__name__)
# Instrument a governed workflow
with tracer.start_as_current_span("banking_financial_services.review") as span:
span.set_attribute(bfs.PaymentStatusISO20022.__otel_attribute__, bfs.PaymentStatusISO20022.ACTC.value)
span.set_attribute(bfs.PaymentMessageType.__otel_attribute__, bfs.PaymentMessageType.pain.001.value)
span.set_attribute(bfs.PaymentRailType.__otel_attribute__, bfs.PaymentRailType.fednow.value)
....NET example
using Veriproof.Sdk;
using Veriproof.Sdk.Core.OpenTelemetry.Verticals.BankingFinancialServices;
// Configure once at application startup
builder.Services.AddVeriproof(options =>
{
options.ApiKey = builder.Configuration["VERIPROOF_API_KEY"]!;
options.ApplicationId = "banking-financial-services-app";
});
// Instrument a governed workflow step
using var activity = ActivitySource.StartActivity("evaluate");
activity?.SetTag(PaymentStatusISO20022.Metadata.OtelAttribute, PaymentStatusISO20022.ACTC);
activity?.SetTag(PaymentMessageType.Metadata.OtelAttribute, PaymentMessageType.pain.001);
activity?.SetTag(PaymentRailType.Metadata.OtelAttribute, PaymentRailType.fednow);How teams use this in production
- Payments & Funds Transfer: Payment Rail Type. OPA rule: require enhanced OFAC/sanctions screening for swift_cbpr_plus, sepa_credit_transfer, and sepa_instant rails. Require 24/7 HITL coverage for fednow and rtp_tcf rails above configurable threshold. (Fednow: Federal Reserve FedNow Service Operating Procedures)
- Payments & Funds Transfer: Payment Agent Action Type. OPA rule: classify initiate_credit_transfer, initiate_direct_debit, and apply_fx_conversion as irreversible_high_impact, requiring HITL approval above configurable amount threshold. (Psd2: PSD2 Article 64 — Liability for unauthorized payment transactions)
- Payments & Funds Transfer: Sanctions Screening Outcome. OPA rule: deny any payment agent tool call for payment rail execution when sanctions_screening_outcome is potential_hit or confirmed_hit; require HITL escalation. (Ofac: OFAC 31 CFR Part 501 — Reporting and procedures for blocked transactions)
- Fraud Detection & Financial Crime: AMLAlert Status. OPA rule: require HITL with compliance_officer role for sar_decision_pending state. Block automated sar_filed or sar_declined_documented transitions — these must be human-authorised. (Bsa 31 Usc 5318: BSA 31 USC 5318(g) — Suspicious Activity Report filing obligation)
Next steps
- Open the full Banking & Financial Services governance reference for all 36 enum categories, policy patterns, and source standards.
- Review TypeScript SDK core for advanced session-builder options, batch export, and Merkle verification.
- Review Python SDK core for decorator-based annotations and framework adapter options.
- Review .NET SDK core for Semantic Kernel, AutoGen, and Activity-based instrumentation.
- Browse all vertical references to understand how the core governance vocabulary layers underneath vertical-specific attribute sets.
- Compare this guide with the public industry pages if you need the commercial and workflow framing behind the same vocabulary.
Register a free Builder account — 500 tamper-proof Proofs per month, full SDK and REST API access, and your first evidence record in the portal before you leave your desk.