Give your AI access to financial infrastructure.
One call turns a message into a structured, validated financial action. Bring your own rails, wire your tools, and test in a live sandbox before you ship.
API-first by design
Send a message and a set of tools; get back an intent, extracted parameters, and whether confirmation is required. The hard parts, grounding, tool-calling, and guardrails, are handled for you.
Point tools at your existing endpoints so conversational banking runs on your rails, your rates, and your compliance.
One call, a structured financial action.
A message in, a validated intent out, with confirmation controls built in.
const response = await twelveai.agent.run({
user: userId,
message: "Send ₦50,000 to Sarah",
tools: ["accounts", "transfers", "transactions"]
}){
"intent": "transfer",
"amount": 50000,
"currency": "NGN",
"recipient": "Sarah Okafor",
"requires_confirmation": true
}Built for engineering teams
Composable tools
Declare tools and bind them to your APIs. Test each endpoint live before it goes near a customer.
Sandbox
Run the model against stubbed tool responses so you can build the whole flow first.
Structured output
Every turn returns a clean, typed action you can act on with confidence.
Guardrails in the loop
Confirmations, limits, and policy are enforced by the platform, not your prompt.
Infrastructure, not a demo.
Everything here runs on the same platform we operate for real customers, grounded answers, gated writes, and a full audit trail.
- Composable tools. Declare tools and bind them to your APIs. Test each endpoint live before it goes near a customer.
- Sandbox. Run the model against stubbed tool responses so you can build the whole flow first.
- Structured output. Every turn returns a clean, typed action you can act on with confidence.
- Guardrails in the loop. Confirmations, limits, and policy are enforced by the platform, not your prompt.