Skip to content
Billzova Developers

Get started

Build with AI

Copy-paste prompts for Claude, ChatGPT, Cursor and Copilot that build a complete, correct Billzova integration — plus a rules file that keeps every AI session on track.

Ask ChatGPTAsk Claude

AI coding assistants can build a Billzova integration in minutes — if they know the rules. Each prompt below makes the assistant read these docs first, then build to the same rules a careful developer would: key on the server only, totals from the quote, safe retries, clear errors.

  1. Get a test key

    The restaurant creates one in Settings → Developers → Create key (bz_test_sk_…). Test orders never reach the kitchen.

  2. Copy a prompt

    Pick what you are building below and press Copy prompt — or open it straight in ChatGPT or Claude.

  3. Paste it into your assistant

    Claude, ChatGPT, Cursor, Windsurf, Copilot, Lovable, Bolt… Answer its questions about your stack.

  4. Test, then go live

    Run the test checklist it gives you, then use the Review my integration prompt. Swap to a live key when it passes.

Prompts

Complete restaurant website with ordering (Next.js)

Start from nothing: menu, cart, checkout, order status and an open/closed banner — mobile first.

Open in ChatGPTOpen in Claude

Add online ordering to an existing website (any stack)

WordPress, PHP, Laravel, plain HTML, Express, Django… adds a small backend endpoint and an order button.

Fill in the [BRACKETS] after pasting.

Open in ChatGPTOpen in Claude

Table booking page

Date and guests → free times from the restaurant → booking that appears in the POS for staff to confirm.

Open in ChatGPTOpen in Claude

Order status page for customers

A page you can send the customer: live status, timeline and delivery person.

Open in ChatGPTOpen in Claude

Live menu on a website (no ordering)

Show the POS menu on a website, always up to date — prices, sizes, Veg marks, sold-out items.

Open in ChatGPTOpen in Claude

Review my integration before go-live

Paste your code — the assistant audits it against every Billzova rule and gives a fix list.

Fill in the [BRACKETS] after pasting.

Open in ChatGPTOpen in Claude

Debug a Billzova API error

Paste the request and the error — get the cause and the fix.

Fill in the [BRACKETS] after pasting.

Open in ChatGPTOpen in Claude

Rules file for your project

Save this in your repository so every AI session follows the Billzova rules, not just the first one. Name it AGENTS.md (most tools), CLAUDE.md (Claude Code), .cursor/rules/billzova.mdc (Cursor) or .github/copilot-instructions.md (Copilot).

AGENTS.md · CLAUDE.md · .cursor/rules/billzova.mdc
# Billzova API — rules for AI assistants
# Save as AGENTS.md, CLAUDE.md, .cursor/rules/billzova.mdc or .github/copilot-instructions.md

This project uses the Billzova restaurant API. Full docs: https://developers.billzova.com/llms-full.txt
Read them before writing or changing any Billzova code. Use only the endpoints, fields and error codes they list.

Rules you must follow (from the Billzova docs — do not invent anything beyond them):
1. API host: https://api.billzova.com — every path below already starts with /v1 (e.g. https://api.billzova.com/v1/menu). Auth header: "Authorization: Bearer <key>". The key is SECRET: read it from an environment variable (BILLZOVA_KEY) on the server only. Never put it in browser code, a mobile app bundle, a URL or git. The browser talks to MY server; my server talks to Billzova.
2. Build and test with a TEST key (bz_test_sk_…). Test orders and bookings never reach the kitchen. Switching to a live key (bz_live_sk_…) must be the only change needed to go live.
3. Send the header "Billzova-Version: 2026-10-17" on every request so behaviour never changes under me.
4. Money is { amount (integer paise), currency, display }. Show the "display" string. Never compute prices, GST, charges or totals myself.
5. Before checkout, price the cart with POST /v1/orders/quote and show exactly its lines, tax, charges and total.
6. Items with sizes have menuItemId: null and a "variants" list — order the chosen variant's menuItemId. Respect each add-on group's min/max. Hide or grey out anything with available: false.
7. Place orders with POST /v1/orders and an "Idempotency-Key" header: one UUID created when the customer taps "Place order", reused on every retry of that same order. Send expectedTotal = the quote's total.amount. On PRICE_CHANGED show the new quote from the error and ask the customer to confirm. On IDEMPOTENCY_IN_PROGRESS wait 2 seconds and retry with the same key.
8. On page load call GET /v1/restaurant. If ordering.acceptingNow is false, disable checkout and show status.label (e.g. "Closed · opens 11:00 AM") or "Not taking orders right now".
9. Payment: pickup → PAY_AT_COUNTER, delivery → CASH_ON_DELIVERY. There is NO online payment yet — do not add a payment gateway step. Delivery needs address (5–300 chars) and a 6-digit pincode; customer phone is a 10-digit Indian mobile.
10. Branch on error.code, never on the message. Show error.message to the customer when it helps (e.g. ITEM_UNAVAILABLE, CLOSED, OUT_OF_AREA, BELOW_MINIMUM). Log error.requestId with every failure.
11. There are no webhooks yet. Show order status by polling GET /v1/orders/{id} every 15 seconds from MY server (stop at COMPLETED, REJECTED or CANCELLED). Statuses: PENDING → ACCEPTED → PREPARING → READY → OUT_FOR_DELIVERY → COMPLETED, or REJECTED (show rejectionReason) / CANCELLED. When OUT_FOR_DELIVERY, show delivery.person name and phone.
12. Cache GET /v1/menu and send its ETag back as If-None-Match (304 = unchanged). Respect rate limits; on 429 wait for Retry-After.
13. Ignore response fields you do not know, and treat unknown enum values gracefully — new ones can be added.

Key files: put the Billzova client in one server-side module; keep BILLZOVA_KEY in .env (never commit it).

Docs in AI-friendly form

  • Everything in one file: https://developers.billzova.com/llms-full.txt — paste the link (or the file) into any assistant.
  • Index: https://developers.billzova.com/llms.txt — the standard map of these docs for AI tools.
  • Any page: press Copy page for AI at the top of a docs or API reference page to copy it as Markdown.
  • Prompts as plain text: https://developers.billzova.com/prompts/full-website.txt (and one for each prompt above) — for tools that fetch a URL.