ppaperbrainTemplates
Sign inGet started
← All templates
Sales & Agreements

Purchase Order

B2B purchase order — vendor and ship-to blocks, ordered items, totals, terms, and approver.

The contract

Fields your API call provides. Amounts and totals are always computed by the caller — templates only format.

taxnumberrequired
items[].amountnumberrequired
items[].quantitynumberrequired
items[].unit_pricenumberrequired
items[].descriptionstringrequired
totalnumberrequired
vendor.namestringrequired
vendor.emailstringrequired
vendor.addressstringrequired
ship_to.namestringrequired
ship_to.addressstringrequired
subtotalnumberrequired
po_numberstringrequired
issue_datestringrequired
approved_bystringrequired
delivery_datestringrequired
payment_termsstringrequired

MCP-ready: forks of this template will expose generate_purchase_order when the MCP server ships.

Generate it (after you fork & publish)

curl -X POST https://your-paperbrain-host/api/generate/gen_<your-id> \
  -H "Content-Type: application/json" \
  -d '{
    "tax": 1432.08,
    "items": [
      {
        "amount": 7680,
        "quantity": 12,
        "unit_price": 640,
        "description": "Height-adjustable desk, walnut"
      },
      {
        "amount": 4620,
        "quantity": 12,
        "unit_price": 385,
        "description": "Task chair, mesh back"
      },
      {
        "amount": 1740,
        "quantity": 12,
        "unit_price": 145,
        "description": "Monitor arm, dual"
      }
    ],
    "total": 15472.08,
    "vendor": {
      "name": "Cascade Office Systems",
      "email": "orders@cascadeoffice.example",
      "address": "98 Industrial Way, Tacoma, WA 98402"
    },
    "ship_to": {
      "name": "Acme Corp — Receiving",
      "address": "1200 Harbor Blvd, Dock 4, Seattle, WA 98104"
    },
    "subtotal": 14040,
    "po_number": "PO-7731",
    "issue_date": "2026-06-10",
    "approved_by": "M. Okafor, Director of Operations",
    "delivery_date": "2026-07-15",
    "payment_terms": "Net 45"
  }'

gen_<your-id>is your generator's id once you fork and publish. The body shown is this template's sample data — the exact shape the contract validates.