A cookie order form for dozens, flavours and party favours

Updated 2026-10-30

Cookie orders sound simple until a customer asks for three dozen, half chocolate chip, some iced, by Friday. I would let them say it once, in a form, and keep the maths for baking day.

How it works

  1. The customer gives a name, phone and pickup date.
  2. They tick the flavours they want, from chocolate chip to shortbread.
  3. They set the number of dozens and say whether each dozen has one flavour or a mix.
  4. They choose plain or iced, and describe colours, names or a theme for decorated ones.
  5. They pick packaging, such as a box, a tin or wrapped bags for party favours, and name any allergies.

What a customer's AI would ask

"Which flavours would you like?" Then "How many dozen?" Then "Should any of them be decorated?" It lists the answers and sends them only after a yes. See agent-fillable forms.

Good to know

Decorated cookies take longer to make, so state your notice on your page. Count dozens per flavour for the baking list. Want a cake to go with them? A cake order form holds the detail a cake needs. For loaves and pastries, use a bakery order form. Browse forms for restaurants and food businesses and forms for ecommerce and Shopify stores.

Questions

How do I total the flavours for baking day?

Download the CSV, filter the cookie_flavours column for each flavour and add up the dozens. For mixed boxes, split the dozens by hand using the design notes.

Can I take custom decorated orders?

Yes. A decoration question separates plain from iced, and a design box takes colours, names or a theme. Decorated sets need more time, so tell customers your notice period on your page.

What about nut allergies?

The allergies box is required, so customers write none or name the allergen. Cookies often share a kitchen with nuts, so say that in the form description when you create it.

Try the form

Live demo ยท nothing is saved

Order a box of cookies

Pick your flavours and how many dozen you want. We bake to order and message you to confirm.

Which flavours would you like? (required)
How should the flavours be split?
Plain or decorated?

Names, shapes, colours or a theme.

Wrap each cookie for party favours
How should we pack them?

Write none if there are none.

Or paste the JSON

Give this to your AI. It needs the AI Form API MCP server or an API key. It makes the form and sends you the link.

text
Create this form with the AI Form API create_form tool (or POST https://aiformapi.com/v1/forms with my API key). Then reply with the public_url.

{
  "title": "Order a box of cookies",
  "description": "Pick your flavours and how many dozen you want. We bake to order and message you to confirm.",
  "fields": [
    {
      "id": "customer_name",
      "label": "Your name",
      "type": "short_text",
      "required": true,
      "max_length": 120
    },
    {
      "id": "customer_phone",
      "label": "Phone",
      "type": "phone",
      "required": true
    },
    {
      "id": "customer_email",
      "label": "Email",
      "type": "email"
    },
    {
      "id": "pickup_date",
      "label": "Pickup date",
      "type": "date",
      "required": true
    },
    {
      "id": "cookie_flavours",
      "label": "Which flavours would you like?",
      "type": "multi_choice",
      "required": true,
      "options": [
        "Chocolate chip",
        "Oatmeal raisin",
        "Peanut butter",
        "Snickerdoodle",
        "Sugar cookie",
        "Double chocolate",
        "Shortbread",
        "White chocolate macadamia"
      ]
    },
    {
      "id": "dozens_ordered",
      "label": "How many dozen?",
      "type": "number",
      "required": true,
      "min": 1,
      "max": 40
    },
    {
      "id": "flavour_split",
      "label": "How should the flavours be split?",
      "type": "single_choice",
      "options": [
        "One flavour per dozen",
        "A mix in each dozen",
        "Surprise me"
      ]
    },
    {
      "id": "decoration",
      "label": "Plain or decorated?",
      "type": "single_choice",
      "options": [
        "Plain",
        "Iced with simple designs",
        "Custom designs for an event"
      ]
    },
    {
      "id": "design_notes",
      "label": "Describe the design",
      "type": "long_text",
      "help": "Names, shapes, colours or a theme.",
      "max_length": 800
    },
    {
      "id": "theme_colours",
      "label": "Colours",
      "type": "short_text",
      "max_length": 150
    },
    {
      "id": "wrapped_for_favours",
      "label": "Wrap each cookie for party favours",
      "type": "checkbox"
    },
    {
      "id": "packaging",
      "label": "How should we pack them?",
      "type": "single_choice",
      "options": [
        "Bakery box",
        "Tin",
        "Cellophane bags"
      ]
    },
    {
      "id": "allergies",
      "label": "Allergies we must know about",
      "type": "long_text",
      "required": true,
      "help": "Write none if there are none.",
      "max_length": 500
    }
  ]
}

Or call the API

bash
curl -X POST https://aiformapi.com/v1/forms \
  -H "Authorization: Bearer $AIFORMAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title":"Order a box of cookies","description":"Pick your flavours and how many dozen you want. We bake to order and message you to confirm.","fields":[{"id":"customer_name","label":"Your name","type":"short_text","required":true,"max_length":120},{"id":"customer_phone","label":"Phone","type":"phone","required":true},{"id":"customer_email","label":"Email","type":"email"},{"id":"pickup_date","label":"Pickup date","type":"date","required":true},{"id":"cookie_flavours","label":"Which flavours would you like?","type":"multi_choice","required":true,"options":["Chocolate chip","Oatmeal raisin","Peanut butter","Snickerdoodle","Sugar cookie","Double chocolate","Shortbread","White chocolate macadamia"]},{"id":"dozens_ordered","label":"How many dozen?","type":"number","required":true,"min":1,"max":40},{"id":"flavour_split","label":"How should the flavours be split?","type":"single_choice","options":["One flavour per dozen","A mix in each dozen","Surprise me"]},{"id":"decoration","label":"Plain or decorated?","type":"single_choice","options":["Plain","Iced with simple designs","Custom designs for an event"]},{"id":"design_notes","label":"Describe the design","type":"long_text","help":"Names, shapes, colours or a theme.","max_length":800},{"id":"theme_colours","label":"Colours","type":"short_text","max_length":150},{"id":"wrapped_for_favours","label":"Wrap each cookie for party favours","type":"checkbox"},{"id":"packaging","label":"How should we pack them?","type":"single_choice","options":["Bakery box","Tin","Cellophane bags"]},{"id":"allergies","label":"Allergies we must know about","type":"long_text","required":true,"help":"Write none if there are none.","max_length":500}]}'

