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

# WHISE import

> Fields added by ots_whise_odoo_migration on real_estate.real_estate

Requires module **`ots_whise_odoo_migration`**. These fields are **readonly** in the UI; they are written by the CSV importer.

There is no generic `whise_id`. Use `whise_estate_id` on the property, `whise_picture_id` on photos, and `whise_document_id` on attachments.

How batches and CSV columns map: [WHISE import guide](/docs/guides/whise-import).

## Property fields

Model: `real_estate.real_estate`

| Technical name | Label | Type | API value | Notes |
| - | - | - | - | - |
| `whise_estate_id` | WHISE Estate ID | `Char` | string or false | Unique; from CSV `EstateId`. Filter imported listings with `[["whise_estate_id", "!=", False]]` |
| `whise_reference_number` | WHISE referentie | `Char` | string or false | From `ReferenceNumber` |
| `whise_office_name` | WHISE kantoor | `Char` | string or false | From `OfficeId` (stored as name/id string from CSV) |
| `whise_source_status` | WHISE status | `Char` | string or false | From `StatusId` (e.g. actief). Also drives `active` |
| `whise_source_create_date` | WHISE aanmaakdatum | `Datetime` | datetime (UTC) or false | From `CreateDate` |
| `whise_source_update_date` | WHISE wijzigingsdatum | `Datetime` | datetime (UTC) or false | From `UpdateDate` |
| `whise_import_date` | Laatste WHISE import | `Datetime` | datetime (UTC) or false | Set on each successful estate write |
| `whise_import_batch_id` | WHISE importbatch | `Many2one` | `[id, name]` or false | → `ots.whise.import.batch` |
| `whise_import_state` | WHISE importstatus | `Selection` | key or false | keys: `done`, `partial`, `error` (importer currently writes `done`) |
| `whise_last_error` | WHISE importfout | `Text` | string or false | Cleared on success |
| `whise_address_key` | Genormaliseerd adres | `Char` | string | Computed, stored. `street\|number\|box\|zip\|city` (normalized). Used to link an existing Odoo listing instead of creating a duplicate |

## Photo & document identifiers

| Model | Technical name | Type | Notes |
| - | - | - | - |
| `real_estate.image` | `whise_picture_id` | `Char` | Unique. Public WHISE photos |
| `ir.attachment` | `whise_picture_id` | `Char` | Unique. Private WHISE photos (not in `image_ids`) |
| `ir.attachment` | `whise_document_id` | `Char` | Unique. WHISE documents |

Public gallery images also have `image.mixin` sizes: `image_1920`, `image_1024`, `image_512`, `image_256`, `image_128`. `sequence` is `Order * 10` from `pictures.csv`; lowest sequence becomes [`main_picture`](/docs/api-reference/fields-media-website).

## Selection values

### `whise_import_state`

| Key | Label |
| - | - |
| `done` | Geïmporteerd |
| `partial` | Gedeeltelijk |
| `error` | Fout |

## Find imported records

```python theme={null}
# All WHISE-imported properties
[["whise_estate_id", "!=", False]]

# One WHISE estate
[["whise_estate_id", "=", "12345"]]

# Everything from one import batch
[["whise_import_batch_id", "=", 7]]

# Public photos of a WHISE estate
# model: real_estate.image
[["whise_picture_id", "!=", False], ["real_estate_id.whise_estate_id", "=", "12345"]]
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.