> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fire.rest/llms.txt
> Use this file to discover all available pages before exploring further.

# Single order

> Build and inject one order into FIRE with full control over every field.

The **Single order** tab lets you construct a single test order from scratch and send it directly to FIRE. Use it when you need precise control over channel, products, payment status, or client data — for example, to reproduce a specific edge case or validate a new menu configuration.

<img src="https://mintcdn.com/firepos/9UYk1f5ElnChzAeP/images/fuel/tab-single-order-en.png?fit=max&auto=format&n=9UYk1f5ElnChzAeP&q=85&s=d2820bc68c887c9ff84703cb9b6862d5" alt="Single order tab — order builder with context sidebar and results log" width="1920" height="945" data-path="images/fuel/tab-single-order-en.png" />

<Note>
  You must select an operating context (environment, account, country, vendor, and store) in the sidebar before the tab becomes functional.
</Note>

## Building and sending an order

<Steps>
  <Step title="Select a test menu">
    In the **Test menu** section, choose a menu from the dropdown. Test menus are managed by a superadmin and define the products, channels, and payment processors available for a given environment and vendor.

    You cannot proceed without a test menu selected — it is the catalog that populates the rest of the form.
  </Step>

  <Step title="Configure channel and delivery">
    In the **Channel and delivery** section, choose how the order reaches FIRE:

    * **Channel**: `POS`, `KIOSK`, `APP`, or `AGGREGATOR`
    * **Delivery method**: `pickup` (the customer collects at the counter) or `delivery` (requires a delivery address)

    If you select `delivery`, an address form expands below the delivery method selector.
  </Step>

  <Step title="Add products">
    In the **Products** section, pick items from the catalog provided by your selected test menu. For each product you can:

    * Set the **quantity**
    * Override the **unit price**

    <Note>
      Prices are expressed in the currency's minimum unit. For BRL, enter centavos: `1200` equals R\$12.00. For USD, enter dollars with decimals: `5.99` equals \$5.99. Check the menu definition if you are unsure which unit a currency uses.
    </Note>

    Products that have modifier groups (sauces, sizes, extras) show an **Edit modifiers** button. Tap it to expand the modifier panel and select or deselect options. Modifiers that are required must have a selection before the order can be injected.
  </Step>

  <Step title="Configure payment">
    In the **Payment** section:

    * **Processor**: select the payment method (e.g., credit card, PIX, cash) from the processors defined in the test menu.
    * **TX status**: choose the transaction outcome — `approved` (green), `pending` (yellow), or `rejected` (red). This controls how FIRE handles the order's payment state.
    * **Amount**: pre-filled from the product total; edit if you need a mismatch scenario.
  </Step>

  <Step title="Fill in client info">
    In the **Client** section, provide customer details. Fields used by FIRE's fiscal pipeline (required for NFC-e / NFS-e in Brazil and equivalent documents in other countries) are marked:

    * First name and last name
    * Email and phone
    * Government ID type and number
    * Billing email and business name (for B2B fiscal documents)

    For non-fiscal tests you can leave most fields blank; FIRE will still accept the order.
  </Step>

  <Step title="Review the JSON preview">
    The **JSON preview** section updates in real time as you fill in the form. Expand it to inspect the exact payload that will be sent to `POST /v1/orders`.

    <Tip>
      If you are an advanced user or want to paste a raw payload, switch to **Payload JSON** mode. You can paste any valid order JSON directly into the editor and send it without using the form — useful for replaying a specific production payload.
    </Tip>
  </Step>

  <Step title="Load the order">
    Click **Load order**. FUEL posts the payload to FIRE and displays the response below the button.

    * A green banner confirms the order was accepted and shows the FIRE order ID.
    * A red banner shows the error returned by FIRE (validation failure, auth error, etc.).

    The raw request and response JSON are available in the **Payload JSON** section for debugging.
  </Step>
</Steps>

## Advanced: raw JSON editor

If you need to send a payload that the form cannot express — unusual field combinations, legacy format testing, or a production order you copied — open the **Payload JSON** editor and paste your JSON directly. The form fields are ignored when the editor contains a valid JSON object.

Use **Regenerate IDs** to replace the `orderId` and `orderCode` with fresh UUIDs before resending, avoiding idempotency rejections from FIRE.

## Related

<CardGroup cols={2}>
  <Card title="Batch" href="/en/fuel/batch">
    Send multiple orders at once with configurable distributions.
  </Card>

  <Card title="Raw replay" href="/en/fuel/raw-replay">
    Search production orders and reinject them into any environment.
  </Card>
</CardGroup>
