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

# CustomerAddress

> Endereço vinculado ao customer, com um endereço padrão por perfil

Endereços vinculados ao customer. Um customer pode ter N endereços, com um marcado como padrão.

## Campos

| Campo               | Tipo        | Descrição                                              |
| ------------------- | ----------- | ------------------------------------------------------ |
| `customerAddressId` | `UUID`      | Identificador único                                    |
| `customerId`        | `UUID`      | Referência ao customer                                 |
| `label`             | `String`    | Rótulo do endereço (ex.: "Casa", "Trabalho")           |
| `street`            | `String`    | Logradouro                                             |
| `number`            | `String`    | Número                                                 |
| `complement`        | `String?`   | Complemento                                            |
| `neighborhood`      | `String`    | Bairro                                                 |
| `city`              | `String`    | Cidade                                                 |
| `state`             | `String`    | Estado                                                 |
| `zipCode`           | `String`    | CEP                                                    |
| `country`           | `String`    | País                                                   |
| `lat`               | `Float`     | Latitude                                               |
| `lng`               | `Float`     | Longitude                                              |
| `isDefault`         | `Boolean`   | Indica se é o endereço padrão. Default: `false`        |
| `createdBy`         | `UUID?`     | Usuário que criou o registro, quando aplicável         |
| `createdAt`         | `DateTime`  | Data de criação                                        |
| `updatedBy`         | `UUID?`     | Usuário que fez a última atualização, quando aplicável |
| `updatedAt`         | `DateTime`  | Data da última atualização                             |
| `deletedBy`         | `UUID?`     | Usuário que removeu o registro, quando aplicável       |
| `deletedAt`         | `DateTime?` | Data de remoção lógica                                 |

## Relacionamentos

* Relaciona-se com [Customer](/data-modelling/identity/customer)

## Regras de Negócio

* O par `customerId` + `label` é único.
* O primeiro endereço criado pelo cadastro de customer recebe `isDefault = true`.
* Um customer pode ter múltiplos endereços, mas apenas um endereço padrão.
* Endereços removidos devem ser marcados com `deletedAt`, preservando histórico.

## Example

```json theme={null}
{
  "customerAddressId": "0197a7f6-a0c7-73c4-8452-7c1b3f028893",
  "customerId": "0197a7f6-4d36-7c0a-a7cb-54fcb33a3148",
  "label": "Casa",
  "street": "Rua das Palmeiras",
  "number": "120",
  "complement": "Apto 42",
  "neighborhood": "Vila Mariana",
  "city": "São Paulo",
  "state": "SP",
  "zipCode": "04102000",
  "country": "BR",
  "lat": -23.5893,
  "lng": -46.6344,
  "isDefault": true,
  "createdBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "createdAt": "2026-07-03T12:00:10.000Z",
  "updatedBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "updatedAt": "2026-07-03T12:00:10.000Z",
  "deletedBy": null,
  "deletedAt": null
}
```
