# How to create an order form with payment in Makeform

Build an order form with quantities, a calculated total, and a **Payment** block in the form editor. These features are free on every plan; Stripe's own fees apply.

**Is it free?** Yes. Makeform charges no fee on payments; Stripe fees apply.

## Steps

1. Describe your order form at [makeform.ai/create](https://www.makeform.ai/create), with no account needed to start. Adjust it by hand or by [chatting with the AI](/help/guides/create-a-form-with-ai). You can use the AI suggestion **Add prices and payment**.
2. For manual setup, click **+** (**Add form element**) and use **Input blocks**. Add one **Number Input** per item for quantity. Put the price in the label, such as “Coffee beans – $18”. Alternatively, use a choice field with **Enable scoring** and assign each option points equal to its price.
3. Add a **Calculation** field for the total. With quantity fields named `beans_qty` and `mug_qty`, use:

   ```text
   {{beans_qty}} * 18 + {{mug_qty}} * 12
   ```

   Set **Respondent display** to **Hidden**, or choose **Visible output** to show the total. Set **Value prefix** to `$` if you want a dollar prefix.
4. Add **Short Text Input** for the customer's name, **Email Input**, **Phone Input**, and **Address Input** for delivery details.
5. Add a **Payment** block. Set **Amount Type** to **Dynamic (Calculated)**, **Dynamic Mode** to **Field Value → Amount**, and **Calculate From Field** to your total calculation.
6. Publish and test the order form. Check the quantities, calculated total, and amount charged together.

## Understand the payment amount

With **Field Value → Amount**, the calculation is read in normal currency units: a total of 54 charges 54.00. A fixed **Amount (in cents)** uses cents instead. Makeform recalculates the payment amount on the server from the submitted answers.

:::callout{type="info"}
Makeform has no product catalog or cart block and does not track inventory. Build the order from fields and a calculation.
:::

## Limit a choice option

For a limited size or another choice option, use **Limit responses per option**. An option shows **Full** when its limit is reached. See [limits per option](/help/guides/limit-responses-per-option) for setup.

Makeform is a free AI form builder: describe what you want to collect and it builds the form for you, with unlimited forms and submissions on the free plan.

## FAQ

### Can I collect payment on the free plan?

Yes, the payment block is free on every plan. Makeform adds no payment fee, but Stripe's own fees apply.

### Can customers order more than one item?

Use a quantity field for each item and include those fields in the total calculation. The payment block can read that calculated total as the amount to charge.

### Does Makeform include a shopping cart?

There is no cart or product catalog block. Use quantity or scored choice fields, a calculation, and a payment block to build the order form.

## Related

- [Collect payments with Stripe](/help/tutorials/common-tutorials/how-to-collect-payments-with-stripe)
- [Calculation fields](/help/features/calculator)
- [Payment block](/help/features/payment)
- [Limit responses per option](/help/guides/limit-responses-per-option)
