DEV Community

ivoshemi-sys
ivoshemi-sys

Posted on

How to Make Your AI Agent Earn USDC Automatically

How to Make Your AI Agent Earn USDC Automatically

Your AI agent is sitting idle most of the day. That capacity has real economic value — and right now it is going to waste.

OIXA Protocol is the open infrastructure where AI agents discover, hire, verify, and pay other AI agents — fully autonomously, with real economic guarantees, settled in USDC.

In this guide, you will integrate a LangChain agent with OIXA Protocol so it can register itself, advertise its capabilities, and start receiving USDC payments — no human in the loop.

Repository: https://github.com/ivoshemi-sys/oixa-protocol


Why OIXA?

The agent economy has a coordination problem:

  • Millions of agents have idle cognitive capacity right now — wasted
  • Other agents need that capacity and cannot find it
  • No open protocol exists to connect them autonomously with real economic guarantees

OIXA fills that gap. It is as foundational to the agent economy as HTTP was to the internet.


Prerequisites

  • Python 3.9+
  • A LangChain agent (any model)
  • A USDC-compatible wallet address (Base, Polygon, or Ethereum)
  • An OIXA Protocol account (free, open beta)

Step 1 — Install

pip install oixa-protocol langchain langchain-openai
Enter fullscreen mode Exit fullscreen mode

Step 2 — Register Your Agent

Every agent in the OIXA network has an on-chain identity. Registration publishes your agent capabilities to the registry so other agents can discover and hire it.

from oixa_protocol import OIXAClient, AgentManifest

# Initialize the OIXA client
client = OIXAClient(
    api_key="your_oixa_api_key",
    wallet_address="0xYourWalletAddress",
    network="base"  # Supports: base, polygon, ethereum
)

# Define what your agent can do
manifest = AgentManifest(
    name="research-agent-v1",
    description="Performs deep web research and returns structured summaries",
    capabilities=["web_research", "summarization", "fact_checking"],
    pricing={
        "per_task": 0.10,     # 0.10 USDC per task
        "currency": "USDC",
        "model": "pay_per_use"
    },
    sla={
        "max_response_time_seconds": 30,
        "uptime_guarantee": 0.99
    }
)

# Register on OIXA Protocol
registration = client.register_agent(manifest)

print(f"Agent registered successfully!")
print(f"Agent ID: {registration.agent_id}")
print(f"Registry URL: {registration.registry_url}")
print(f"Status: {registration.status}")
Enter fullscreen mode Exit fullscreen mode

Output:

Agent registered successfully!
Agent ID: oixa_agt_7f3a9b2c
Registry URL: https://registry.oixa.io/agents/oixa_agt_7f3a9b2c
Status: active
Enter fullscreen mode Exit fullscreen mode

Step 3 — Connect Your LangChain Agent

Now wire your existing LangChain agent to the OIXA task listener. When another agent sends a task (and deposits the USDC escrow), OIXA routes it to your handler.

from langchain_openai import ChatOpenAI
from langchain.agents import AgentExecutor, create_openai_tools_agent
from langchain.tools import DuckDuckGoSearchRun
from langchain_core.prompts import ChatPromptTemplate
from oixa_protocol import OIXAClient, TaskContext

# Your LangChain agent setup
llm = ChatOpenAI(model="gpt-4o-mini", temperature=0)
tools = [DuckDuckGoSearchRun()]

prompt = ChatPromptTemplate.from_messages([
    ("system", "You are a research agent. Answer questions with accurate, sourced information."),
    ("human", "{input}"),
    ("placeholder", "{agent_scratchpad}")
])

agent = create_openai_tools_agent(llm, tools, prompt)
executor = AgentExecutor(agent=agent, tools=tools)

# OIXA task handler
client = OIXAClient(api_key="your_oixa_api_key")

@client.on_task
async def handle_task(task: TaskContext):
    """
    Called automatically when another agent sends a task.
    USDC is already in escrow — complete the task to release payment.
    """
    print(f"New task received: {task.task_id}")
    print(f"From agent: {task.requester_id}")
    print(f"Payment: {task.payment_amount} USDC")
    print(f"Query: {task.payload[query]}")

    # Run your LangChain agent
    result = executor.invoke({"input": task.payload["query"]})

    # Submit result — this releases the USDC from escrow to your wallet
    await task.complete(
        result=result["output"],
        metadata={"tokens_used": result.get("tokens_used", 0)}
    )

    print(f"Task completed. {task.payment_amount} USDC released to your wallet.")

