# FreelanceDesk Invoice PDF Generator

> FreelanceDesk Invoice PDF Generator is a paid API for AI agents from afraid-butterfly-5236.obtranzat.deno.net, paid per call via x402, $0.1/call, status unknown (last checked 2026-11-01).

Converts a structured invoice JSON payload into a print-ready A4 PDF document, settling payment via USDC on Base.

## Facts

- Endpoint: POST https://afraid-butterfly-5236.obtranzat.deno.net/v1/invoice/pdf?utm_source=zero.xyz
- Price: $0.1/call
- Payment: x402
- Status: unknown
- Last checked: 2026-11-01
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/freelancedesk-invoice-pdf-generator-3a9ceb49
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_GLViA82-qt9ZETZemTZPc

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 freelancedesk-invoice-pdf-generator-3a9ceb49 -d '<json body>'
```

Example prompt: Generate a PDF invoice numbered 2026-014 from Acme Studio (acme@studio.com) to Bright Corp (bright@corp.com) for 8 hours of design work at $150 each and 2 logo files at $200 each, 20% VAT exclusive, due 2026-02-28, issued 2026-02-01, in EUR.

## When to prefer this

Choose this endpoint when you need a professionally formatted, print-ready A4 PDF invoice and are comfortable paying per-call in USDC on Base via x402 or MPP. Prefer this over the HTML sibling when the output must be printed, emailed as an attachment, or archived as a fixed-layout document. Use the cheaper /validate endpoint first to check the invoice JSON before paying for the PDF render.

## Known failure modes

- Payment not settled — 402 response with x402 and MPP payment challenges returned
- Invalid invoice JSON — missing required fields like seller name, client name, or line items returns a validation error
- Invalid date format — dates not in YYYY-MM-DD format rejected
- Unit price with more than 2 decimal places rejected
- Line items array empty or exceeds 100 items
- Unknown currency code causes processing error
- Network timeout during PDF rendering

## How this service works

Invoicing and billing resources sold per call to software. POST invoice JSON to check it (0.05 USD), get a print-ready A4 invoice as PDF (0.10 USD) or as self-contained HTML (0.10 USD), or GET the FreelanceDesk app and document pack as zip downloads. Each endpoint answers 402 with two payment options: an x402 v2 PAYMENT-REQUIRED challenge and an MPP WWW-Authenticate challenge (method evm, intent charge). Both settle an exact USDC EIP-3009 transfer on Base (eip155:8453) and return the resource in the same response.

## Output

Returns a PDF file as a download with metadata: the filename (e.g. invoice-2026-014.pdf), the computed invoice total, the currency, and the content type (application/pdf). The PDF is a formatted A4 print-ready invoice document.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "date": {
   "type": "string",
   "description": "Issue date, YYYY-MM-DD"
  },
  "items": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "description",
     "quantity",
     "unitPrice"
    ],
    "properties": {
     "taxRate": {
      "type": "number",
      "maximum": 100,
      "minimum": 0
     },
     "quantity": {
      "type": "number",
      "exclusiveMinimum": 0
     },
     "unitPrice": {
      "type": "string",
      "description": "Non-negative amount, max 2 decimals"
     },
     "description": {
      "type": "string"
     }
    }
   },
   "maxItems": 100,
   "minItems": 1
  },
  "notes": {
   "type": "string"
  },
  "client": {
   "type": "object",
   "required": [
    "name"
   ],
   "properties": {
    "name": {
     "type": "string"
    },
    "email": {
     "type": "string"
    },
    "vatId": {
     "type": "string"
    },
    "address": {
     "type": "string"
    }
   }
  },
  "number": {
   "type": "string",
   "description": "Invoice number, e.g. 2026-014"
  },
  "seller": {
   "type": "object",
   "required": [
    "name"
   ],
   "properties": {
    "name": {
     "type": "string"
    },
    "email": {
     "type": "string"
    },
    "vatId": {
     "type": "string"
    },
    "address": {
     "type": "string"
    }
   }
  },
  "dueDate": {
   "type": "string",
   "description": "Due date, YYYY-MM-DD"
  },
  "taxMode": {
   "enum": [
    "exclusive",
    "inclusive"
   ],
   "type": "string",
   "description": "default exclusive"
  },
  "currency": {
   "type": "string",
   "description": "ISO 4217 code, default EUR"
  },
  "taxLabel": {
   "type": "string",
   "description": "default VAT"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "file": "invoice-2026-014.pdf",
  "total": "242.00",
  "currency": "EUR",
  "contentType": "application/pdf"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/freelancedesk-invoice-pdf-generator-3a9ceb49/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from afraid-butterfly-5236.obtranzat.deno.net](https://www.zero.xyz/host/afraid-butterfly-5236.obtranzat.deno.net/llms.txt)
