LangChain and CrewAI Agents Can Now Execute Compliant Payments
LangChain agents plan, research, and decide. Until now, every workflow that required spending stopped at the payment step. Either a human completed the transaction, or the agent operated with unconstrained access to a live account.
Today that changes. langchain-oris and crewai-oris are live on PyPI.
What the packages do
Both packages wrap the Oris SDK as native tool sets for their respective frameworks.
langchain-oris exposes seventeen LangChain tools across five categories. Payments: oris_pay, oris_check_balance, oris_get_spending, oris_approve_pending. Identity and KYA: oris_get_tier_info, oris_get_did, oris_get_eas_attestation, oris_generate_attestation, oris_promotion_status. Marketplace: oris_find_service, oris_place_order, oris_complete_order. Fiat bridge: oris_fiat_onramp, oris_fiat_offramp, oris_exchange_rate. Cross-chain: oris_cross_chain_quote. BYOK: oris_configure_provider for Turnkey, Fireblocks, Pimlico, Stripe, Circle, and Solana RPC. The OrisToolkit bundles all seventeen for one-line setup, and python -m oris_langchain setup runs an interactive wizard that registers a fresh agent and writes a .env file. Every tool supports both sync (_run) and async (_arun) execution patterns, making it compatible with LangGraph node graphs that mix sync and async steps.
crewai-oris exposes the same seventeen capabilities as CrewAI BaseTool subclasses with human-readable names like Make Compliant Payment, Check Agent Balance, Get Agent DID, Configure Provider Keys (BYOK), and Cross-chain Quote. The OrisToolset bundles all seventeen at once, and python -m oris_crewai setup registers a fresh agent in under a minute. Credentials read from environment variables by default, which fits the CrewAI deployment pattern cleanly.
| Capability | langchain-oris | crewai-oris |
|---|---|---|
| Send payment | oris_pay |
OrisPaymentTool |
| Check balance | oris_check_balance |
OrisCheckBalanceTool |
| Spending history | oris_get_spending |
OrisGetSpendingTool |
| Tier and limits | oris_get_tier_info |
OrisGetTierInfoTool |
| DID identity | oris_get_did |
OrisGetDidTool |
| EAS attestation | oris_get_eas_attestation |
OrisGetEasAttestationTool |
| Find marketplace service | oris_find_service |
OrisFindServiceTool |
| Place marketplace order | oris_place_order |
OrisPlaceOrderTool |
| Fiat on-ramp | oris_fiat_onramp |
OrisFiatOnrampTool |
| Async support | Yes (_run + _arun) |
Sync only (_run) |
| Credential source | OrisToolkit.from_env() |
Env vars (auto) |
What happens when an agent calls oris_pay
The call triggers the full Oris pipeline before anything touches the blockchain:
KYA Check
Agent identity verified (p95 < 5ms)
Policy Evaluation
Spending rules enforced (p95 < 10ms)
Sanctions Screening
OFAC + EU + UN lists (p95 < 100ms)
On-Chain Execution
ERC-4337 UserOp submitted
If any stage fails or is unreachable, the transaction is blocked. The agent receives a structured error string it can reason about and report.
Quick start: LangChain
from oris_langchain import OrisToolkit
from langchain_openai import ChatOpenAI
from langgraph.prebuilt import create_react_agent
toolkit = OrisToolkit(
api_key="oris_sk_live_...",
private_key="your_private_key",
agent_id="your_agent_uuid",
)
llm = ChatOpenAI(model="gpt-4o")
agent = create_react_agent(llm, toolkit.get_tools())
result = agent.invoke({
"messages": [("user", "Pay 10 USDC to 0xABC... for the API subscription.")]
})Quick start: CrewAI
from crewai import Agent, Task, Crew
from oris_crewai import OrisPaymentTool, OrisCheckBalanceTool
finance_agent = Agent(
role="Finance Agent",
goal="Execute compliant payments on behalf of the crew",
backstory="You handle all financial transactions with KYA compliance.",
tools=[OrisPaymentTool(), OrisCheckBalanceTool()],
)
task = Task(
description="Pay 25 USDC to 0xABC... for the API subscription renewal.",
expected_output="Payment confirmation with transaction hash",
agent=finance_agent,
)
Crew(agents=[finance_agent], tasks=[task]).kickoff()Installation
$ pip install langchain-oris
$ pip install crewai-orisBoth packages require Python 3.10+ and an Oris API key. Get started at useoris.xyz.
Full documentation: docs.useoris.xyz
PyPI: langchain-oris | crewai-oris
Get started with Oris
Two minutes to set up. Full spending controls from day one.