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

# Custom types

## Estrutura base do beneficiário

<Callout icon="megaphone" color="#3370D1">
  Os dados de um membro são semelhantes aos dados de dependentes, pois eles compartilham a mesma estrutura
  base de um beneficiário, apresentada na tabela abaixo.
</Callout>

| Campo                   | Tipo                               | Descrição                                                                                                                                                                                                                                                                      | Obrigatório? |
| ----------------------- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------ |
| `beneficiary-type`      | `enum`                             | O tipo de membro (`primary`, `dependent`).                                                                                                                                                                                                                                     | Sim          |
| `name`                  | `string`                           | O nome completo do membro.                                                                                                                                                                                                                                                     | Sim          |
| `tax-id`                | `string`                           | O CPF do membro (ex.: `12345678900`).                                                                                                                                                                                                                                          | Sim          |
| `mothers-name`          | `string`                           | O nome da mãe do membro.                                                                                                                                                                                                                                                       | Sim          |
| `date-of-birth`         | `string`                           | A data de nascimento do membro, formato `YYYY-MM-DD` (ex.: `1985-05-15`).                                                                                                                                                                                                      | Sim          |
| `gender`                | `enum`                             | Sexo biológico do membro (`male`, `female`). As operadoras só aceitam masculino ou feminino, o que afeta diretamente os tipos de exames e consultas médicas permitidos pelo plano.                                                                                             | Sim          |
| `marital-status`        | `enum`                             | O estado civil do membro (`single`, `married`, `divorced`, `widowed`, `others`).                                                                                                                                                                                               | Sim          |
| `preferred-name`        | `string`                           | O nome social do membro.                                                                                                                                                                                                                                                       | Não          |
| `document-type`         | `enum`                             | O tipo de documento de identidade nacional, *case sensitive*. Ver [National Id Type](/docs/referencia/data-types/enums#national-id-type).                                                                                                                                      | Não          |
| `document-number`       | `string`                           | O número do documento de identidade nacional (ex.: RG para brasileiros, RNM para estrangeiros residentes). Formatos por tipo de documento — RG: `12.345.678-9`; RNM: `A123456-7`; CNH: `12345678901`; Passport: `AB123456`.                                                    | Não          |
| `document-issuer`       | `string`                           | O emissor do documento (ex.: estado/entidade federal, ou órgão como DETRAN).                                                                                                                                                                                                   | Não          |
| `document-issuer-state` | `string`                           | O estado do emissor do documento, código de duas letras (ex.: `SP` para São Paulo, `RJ` para Rio de Janeiro). Valores permitidos: `AC` `AL` `AM` `AP` `BA` `CE` `DF` `ES` `GO` `MA` `MG` `MS` `MT` `PA` `PB` `PE` `PI` `PR` `RJ` `RN` `RO` `RR` `RS` `SC` `SE` `SP` `TO` `EX`. | Não          |
| `document-issue-date`   | `string`                           | A data de emissão do documento, formato `YYYY-MM-DD` (ex.: `2020-05-15`).                                                                                                                                                                                                      | Não          |
| `email-private`         | `string`                           | O email pessoal do membro (ex.: `user@example.com`).                                                                                                                                                                                                                           | Não          |
| `phone`                 | `string`                           | O telefone do membro. Celular é preferível. Ao menos DDD + número (ex.: `11912345678`).                                                                                                                                                                                        | Não          |
| `weight`                | `integer`                          | O peso do membro, em quilogramas × 100 (70,45 kg = `7045`). Ver [Números decimais](/docs/comecar/convencoes#n%C3%BAmeros-decimais).                                                                                                                                            | Não          |
| `height`                | `integer`                          | A altura do membro, em centímetros × 100 (1,75 m = `17500`). Ver [Números decimais](/docs/comecar/convencoes#n%C3%BAmeros-decimais).                                                                                                                                           | Não          |
| `handicapped`           | `enum`                             | Indica se o membro é pessoa com deficiência (`yes`, `no`). Se `yes`, pode ter considerações especiais na inscrição.                                                                                                                                                            | Não          |
| `documents`             | `array` de [`Document`](#document) | Lista de Documentos.                                                                                                                                                                                                                                                           | Não          |

## Document

| Campo           | Tipo     | Descrição                                                                                                  | Obrigatório? |
| --------------- | -------- | ---------------------------------------------------------------------------------------------------------- | ------------ |
| `document-id`   | `string` | O ID do documento, fornecido pela URL de upload de documentos (`POST /v1/enrollment/document-upload-url`). | Sim          |
| `document-type` | `enum`   | O tipo do documento. Ver [Document Types](/docs/referencia/data-types/enums#document-types).               | Sim          |

## Member

<Callout icon="megaphone" color="#3370D1">
  Herda os campos da [Estrutura base do beneficiário](#estrutura-base-do-beneficiário) e complementa com os
  campos abaixo.
</Callout>

| Campo                  | Tipo                  | Descrição                                                                                                                                                                                                                                                          | Obrigatório? |
| ---------------------- | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------ |
| `products`             | [`Product`](#product) | Mapa de tipos de produtos e suas configurações.                                                                                                                                                                                                                    | Sim          |
| `admission-date`       | `string`              | A data de admissão do membro na empresa, formato `YYYY-MM-DD` (ex.: `2020-05-15`).                                                                                                                                                                                 | Não          |
| `work-contract-type`   | `enum`                | O tipo de contrato de trabalho do membro. Ver [Work Contract Types](/docs/referencia/data-types/enums#work-contract-types).                                                                                                                                        | Não          |
| `job-title`            | `string`              | O cargo do membro na empresa.                                                                                                                                                                                                                                      | Não          |
| `employee-id`          | `string`              | A matrícula do funcionário na empresa.                                                                                                                                                                                                                             | Não          |
| `cost-center`          | `string`              | O centro de custo do membro na empresa.                                                                                                                                                                                                                            | Não          |
| `salary`               | `integer`             | A renda do membro, em centavos (R\$ 1.234,56 = `123456`).                                                                                                                                                                                                          | Não          |
| `email-corporate`      | `string`              | O email corporativo do membro (ex.: `user@company.com`).                                                                                                                                                                                                           | Não          |
| `address-postal-code`  | `string`              | O código postal (CEP) do endereço do membro.                                                                                                                                                                                                                       | Não          |
| `address-street`       | `string`              | O logradouro (nome da rua) do endereço.                                                                                                                                                                                                                            | Não          |
| `address-number`       | `string`              | O número ou identificador da casa/prédio.                                                                                                                                                                                                                          | Não          |
| `address-complement`   | `string`              | O complemento do endereço (apartamento, bloco, torre, etc.).                                                                                                                                                                                                       | Não          |
| `address-neighborhood` | `string`              | O bairro ou distrito do endereço.                                                                                                                                                                                                                                  | Não          |
| `address-city`         | `string`              | A cidade do endereço.                                                                                                                                                                                                                                              | Não          |
| `address-state`        | `string`              | O estado do endereço, código de duas letras (ex.: `SP` para São Paulo, `RJ` para Rio de Janeiro). Valores permitidos: `AC` `AL` `AM` `AP` `BA` `CE` `DF` `ES` `GO` `MA` `MG` `MS` `MT` `PA` `PB` `PE` `PI` `PR` `RJ` `RN` `RO` `RR` `RS` `SC` `SE` `SP` `TO` `EX`. | Não          |
| `bank-number`          | `string`              | Código do banco (código de 3 dígitos do BACEN).                                                                                                                                                                                                                    | Não          |
| `bank-branch-number`   | `string`              | Número da agência (4 a 5 dígitos do BACEN, SEM traços nem dígito verificador).                                                                                                                                                                                     | Não          |
| `bank-account-number`  | `string`              | Número da conta (6 a 10 dígitos do BACEN, INCLUINDO o dígito verificador).                                                                                                                                                                                         | Não          |

## Product

| Campo          | Tipo     | Descrição                                                                                                                                                                                                                                     | Obrigatório?                      |
| -------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------- |
| `name`         | `string` | O nome do benefício.                                                                                                                                                                                                                          | Pelo menos `name` ou `product-id` |
| `product-id`   | `UUID`   | O ID do benefício (ex.: `50d9576b-9e72-49da-b2b6-a8de0ab03eaa`).                                                                                                                                                                              | Pelo menos `name` ou `product-id` |
| `start-option` | `enum`   | A opção de início do benefício (`on-inclusion-date`, `on-admission-date`, `on-next-billing-period`, `on-current-billing-period`).                                                                                                             | Sim                               |
| `portability`  | `enum`   | Indica se o benefício deve ser incluído seguindo o processo de portabilidade de um benefício existente — transferido para outro provedor sem perder benefícios ou incorrer em carência. Válido apenas para produtos seguráveis (`yes`, `no`). | Não                               |

## Dependent

<Callout icon="megaphone" color="#3370D1">
  Herda os campos da [Estrutura base do beneficiário](#estrutura-base-do-beneficiário) e complementa com os
  campos abaixo.
</Callout>

| Campo                               | Tipo     | Descrição                                                                                                                                            | Obrigatório? |
| ----------------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ |
| `primary-tax-id`                    | `string` | O CPF do membro titular. Usado para vincular o dependente ao seu titular (ex.: `12345678900`).                                                       | Sim          |
| `dependent-relationship-type`       | `enum`   | O tipo de relacionamento entre o dependente e o titular. Ver [Relationship Types](/docs/referencia/data-types/enums#relationship-types-dependentes). | Sim          |
| `dependent-relationship-start-date` | `string` | A data em que o relacionamento entre o dependente e o titular começou, formato `YYYY-MM-DD` (ex.: `2020-05-15`).                                     | Sim          |

## Member Benefits

| Campo                               | Tipo                                 | Descrição                                                                                                                                            | Obrigatório?                              |
| ----------------------------------- | ------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------- |
| `beneficiary-type`                  | `enum`                               | O tipo de beneficiário (`primary`, `dependent`).                                                                                                     | Sim                                       |
| `products`                          | [`Product`](#product)                | Mapa de tipos de produtos e suas configurações.                                                                                                      | Sim                                       |
| `dependents`                        | `array` de [`Dependent`](#dependent) | Lista de dependentes para incluir no benefício.                                                                                                      | Não                                       |
| `primary-tax-id`                    | `string`                             | O CPF do membro titular. Usado para vincular o dependente ao seu titular (ex.: `12345678900`).                                                       | Não (obrigatório apenas para DEPENDENTES) |
| `dependent-relationship-type`       | `enum`                               | O tipo de relacionamento entre o dependente e o titular. Ver [Relationship Types](/docs/referencia/data-types/enums#relationship-types-dependentes). | Não (obrigatório apenas para DEPENDENTES) |
| `dependent-relationship-start-date` | `string`                             | A data em que o relacionamento entre o dependente e o titular começou, formato `YYYY-MM-DD` (ex.: `2020-05-15`).                                     | Não (obrigatório apenas para DEPENDENTES) |
| `documents`                         | `array` de [`Document`](#document)   | Lista de Documentos.                                                                                                                                 | Não                                       |

## Exclusion Details

| Campo                      | Tipo                               | Descrição                                                                                                                  | Obrigatório? |
| -------------------------- | ---------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | ------------ |
| `end-date`                 | `string`                           | A data de término do benefício, formato `YYYY-MM-DD` (ex.: `2020-05-15`).                                                  | Sim          |
| `exclusion-reason`         | `enum`                             | O motivo da exclusão do membro do benefício. Ver [Exclusion Reasons](/docs/referencia/data-types/enums#exclusion-reasons). | Sim          |
| `extension-plan`           | `boolean`                          | Indica se o membro contribuiu com os custos do benefício e solicitou plano de extensão (`true`, `false`).                  | Sim          |
| `exclusion-reason-details` | `string`                           | Detalhes adicionais sobre o motivo da exclusão. Obrigatório apenas se `exclusion-reason` for `other`.                      | Não          |
| `documents`                | `array` de [`Document`](#document) | Lista de Documentos.                                                                                                       | Não          |
