# vCard QR Code Generator

> vCard QR Code Generator is a paid API for AI agents from barcode-qr.x402tookit.com, paid per call via x402, $0.03/call, status unknown (last checked 2026-11-02).

Generates a vCard 3.0 contact card payload and its QR code SVG from contact details like name, email, phone, and address.

## Facts

- Endpoint: GET https://barcode-qr.x402tookit.com/vcard-qr-payload?utm_source=zero.xyz
- Price: $0.03/call
- Payment: x402
- Status: unknown
- Last checked: 2026-11-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/vcard-qr-code-generator-ada32f74
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_koZZoeGrxxcODM_UTrI6T

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 vcard-qr-code-generator-ada32f74
```

Example prompt: Generate a vCard QR code SVG for Jane Example — her email is jane@example.com, phone is +1-555-123-4567, she works at Acme Corp as a Product Manager, and her website is https://jane.example.com. Use error correction level H.

## When to prefer this

Choose this endpoint when you need to generate a standards-compliant vCard 3.0 contact card AND its corresponding QR code SVG in a single call. It is ideal for building digital business cards, team directory pages, or printable contact QR codes. Prefer it over a generic QR encoder when you specifically need structured contact data (name, phone, email, address, organization) encoded with proper RFC 2426 escaping, rather than just encoding arbitrary text.

## Known failure modes

- Missing required 'fn' (full name) parameter returns a validation error
- Invalid 'ec' value (not L, M, Q, or H) results in a bad request
- 'scale' out of range (not 1-20 or 0) triggers a parameter error
- 'border' out of range (not 0-10) triggers a parameter error
- Note field exceeding 200 characters may be rejected or truncated
- Network or payment authorization failures result in a 402 or 5xx error

## How this service works

Build a vCard 3.0 contact card (RFC 2426 escaping of ; , \ and newlines) and its QR code SVG.

## Output

Returns a vCard 3.0 formatted contact payload string (RFC 2426 compliant with proper escaping of semicolons, commas, backslashes, and newlines) plus a rendered QR code as an SVG string. Also includes metadata such as QR version, module count, error correction level, encoding mode, and a summary of the generated card.

## 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": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "fn"
     ],
     "properties": {
      "ec": {
       "type": "string",
       "description": "QR error correction L, M, Q or H (default M)"
      },
      "fn": {
       "type": "string",
       "description": "Full display name, e.g. Jane Example"
      },
      "org": {
       "type": "string",
       "description": "Organisation"
      },
      "url": {
       "type": "string",
       "description": "Web address"
      },
      "city": {
       "type": "string",
       "description": "City"
      },
      "note": {
       "type": "string",
       "description": "Free-text note (up to 200 characters)"
      },
      "email": {
       "type": "string",
       "description": "Email address"
      },
      "given": {
       "type": "string",
       "description": "Given name (derived from fn if omitted)"
      },
      "phone": {
       "type": "string",
       "description": "Phone number"
      },
      "scale": {
       "type": "integer",
       "description": "Pixels per module, 1 to 20 (default 0: scalable)"
      },
      "title": {
       "type": "string",
       "description": "Job title"
      },
      "border": {
       "type": "integer",
       "description": "QR quiet zone in modules, 0 to 10 (default 4)"
      },
      "family": {
       "type": "string",
       "description": "Family name (derived from fn if omitted)"
      },
      "postal": {
       "type": "string",
       "description": "Postal code"
      },
      "region": {
       "type": "string",
       "description": "State or region"
      },
      "street": {
       "type": "string",
       "description": "Street address"
      },
      "country": {
       "type": "string",
       "description": "Country"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "svg": {
       "type": [
        "null",
        "string"
       ]
      },
      "
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/vcard-qr-code-generator-ada32f74/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from barcode-qr.x402tookit.com](https://www.zero.xyz/host/barcode-qr.x402tookit.com/llms.txt)