JSON definition

json
{
  "title": "Order a box of cookies",
  "description": "Pick your flavours and how many dozen you want. We bake to order and message you to confirm.",
  "fields": [
    {
      "id": "customer_name",
      "label": "Your name",
      "type": "short_text",
      "required": true,
      "max_length": 120
    },
    {
      "id": "customer_phone",
      "label": "Phone",
      "type": "phone",
      "required": true
    },
    {
      "id": "customer_email",
      "label": "Email",
      "type": "email"
    },
    {
      "id": "pickup_date",
      "label": "Pickup date",
      "type": "date",
      "required": true
    },
    {
      "id": "cookie_flavours",
      "label": "Which flavours would you like?",
      "type": "multi_choice",
      "required": true,
      "options": [
        "Chocolate chip",
        "Oatmeal raisin",
        "Peanut butter",
        "Snickerdoodle",
        "Sugar cookie",
        "Double chocolate",
        "Shortbread",
        "White chocolate macadamia"
      ]
    },
    {
      "id": "dozens_ordered",
      "label": "How many dozen?",
      "type": "number",
      "required": true,
      "min": 1,
      "max": 40
    },
    {
      "id": "flavour_split",
      "label": "How should the flavours be split?",
      "type": "single_choice",
      "options": [
        "One flavour per dozen",
        "A mix in each dozen",
        "Surprise me"
      ]
    },
    {
      "id": "decoration",
      "label": "Plain or decorated?",
      "type": "single_choice",
      "options": [
        "Plain",
        "Iced with simple designs",
        "Custom designs for an event"
      ]
    },
    {
      "id": "design_notes",
      "label": "Describe the design",
      "type": "long_text",
      "help": "Names, shapes, colours or a theme.",
      "max_length": 800
    },
    {
      "id": "theme_colours",
      "label": "Colours",
      "type": "short_text",
      "max_length": 150
    },
    {
      "id": "wrapped_for_favours",
      "label": "Wrap each cookie for party favours",
      "type": "checkbox"
    },
    {
      "id": "packaging",
      "label": "How should we pack them?",
      "type": "single_choice",
      "options": [
        "Bakery box",
        "Tin",
        "Cellophane bags"
      ]
    },
    {
      "id": "allergies",
      "label": "Allergies we must know about",
      "type": "long_text",
      "required": true,
      "help": "Write none if there are none.",
      "max_length": 500
    }
  ]
}