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

# Report Invoice

## What it does

Submits a simplified (B2C) invoice to ZATCA for reporting. Unlike clearance, reporting doesn't happen in real-time before the invoice is issued — the invoice is issued immediately and reported to ZATCA within the compliance window.

<Info>
  This uses the same endpoint as [Clear Invoice](/api-reference/invoices/clear-invoice). The only difference is `invoice_type: "simplified"` instead of `"standard"`.
</Info>

## Authentication

Requires a valid token from [Authenticate](/api-reference/auth/authenticate).

## Path Parameters

| Name        | Type   | Description                                                                |
| ----------- | ------ | -------------------------------------------------------------------------- |
| onboard\_id | string | ID returned from the [Onboard](/api-reference/onboarding/onboard) endpoint |

## Request Body

Same structure as [Clear Invoice](/api-reference/invoices/clear-invoice), with these key differences:

| Field          | Value        | Notes                                             |
| -------------- | ------------ | ------------------------------------------------- |
| invoice\_type  | `simplified` | Marks this as a B2C reported invoice              |
| payment\_means | Optional     | Payment means is optional for simplified invoices |

## Example Request

```bash theme={null}
curl -X POST https://api.einvoice.sa.com:9090/v1/e-invoicing/{onboard_id}/invoices \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "invoice_number": "INV10",
    "invoice_type": "simplified",
    "issue_date": "2026-07-26",
    "actual_delivery_date": "2026-06-15",
    "issue_time": "10:00:00",
    "note": "test invoice",
    "doc_currency_code": "SAR",
    "tax_currency_code": "SAR",
    "customer_info": {
      "vat_number": "300295616200003",
      "tax_type": "VAT",
      "registration_name": "Adnoc Oil and Gas Company",
      "address": {
        "street_name": "King Fahd Road",
        "building_number": "4590",
        "plot_identification": "4590",
        "city_subdivision_name": "Jeddah",
        "city_name": "Jeddah",
        "postal_zone": "11311",
        "country": "SA",
        "country_subentity": ""
      },
      "party_identification": {
        "scheme": "CRN",
        "id": "7051298821"
      }
    },
    "supplier_info": {
      "vat_number": "311262046600003",
      "tax_type": "VAT",
      "registration_name": "Najma Al Hulool",
      "address": {
        "street_name": "Ghirnatah, Riyadh 13241",
        "building_number": "2596",
        "plot_identification": "2596",
        "city_subdivision_name": "Ghirnatah",
        "city_name": "Riyadh",
        "postal_zone": "13241",
        "country": "SA",
        "country_subentity": ""
      },
      "party_identification": {
        "scheme": "CRN",
        "id": "1010171097"
      }
    },
    "payment_means": "cash",
    "payment_means_instruction_note": "will receive in cash",
    "allowance_charge": {
      "charge_indicator": false,
      "reason": "discount",
      "amount": 0,
      "currency": "SAR",
      "tax_category": {
        "id": "S",
        "percent": 15,
        "tax_type": "VAT"
      }
    },
    "tax_total": {
      "currency": "SAR",
      "tax_amount": 3.75,
      "tax_subtotal": {
        "taxable_amount": 25,
        "tax_amount": 3.75,
        "tax_category": {
          "id": "S",
          "percent": 15,
          "tax_type": "VAT"
        }
      }
    },
    "legal_monitory_total": {
      "total_amount": 25,
      "tax_exclusive_amount": 25,
      "tax_inclusive_amount": 28.75,
      "payable_amount": 28.75
    },
    "invoice_lines": [
      {
        "id": "1",
        "unit_code": "EA",
        "quantity": 1,
        "amount": 25,
        "tax_total": {
          "currency": "SAR",
          "tax_amount": 3.75,
          "rounding_amount": 28.75
        },
        "item": {
          "name": "Butter",
          "classified_tax_category": {
            "id": "S",
            "percent": 15,
            "tax_type": "VAT"
          }
        },
        "price": {
          "currency": "SAR",
          "price_per_unit": 25,
          "base_unit_code": "EA",
          "allowance_charge": {
            "charge_indicator": false,
            "reason": "discount",
            "amount": 0,
            "base_amount": 25,
            "currency": "SAR"
          }
        }
      }
    ]
  }'
```

## Example Response

```json theme={null}
{
  "status": "Success",
  "invoice_number": "INV10",
  "invoice": "PD94bWwgdmVyc2lvbj0iMS4wIi...(base64-encoded signed UBL XML, truncated)",
  "id": "8f1e2953-52e2-4704-98ae-a4b6ebc9d1de",
  "qr_code": "AQ9OYWptYSBBbCBIdWxvb2wCDzMxMTI2MjA0NjYwMDAwMw...(truncated)",
  "message": "simplified-invoice INV10 reported successfully",
  "warnings": null,
  "errors": null
}
```

<Info>
  The `invoice` field is the full ZATCA-signed UBL 2.1 invoice, base64-encoded. The `qr_code` field is a base64-encoded ZATCA-compliant QR code.
</Info>

## Response Fields

| Field           | Description                                |
| --------------- | ------------------------------------------ |
| status          | `Success` or `Failure`                     |
| invoice\_number | Echoes back your submitted invoice number  |
| invoice         | Base64-encoded, ZATCA-signed UBL XML       |
| id              | Unique UUID assigned to this invoice       |
| qr\_code        | Base64-encoded QR code data                |
| message         | Human-readable result summary              |
| warnings        | Any non-blocking ZATCA warnings, or `null` |
| errors          | Any blocking errors, or `null`             |

## Errors

| Code | Meaning                                                       |
| ---- | ------------------------------------------------------------- |
| 400  | Invalid or missing required field                             |
| 401  | Missing or invalid auth token                                 |
| 422  | ZATCA rejected the invoice — check `errors` field in response |
