# Brink mapping for `curated.pos_jobs`

## Main staging sources used today

- `staging.brink_settings2_jobs`

## Mapping groups

- Business property mappings describe how Brink job content is mapped into curated business fields.
- Technical and ETL property mappings describe lineage, source reconciliation, tenant scoping, and ingestion metadata.

## Business property mappings

| Curated Column | Brink Staging Table | Brink Property Path | Current mapping | Status | Notes |
|---|---|---|---|---|---|
| `job_id` | `staging.brink_settings2_jobs` | `job_id` | `job.job_id` | `Mapped` | Direct Brink job ID. |
| `name` | `staging.brink_settings2_jobs` | `name` | `job.name` | `Mapped` | Direct job name. |
| `job_unique_id` | `staging.brink_settings2_jobs` | `job_unique_id` | `job.job_unique_id` | `Mapped` | Direct unique identifier. |
| `export_code` | `staging.brink_settings2_jobs` | `export_code` | `job.export_code` | `Mapped` | Direct export code. |
| `is_bartender` | `staging.brink_settings2_jobs` | `is_bartender` | `job.is_bartender` | `Mapped` | Direct bartender flag. |
| `is_delivery_driver` | `staging.brink_settings2_jobs` | `is_delivery_driver` | `job.is_delivery_driver` | `Mapped` | Direct delivery driver flag. |
| `is_delivery_dispatcher` | `staging.brink_settings2_jobs` | `is_delivery_dispatcher` | `job.is_delivery_dispatcher` | `Mapped` | Direct delivery dispatcher flag. |
| `is_hostess` | `staging.brink_settings2_jobs` | `is_hostess` | `job.is_hostess` | `Mapped` | Direct hostess flag. |
| `training` | `staging.brink_settings2_jobs` | `training` | `job.training` | `Mapped` | Direct training flag. |
| `location_type` | `staging.brink_settings2_jobs` | `location_type` | `job.location_type` | `Mapped` | Direct location type. |
| `snapshot_date` | `staging.brink_settings2_jobs` | `snapshot_date` | `CAST(job.snapshot_date AS DATE)` | `Mapped` | Cast to DATE. |
| `is_active` | `N/A` | `N/A` | `NULL` | `Not mapped` | Deferred; Brink does not expose a clear active/inactive flag for jobs. |
| `currency_code` | `N/A` | `N/A` | `NULL` | `Not mapped` | No canonical currency source in Brink job payload. |

## Technical and ETL property mappings

| Curated Column | Brink Staging Table | Brink Property Path | Current mapping | Status | Notes |
|---|---|---|---|---|---|
| `source_system` | `N/A` | `N/A` | constant `'brink_pos'` | `Derived constant` | Warehouse constant. |
| `source_job_id` | `staging.brink_settings2_jobs` | `job_id` | `CAST(job.job_id AS VARCHAR(199))` | `Mapped` | Brink job ID cast to string for reconciliation. |
| `job_key` | `N/A` | `N/A` | `NULL` | `Not mapped` | Warehouse-generated key, not assigned by current insert. |
| `tenant_key` | `N/A` | `N/A` | `NULL` | `Not mapped` | Warehouse-generated tenant key, not assigned by current insert. |
| `tenant_name` | `N/A` | `N/A` | parameter `@tenant_id` | `ETL context` | Populated from ETL context, not from Brink payload. |
| `effective_from_utc` | `N/A` | `N/A` | `NULL` | `Not mapped` | SCD2 column deferred. |
| `effective_to_utc` | `N/A` | `N/A` | `NULL` | `Not mapped` | SCD2 column deferred. |
| `is_current` | `N/A` | `N/A` | `NULL` | `Not mapped` | SCD2 column deferred. |
| `_etl_batch_id` | `staging.brink_settings2_jobs` | `_etl_batch_id` | `job._etl_batch_id` | `Mapped` | ETL metadata propagated from staging. |
| `_etl_source_type` | `staging.brink_settings2_jobs` | `_etl_source_type` | `job._etl_source_type` | `Mapped` | ETL metadata propagated from staging. |
| `_etl_ingested_at` | `staging.brink_settings2_jobs` | `_etl_ingested_at_utc` | `job._etl_ingested_at_utc AS _etl_ingested_at` | `Mapped` | ETL metadata propagated from staging. |
