Skip to main content

Nory x402 payment tools for Pydantic AI - enables AI agents to make blockchain payments

Project description

Nory x402 Payment Tools for Pydantic AI

Enable your Pydantic AI agents to make blockchain payments using the x402 HTTP payment protocol.

Features

  • Multi-chain support: Solana and 7 EVM chains (Base, Polygon, Arbitrum, Optimism, Avalanche, Sei, IoTeX)
  • Sub-400ms settlement: Fast payment finality for real-time agent interactions
  • x402 HTTP protocol: Native support for HTTP 402 Payment Required responses
  • Type-safe: Full Pydantic validation with TypedDict responses
  • Async-first: Built with httpx for efficient async operations

Installation

pip install pydantic-ai-tools-nory-x402

Quick Start

from pydantic_ai import Agent
from pydantic_ai_tools_nory_x402 import nory_x402_tools

# Create an agent with all payment tools
agent = Agent('openai:gpt-4o', tools=nory_x402_tools())

# Use the agent
result = agent.run_sync("Check if the Nory payment service is healthy")
print(result.data)

Available Tools

nory_get_payment_requirements_tool

Get x402 payment requirements for accessing a paid resource.

from pydantic_ai_tools_nory_x402 import nory_get_payment_requirements_tool

tool = nory_get_payment_requirements_tool()
# Returns: PaymentRequirements with amount, currency, networks, wallet_address

nory_verify_payment_tool

Verify a signed payment transaction before settlement.

from pydantic_ai_tools_nory_x402 import nory_verify_payment_tool

tool = nory_verify_payment_tool()
# Returns: VerificationResult with valid, payer, amount

nory_settle_payment_tool

Settle a payment on-chain with ~400ms settlement time.

from pydantic_ai_tools_nory_x402 import nory_settle_payment_tool

tool = nory_settle_payment_tool()
# Returns: SettlementResult with success, transaction_id, network

nory_lookup_transaction_tool

Look up transaction status.

from pydantic_ai_tools_nory_x402 import nory_lookup_transaction_tool

tool = nory_lookup_transaction_tool()
# Returns: TransactionStatus with status, confirmations, transaction_id

nory_health_check_tool

Check Nory service health and see supported networks.

from pydantic_ai_tools_nory_x402 import nory_health_check_tool

tool = nory_health_check_tool()
# Returns: HealthStatus with status, networks

nory_x402_tools

Get all tools at once:

from pydantic_ai_tools_nory_x402 import nory_x402_tools

# All tools with optional API key
tools = nory_x402_tools(api_key="your-api-key")

Supported Networks

Network Chain Type
solana-mainnet Solana
solana-devnet Solana (testnet)
base-mainnet EVM (Base)
polygon-mainnet EVM (Polygon)
arbitrum-mainnet EVM (Arbitrum)
optimism-mainnet EVM (Optimism)
avalanche-mainnet EVM (Avalanche)
sei-mainnet EVM (Sei)
iotex-mainnet EVM (IoTeX)

Authentication

For public endpoints, no API key is required. For authenticated endpoints:

tools = nory_x402_tools(api_key="your-api-key")

How It Works

  1. Your agent encounters an HTTP 402 Payment Required response
  2. Use nory_get_payment_requirements to learn how much to pay
  3. Sign and encode the payment transaction (client-side)
  4. Use nory_verify_payment to validate before submission
  5. Use nory_settle_payment to execute the payment on-chain
  6. Access the paid resource with the payment receipt

Links

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pydantic_ai_tools_nory_x402-0.1.0.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pydantic_ai_tools_nory_x402-0.1.0-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

Details for the file pydantic_ai_tools_nory_x402-0.1.0.tar.gz.

File metadata

File hashes

Hashes for pydantic_ai_tools_nory_x402-0.1.0.tar.gz
Algorithm Hash digest
SHA256 50e1a4e551f06803102ae3c8b34d6e9f1d990424b2ab5caa9632756e19a1b785
MD5 6648d5c328ab08e49e15fb2adcd7b832
BLAKE2b-256 51df5faca494df3bb506259b60142b7fce1e3c249eb9842ae369ec782cd83c46

See more details on using hashes here.

File details

Details for the file pydantic_ai_tools_nory_x402-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pydantic_ai_tools_nory_x402-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c82b9c80e1fa7eca76f52c31703218b545f8290d35daad7f4bd11b5c3380b65f
MD5 a2e6d6e1e03c7f65bd3a69dedeb44ff2
BLAKE2b-256 3331aa6db270482e6fbb7292c60d0113d1e7510ab48a084b8f03571e447113db

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page