> For the complete documentation index, see [llms.txt](https://ibjects.gitbook.io/receipt-scan-ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ibjects.gitbook.io/receipt-scan-ai/receipt-scan-ai-documentation.md).

# Receipt Scan AI Documentation

### Quicky Start Guide

Easily scan receipts using Generative AI and extract data in JSON format.

#### 1. Test by Scanning Receipts on the landing page

a. Go to <http://receipt-scan-ai.web.app/#cta>\
b. Upload a receipt image by dropping it in the box that says "Drop Image Here"\
c. Select model and enter its API key (Gemini or OpenAI)\
d. Finally, click submit and you will get the response Output

#### 2. Get API Key for integration in your own website

a. Go to [https://receipt-scan-ai.web.app](https://receipt-scan-ai.web.app/)\
b. Sign up with Google\
c. Navigate to the settings page\
d. Click on **Generate API Key**\
e. After generating API key, click on subscribe button to activate your subscription\
\
New users can avail a first month free trial. \
IMPORTANT: API Requests will fail if user is not subscribed.

### API Integration in Web

URL: <https://extractinvoicedatahttp-loshywauza-uc.a.run.app>

Method: **POST**

**Headers**

```json
{
  "Content-Type": "application/json"
}
```

**Request Body**

```json
{
  "apiKey": "<YOUR_SUBSCRIPTION_API_KEY>",
  "modelKey": "<OPENAI_OR_GEMINI_API_KEY>",
  "model_type": "openai" | "gemini",
  "image": "<BASE64_ENCODED_IMAGE_STRING>"
}
```

#### cURL Command

```powershell
curl -X POST https://extractinvoicedatahttp-loshywauza-uc.a.run.app \
  -H "Content-Type: application/json" \
  -d '{
    "apiKey": "YOUR_USER_API_KEY",
    "modelKey": "YOUR_MODEL_API_KEY",
    "model_type": "openai",
    "image": "BASE64_ENCODED_IMAGE_HERE"
  }'
```

### Responses

**Response for a valid Receipt Image**

Provided Receipt Image:

<figure><img src="/files/VKwDsJwv0bv9rM2KJA3e" alt=""><figcaption></figcaption></figure>

Status: **200**

**Response Body**

```javascript
{"items": [
    "COKE ZERO 6X355ML",
    "LEBANESE MARGOOK",
    "SUNBULAH S POTATO",
    "PEPPERONI BEEF",
    "OREO MLK&CHO 36.8G",
    "ALMARAI BT UNS100G",
    "BARB LOIN CHOPKG",
    "MEHRAN ACHAR G 50G",
    "ALMR SOUR Y FF 1KG",
    "MEHRAN GIN/GAR750G",
    "ALMARAI BUTTER GHE"
    ],
    "invoice_date":"2021-04-26",
    "total_price":194.62,"tax":26.37,
    "isAiImageAReceipt":true
}
```

**Response for a Non-Receipt Image**

Status: **200**

**Response Body**

```json
{
  "items": null,
  "invoice_date": null,
  "total_price": null,
  "tax": null,
  "isAiImageAReceipt": false
}
```

**Response when User is not subscribed or API Key is Invalid**

Status: **400**

**Response Body**

```json
{"error":"Inactive or missing subscription."}
```

**Response when some unexpected error occurs**

Status: **500**

**Response Body**

```json
{"error": "Internal Server Error"}
```
