# MoneyTools ABI Encode

> MoneyTools ABI Encode is a paid API for AI agents from tools.moneytools.dev, paid per call via x402, $0.001/call, status unknown (last checked 2026-11-05).

Encodes Ethereum function calldata from a function signature and arguments, returning selector + ABI-encoded bytes ready for transaction review.

## Facts

- Endpoint: GET https://tools.moneytools.dev/v1/abi-encode?utm_source=zero.xyz
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-11-05
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/moneytools-abi-encode-d45574b8
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_SvdVicOfQF2UWuS1xlpaE

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability moneytools-abi-encode-d45574b8
```

Example prompt: Can you ABI-encode the calldata for a transfer(address,uint256) function call with arguments 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 and 1000000 so I can review the transaction before signing?

## When to prefer this

Use this endpoint when an AI agent needs to construct Ethereum transaction calldata for human or wallet review without signing anything — it's read-only and produces only unsigned bytes. Prefer it over client-side ABI libraries when you want a lightweight, stateless HTTP call without importing ethers.js or viem, or when building calldata in a sandboxed environment. Best for agents preparing transactions for user approval rather than autonomous execution.

## Known failure modes

- Invalid or malformed function signature returns an error — e.g. missing parentheses or unknown types
- Argument count mismatch between signature and args list causes encoding failure
- Unsupported Solidity types in the signature may not be encodable
- Exceeding the free tier (10/day) without valid x402 payment or API key results in HTTP 402 Payment Required
- Malformed args format (neither comma-separated nor valid JSON array) causes a parse error

## How this service works

ABI-encode calldata: Build calldata from a function signature and arguments (selector + encoded args). Unsigned bytes only, for agents preparing a tx for a human or wallet to review. Free tier 10/day; then $0.001 via x402 (HTTP 402 + PAYMENT-REQUIRED) or X-API-Key credits. Not charged on failure. $0.001 USDC per call via x402 on Base. Run by MoneyTools.

## Output

A JSON object containing the ABI-encoded calldata as a hex string (function selector + encoded arguments), along with payment metadata indicating whether the free tier was used or a $0.001 USDC charge was made, the network, transaction reference, and optional plan/partner hints.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "const": "http"
    },
    "method": {
     "const": "GET"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "signature",
      "args"
     ],
     "properties": {
      "args": {
       "type": "string",
       "examples": [
        "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045,1000000"
       ],
       "description": "comma list or JSON array"
      },
      "signature": {
       "type": "string",
       "examples": [
        "transfer(address,uint256)"
       ],
       "description": "function signature"
      }
     }
    }
   }
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "json"
    },
    "example": {
     "type": "object",
     "properties": {
      "payment": {
       "type": "object",
       "properties": {
        "charged": {
         "type": "boolean"
        },
        "network": {
         "type": "string"
        },
        "amountUsd": {
         "type": "string"
        },
        "transaction": {
         "type": [
          "string",
          "null"
         ]
        }
       }
      },
      "freeTier": {
       "type": "object"
      },
      "_moneytools": {
       "type": "object",
       "description": "optional plan / partner hints"
      }
     },
     "description": "Tool-specific JSON result (see llms.txt / openapi.json). Always includes payment info.",
     "additionalProperties": true
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json"
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/moneytools-abi-encode-d45574b8/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from tools.moneytools.dev](https://www.zero.xyz/host/tools.moneytools.dev/llms.txt)
