---
title: "Add sale with item information"
method: POST
path: "/sales-with-items"
tags: ["Sales"]
---

# Add sale with item information

`POST /sales-with-items`

Add sale with item information

## Request body

- object
  - `sale_date` string, required — The date of sale (YYYY-MM-DD)
  - `customer_tin` string
  - `customer_name` string
  - `customer_id` string
  - `trader_invoice_number` string, required
  - `receipt_type_code` string — This field is deprecated and will be ignored if provided. The receipt type code is populated automatically based on invoice type
  - `payment_type_code` string, required
  - `invoice_status_code` string, required
  - `callback_url` string
  - `invoice_auth` object
    - `type` string, required
    - `issuer` string, required
  - `invoice_details` string
  - `is_tax_exempt` boolean — Indicates if the sale is tax exempt
  - `items` object[], required
    - `item_name` string, required
    - `item_class_code` string, required
    - `item_bar_code` string, required
    - `item_tax_type_code` string, required
    - `quantity` number, required
    - `unit_price` number, required
    - `total_amount` number, required
    - `taxable_amount` number
    - `tax_amount` number
    - `package_unit_quantity` number
    - `discount_rate` number
    - `discount_amount` number
    - `item_description` string
    - `is_stockable` boolean — Indicates if the item is stockable. <br>Stockable items are treated as FINISHED goods, whereas non-stockable items are treated as SERVICES.

## Response `201`

Success

- Sale
  - `id` string, required
  - `date` string, required — The receipt date (DD/MM/YYYY), as printed on the physical receipt
  - `time` string, required
  - `trader_invoice_number` string, required
  - `receipt_type_code` string, required
  - `sale_detail_url` string, url, required
  - `serial_number` string, required
  - `receipt_number` integer, required
  - `invoice_number` integer, required
  - `customer_id` string, required
  - `customer_name` string, required
  - `customer_tin` string, required
  - `customer_phone_number` string
  - `customer_email` string
  - `internal_data` string, required
  - `receipt_signature` string, required
  - `etims_url` string, url, required
  - `original_sale_id` string
  - `offline_url` string, url
  - `status` 'PENDING' | 'FAILED' | 'COMPLETED' — status against KRA
  - `sales_tax_summary` object, required
    - `taxable_amount_a` number, required
    - `taxable_amount_b` number, required
    - `taxable_amount_c` number, required
    - `taxable_amount_d` number, required
    - `taxable_amount_e` number, required
    - `tax_rate_a` integer, required
    - `tax_rate_b` integer, required
    - `tax_rate_c` integer, required
    - `tax_rate_d` integer, required
    - `tax_rate_e` integer, required
    - `catering_levy_rate` integer
    - `service_charge_rate` integer
    - `tax_amount_a` number, required
    - `tax_amount_b` number, required
    - `tax_amount_c` number, required
    - `tax_amount_d` number, required
    - `tax_amount_e` number, required
    - `catering_levy_amount` number
    - `service_charge_amount` number
  - `item_list` SaleItem[]
    - `id` string, required
    - `quantity` number, required
    - `unit_price` number, required
    - `total_amount` number, required
    - `taxable_amount` number, required
    - `tax_amount` number, required
    - `tax_rate` number, required
    - `tax_type_code` string, required
    - `discount_rate` number, required
    - `discount_amount` number, required
    - `etims_item_code` string, required
    - `is_stockable` boolean, required
    - `item_id` string, required

## Other responses

- `default` — Error response

---

[API](https://skmtc.net/digitax/apis/digitax-kenya-api-endpoints.md) · [All operations](https://skmtc.net/digitax/apis/digitax-kenya-api-endpoints/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/digitax/digitax-kenya-api-endpoints/revisions/1fc0cdf61f70/schema)
