# Create multiple bills in one request

Endpoint: POST /bills/create-bulk-bills
Version: 2.0.0
Security: oauth2ClientCredentials

## Header parameters:

  - `org_wallet_ref` (string)

  - `business_id` (string, required)

## Request fields (application/json):

  - `bills` (array, required)
    Bills to create

  - `bills.invoice_no` (string, required)
    Example: INV-001

  - `bills.invoice_amount` (number, required)
    Example: 12000

  - `bills.status` (string)
    Enum: "draft", "outstanding"

  - `bills.supplier` (object, required)

  - `bills.budget_owner` (object)

  - `bills.team` (object)
    Selected team. The middleware derives budget_owner from its reviewers/employees before forwarding.

  - `bills.payments` (array)

  - `bills.attachments` (array)

  - `bills.withholding_taxes` (array)

  - `bills.description` (string)
    Example: Consulting services - June

  - `bills.due_date` (string)
    Due date (YYYY-MM-DD)
    Example: 2026-06-30

  - `bills.budget` (array)
    Budget ObjectId(s) this bill is assigned to (upstream stores `budget: [ObjectId]`)

  - `bills.is_draft` (boolean)
    Whether the bill is saved as a draft
    Example: true

  - `bills.category` (string)
    Category name

  - `bills.category_code` (string)
    Category / subcategory code

  - `bills.paid_amount` (number)
    Amount already paid / to be paid

  - `bills.send_on` (string)
    Date the bill payment should be sent (YYYY-MM-DD)

  - `bills.currency` (string)
    Bill currency
    Enum: "KES", "USD", "UGX"

  - `bills.wallet_currency` (string)
    Wallet currency
    Enum: "KES", "USD", "UGX"

  - `bills.original_currency` (string)
    Original currency
    Enum: "KES", "USD", "UGX"

  - `bills.tags` (array)
    Tag ids attached to the bill

  - `bills.fx_rate` (number)
    FX rate at time of bill creation (original → wallet currency)
    Example: 129.5

