# Brink mapping for `curated.customers`

## Main staging sources

- `staging.brink_sales2_orders`

## Mapping groups

- Business property mappings describe how Brink customer content is mapped or could be 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 |
|---|---|---|---|---|---|
| `guid` | `staging.brink_sales2_orders` | `customer_id` | `NULL` | `Not mapped` | Brink exposes a transactional customer GUID on orders, not a customer master row. |
| `external_id` | `staging.brink_sales2_orders` | `customer_id` | `NULL` | `Not mapped` | Same source as `customer_id`; there is no separate external customer ID in the documented Brink staging model. |
| `name` | `N/A` | `N/A` | `NULL` | `Not mapped` | No customer-name field is documented in Brink staging. |
| `phone` | `N/A` | `N/A` | `NULL` | `Not mapped` | No customer phone field is documented in Brink staging. |
| `phone2` | `N/A` | `N/A` | `NULL` | `Not mapped` | No customer secondary phone field is documented in Brink staging. |
| `address` | `N/A` | `N/A` | `NULL` | `Not mapped` | No customer address field is documented in Brink staging. |
| `city` | `N/A` | `N/A` | `NULL` | `Not mapped` | No customer city field is documented in Brink staging. |
| `state` | N/A | N/A | `NULL` | `Not mapped` | No customer state field is documented in Brink staging. |
| `zip` | N/A | N/A | `NULL` | `Not mapped` | No customer ZIP field is documented in Brink staging. |
| `country` | N/A | N/A | `NULL` | `Not mapped` | No customer country field is documented in Brink staging. |
| `email` | N/A | N/A | `NULL` | `Not mapped` | No customer email field is documented in Brink staging. |
| `store_guid` | N/A | N/A | `NULL` | `Not mapped` | The documented Brink staging model does not expose a store GUID on customer data. |
| `create_time` | N/A | N/A | `NULL` | `Not mapped` | No customer-create timestamp is documented in Brink staging. |
| `is_deleted` | N/A | N/A | `NULL` | `Not mapped` | No customer soft-delete flag is documented in Brink staging. |
| `customer_status` | `N/A` | `N/A` | `NULL` | `Not mapped` | No customer lifecycle status is documented in Brink staging. |
| `home_store_name` | `N/A` | `N/A` | `NULL` | `Not mapped` | No customer home-store field is documented in Brink staging. |
| `created_at_utc` | `N/A` | `N/A` | `NULL` | `Not mapped` | No customer-create timestamp is documented in Brink staging. |
| `updated_at_utc` | `N/A` | `N/A` | `NULL` | `Not mapped` | No customer-update timestamp is documented in Brink staging. |

## Technical and ETL property mappings

| Curated Column | Brink Staging Table | Brink Property Path | Current mapping | Status | Notes |
|---|---|---|---|---|---|
| `customer_key` | N/A | N/A | `NULL` | `Not mapped` | Warehouse-generated key. |
| `source_system` | N/A | N/A | `constant 'brink_pos'` | `Derived constant` | Warehouse constant, not a Brink API field. |
| `source_customer_id` | `staging.brink_sales2_orders` | `customer_id` | `NULL` | `Not mapped` | Best available source identifier. |
| `tenant_key` | `N/A` | `N/A` | `NULL` | `Not mapped` | Warehouse-generated tenant key. |
| `tenant_name` | `N/A` | `N/A` | `parameter @tenant_id` | `ETL context` | Tenant metadata is outside the documented Brink staging payloads. |
| `is_current` | `N/A` | `N/A` | `NULL` | `Not mapped` | Warehouse SCD field. |
| `effective_from_utc` | `N/A` | `N/A` | `NULL` | `Not mapped` | Warehouse SCD field. |
| `effective_to_utc` | `N/A` | `N/A` | `NULL` | `Not mapped` | Warehouse SCD field. |
| `_etl_batch_id` | staging.brink_sales2_orders | _etl_batch_id | `_etl_batch_id` | `Mapped` | ETL metadata propagated from staging. |
| `_etl_source_type` | staging.brink_sales2_orders | _etl_source_type | `_etl_source_type` | `Mapped` | ETL metadata propagated from staging. |
| `_etl_ingested_at` | staging.brink_sales2_orders | _etl_ingested_at_utc | `_etl_ingested_at_utc AS _etl_ingested_at` | `Mapped` | ETL metadata propagated from staging. |

## Portal and sample validation

No additional customer master source was confirmed in the Brink portal WSDLs or in the available `temp` responses.
