> ## 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.

# CooperativePaymentSettings

> Configuração de billing da cooperativa no provider externo

## Campos

| Campo                          | Tipo                               | Descrição                                                        |
| ------------------------------ | ---------------------------------- | ---------------------------------------------------------------- |
| `cooperativePaymentSettingsId` | `UUID`                             | Identificador único                                              |
| `organizationId`               | `UUID`                             | Referência à organização da cooperativa                          |
| `cooperativeId`                | `UUID`                             | Referência à cooperativa dona da configuração                    |
| `externalProvider`             | `String`                           | Identificador lógico do provider usado pela interface de billing |
| `externalAccountId`            | `String`                           | Identificador da conta externa da cooperativa no provider        |
| `externalWalletId`             | `String?`                          | Identificador auxiliar da carteira externa, quando existir       |
| `externalApiKey`               | `String`                           | API key externa armazenada de forma criptografada                |
| `status`                       | `CooperativePaymentSettingsStatus` | Status da configuração de billing                                |
| `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                                                  |

## Relacionamentos

* Relaciona-se com [Organization](/data-modelling/tenant/organization).
* Relaciona-se com [Cooperative](/data-modelling/tenant/cooperative) (1:1).

## Regras de Negócio

* Cada cooperativa possui no máximo uma configuração de billing ativa.
* A configuração pertence sempre a uma Cooperative, porque tickets e Orders são associados à cooperativa operacional.
* `externalAccountId` identifica a conta externa usada pela cooperativa para cobranças, saldo, recebíveis e transferências.
* Compra de créditos corporativos por Company não usa esta configuração como conta recebedora da Company; ela entra no fluxo master/MOB documentado em [CompanyCreditPurchase](/data-modelling/credit-grant/company-credit-purchase).
* `externalApiKey` é criptografado antes de ser persistido e nunca deve ser exibido em respostas públicas.
* `externalWalletId` é uma referência externa auxiliar; não representa regra de split.

## Enums

### CooperativePaymentSettingsStatus

| Valor      | Descrição                                     |
| ---------- | --------------------------------------------- |
| `PENDING`  | Configuração criada, aguardando habilitação   |
| `ACTIVE`   | Configuração ativa para operações financeiras |
| `REJECTED` | Configuração recusada ou não aprovada         |
| `DISABLED` | Configuração desabilitada                     |

## Example

```json theme={null}
{
  "cooperativePaymentSettingsId": "0197a817-1cc7-7d9c-9d74-8149674d0ef2",
  "organizationId": "0197a7f7-7291-7a43-96db-2c8580b80c5d",
  "cooperativeId": "0197a800-24e6-76a2-90ed-ff0f6fba7b0c",
  "externalProvider": "billing_interface",
  "externalAccountId": "acct_2c9f81b0",
  "externalWalletId": "wallet_42d8a19f",
  "externalApiKey": "encrypted_external_api_key",
  "status": "ACTIVE",
  "createdBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "createdAt": "2026-07-03T14:30:00.000Z",
  "updatedBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "updatedAt": "2026-07-03T14:30:00.000Z",
  "deletedBy": null,
  "deletedAt": null
}
```
