# Receipt

Here is a quick demo of Mindee V2's Receipt model:

{% @supademo/embed demoId="cmiytadiq07vk14g4techyr3b" url="<https://app.supademo.com/demo/cmiytadiq07vk14g4techyr3b>" %}

## Why Use Mindee for Receipts?

Receipts vary immensely in format, country, language, and quality. Mindee simplifies extraction and ensures high reliability by enabling you to:

* Handle global formats: Our model is trained on receipts from over 50 countries, automatically extracting data points regardless of local layout or language.
* Process poor quality inputs: Robustly extracts data from scanned documents, mobile photos, and even handwritten text on certain fields.
* Capture detailed line items: Accurately extract complex, nested data like individual line items, quantities, and prices for granular expense tracking.
* Get structured output with zero configuration: Start instantly with a pre-trained model that extracts standard fields like total amount, date, vendor name, and expense category.

## Two Ways to Start Using the Receipt Model

Mindee offers two paths to start extracting data from receipts:

### **1. Choose Receipt from Our Catalog**&#x20;

Select the "Receipt" model from our Document Catalog to begin using the pre-trained model immediately. It comes pre-configured to extract all standard financial and descriptive fields (merchant name, total, date, line items, etc.) with high accuracy.

### **2. Customize the Model via Data Schema**

You can instantly tailor the pre-trained model to your exact needs. By navigating to the Data Schema interface, you can:

* Add new fields that are unique to your documents (e.g., internal identifiers, specific customer IDs).
* Delete existing fields that are not relevant to your use case.
* Refine the extraction by modifying field types or adding custom instructions for the AI assistant.

## Receipt Fields

Documentation for all fields present in the data schema.

Field *accessors* are used as the keys for accessing the values in the returned data. On the data schema interface, this is the "Field Name".

Field *value types* indicate how the value is returned by the API. On the data schema interface, this is the "Field Type".

<details>

<summary>Supplier Name</summary>

The name of the supplier of the receipt.

Accessor: `supplier_name`\
Value Type: `string`

Has a single value.

</details>

<details>

<summary>Supplier Address</summary>

The full address of the supplier who delivered the receipt.

Accessor: `supplier_address`\
Value Type: `string`

Has a single value.

</details>

<details>

<summary>Supplier Phone Number</summary>

The phone number of the supplier of the receipt.

Accessor: `supplier_phone_number`\
Value Type: `string`

Has a single value.

</details>

<details>

<summary>Supplier Company Registration</summary>

A list of company registration details including type and number, for the supplier of the receipt.

Accessor: `supplier_company_registration`

**Subfields**

* **Number**\
  The company registration number.\
  Accessor: `number`\
  Value Type: `string`
* **Type**\
  The type of the company registration number.\
  Accessor: `type`\
  Possible Values: `VAT`, `SIRET`, `SIREN`, `NIF`, `CF`, `UID`, `STNR`, `HRA_HRB`, `TIN`, `RFC`, `BTW`, `ABN`, `UEN`, `CVR`, `ORGNRO`, `INN`, `DPH`, `NIP`, `GSTIN`, `CRN`, `KVK`, `DIC`, `TAX_ID`, `CIF`, `GST_HST_CA`, `COC`

Can have multiple values (is a list/array).

</details>

<details>

<summary>Receipt Number</summary>

The number of the receipt.

Accessor: `receipt_number`\
Value Type: `string`

Has a single value.

</details>

<details>

<summary>Date</summary>

The date the receipt was issued.

Accessor: `date`\
Value Type: `date`

Has a single value.

</details>

<details>

<summary>Time</summary>

The time the receipt was issued.

Accessor: `time`\
Value Type: `string`

Has a single value.

</details>

<details>

<summary>Total Amount</summary>

The final total amount paid, including all taxes and discounts.

Accessor: `total_amount`\
Value Type: `number`

Has a single value.

</details>

<details>

<summary>Total Net</summary>

The total amount before taxes.

Accessor: `total_net`\
Value Type: `number`

Has a single value.

</details>

<details>

<summary>Total Tax</summary>

The total amount of all taxes.

Accessor: `total_tax`\
Value Type: `number`

Has a single value.

</details>

<details>

<summary>Taxes</summary>

A list of individual taxes applied, each including rate, base and amount.

Accessor: `taxes`

**Subfields**

* **Rate**\
  The tax rate of this tax as a decimal.\
  Accessor: `rate`\
  Value Type: `number`
* **Base**\
  The base amount on which this tax is computed.\
  Accessor: `base`\
  Value Type: `number`
* **Amount**\
  The computed tax amount for this tax.\
  Accessor: `amount`\
  Value Type: `number`

Can have multiple values (is a list/array).

</details>

<details>

<summary>Tips &#x26; Gratuity</summary>

The total tips and gratuities for the receipt.

Accessor: `tips_gratuity`\
Value Type: `number`

Has a single value.

</details>

<details>

<summary>Line Items</summary>

A list of line items in the receipt, each including description, quantity, unit price and total price.

Accessor: `line_items`

**Subfields**

* **Description**\
  A description of the item or service.\
  Accessor: `description`\
  Value Type: `string`
* **Quantity**\
  The quantity of the item or service.\
  Accessor: `quantity`\
  Value Type: `number`
* **Unit Price**\
  The price per unit of the item or service.\
  Accessor: `unit_price`\
  Value Type: `number`
* **Total Price**\
  The total price for the line item: quantity \* unit price.\
  Accessor: `total_price`\
  Value Type: `number`

Can have multiple values (is a list/array).

</details>

<details>

<summary>Document Type</summary>

Document type: expense receipt or credit card receipt

Accessor: `document_type`\
Possible Values: `expense_receipt`, `credit_card_receipt`

Has a single value.

</details>

<details>

<summary>Purchase Category</summary>

The category of the receipt.

Accessor: `purchase_category`\
Possible Values: `food`, `gasoline`, `parking`, `toll`, `accommodation`, `transport`, `telecom`, `software`, `shopping`, `energy`, `miscellaneous`

Has a single value.

</details>

<details>

<summary>Purchase Subcategory</summary>

The purchase subcategory of the receipt.

Accessor: `purchase_subcategory`\
Possible Values: `restaurant`, `delivery`, `train`, `public`, `taxi`, `car_rental`, `plane`, `micromobility`, `office_supplies`, `electronics`, `cultural`, `groceries`, `other`

Has a single value.

</details>

<details>

<summary>Locale</summary>

The locale contains the language, country and currency of the receipt.

Accessor: `locale`

**Subfields**

* **Language**\
  The language of the receipt, ISO 639-1 language code.\
  Accessor: `language`\
  Value Type: `string`
* **Country**\
  The country of the receipt, ISO 3166-1 alpha-2.\
  Accessor: `country`\
  Value Type: `string`
* **Currency**\
  The currency in which is issued the receipt, ISO 4217.\
  Accessor: `currency`\
  Value Type: `string`

Has a single value.

</details>