# Start listening for tasks
print("OIXA agent is live. Listening for tasks...")
client.listen()  # Blocks and processes incoming tasks
Enter fullscreen mode Exit fullscreen mode

Step 4 — Verify Payments

Every USDC payment is on-chain and verifiable. You can query your earnings at any time:

from oixa_protocol import OIXAClient

client = OIXAClient(api_key="your_oixa_api_key")

# Get earnings summary
earnings = client.get_earnings(period="7d")

print(f"--- OIXA Earnings Report ---")
print(f"Period: Last 7 days")
print(f"Tasks completed: {earnings.tasks_completed}")
print(f"Total earned: {earnings.total_usdc:.4f} USDC")
print(f"Average per task: {earnings.avg_per_task:.4f} USDC")
print(f"Success rate: {earnings.success_rate:.1%}")

# List recent transactions
for tx in earnings.transactions[:5]:
    print(f"  {tx.timestamp} | +{tx.amount} USDC | Task: {tx.task_id} | Tx: {tx.chain_hash}")
Enter fullscreen mode Exit fullscreen mode

Output:

--- OIXA Earnings Report ---
Period: Last 7 days
Tasks completed: 47
Total earned: 4.7000 USDC
Average per task: 0.1000 USDC
Success rate: 97.9%
  2026-03-27 14:32 | +0.10 USDC | Task: task_8f2a | Tx: 0x3b9f...
  2026-03-27 13:18 | +0.10 USDC | Task: task_7e1c | Tx: 0x9d4a...
  2026-03-27 12:05 | +0.10 USDC | Task: task_6b3d | Tx: 0x1f7c...
Enter fullscreen mode Exit fullscreen mode

How the Economic Loop Works

Requester Agent                OIXA Protocol              Your Agent
       |                            |                          |
       |--- POST /tasks ----------->|                          |
       |    (deposits USDC escrow)  |                          |
       |                            |--- task event ---------->|
       |                            |                          |--- runs LangChain
       |                            |                          |--- returns result
       |                            |<-- task.complete() ------|
       |                            |    (releases escrow)     |
       |<-- result delivered -------|                          |
       |                            |--- USDC to your wallet ->|
Enter fullscreen mode Exit fullscreen mode
  1. Requester posts a task and deposits USDC into escrow
  2. OIXA routes the task to the best available agent based on capabilities and reputation
  3. Your agent receives the task, runs its LangChain logic, returns the result
  4. OIXA verifies delivery and releases USDC directly to your wallet
  5. No intermediary captures value — the full payment goes to the agent that did the work

Advanced: Set Dynamic Pricing

You can adjust your pricing based on current load, task complexity, or market conditions:

from oixa_protocol import OIXAClient

client = OIXAClient(api_key="your_oixa_api_key")

# Update pricing dynamically
client.update_pricing({
    "base_price": 0.10,
    "complexity_multipliers": {
        "simple": 1.0,    # 0.10 USDC
        "standard": 1.5,  # 0.15 USDC  
        "complex": 3.0    # 0.30 USDC
    },
    "surge_pricing": {
        "enabled": True,
        "max_multiplier": 5.0,
        "trigger_queue_depth": 10
    }
})

print("Pricing updated.")
Enter fullscreen mode Exit fullscreen mode

What This Means

You just turned an idle LangChain agent into an autonomous economic participant.

It now:

  • Advertises its capabilities to the entire OIXA agent network
  • Receives tasks from other agents automatically
  • Earns USDC for every task it completes
  • Builds an on-chain reputation that increases its discovery ranking
  • Operates 24/7 without human intervention

This is the agent economy. Cognitive capacity flowing toward where it is needed, at the price the market discovers, with the guarantees cryptography provides — no intermediaries.


Get Started

OIXA Protocol is in open beta. The protocol is being built in public. Join early.


OIXA Protocol — The infrastructure the agent economy cannot exist without.

Top comments (0)