> For the complete documentation index, see [llms.txt](https://ajuda.digitalsac.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ajuda.digitalsac.io/digicrm/configuracao/integracao-comercial/compatibilidade-com-a-integracao-anterior.md).

# Compatibilidade com a integração anterior

Esta versão mantém compatibilidade com implementações construídas a partir da documentação anterior.

### Contrato mínimo que não mudou

Para substituir o Perfex na parte comercial, o sistema próprio continua precisando expor somente estes cinco endpoints:

```http
GET  {CUSTOM_PLANS_ENDPOINT}
GET  {CUSTOM_SERVERS_ENDPOINT}
GET  {CUSTOM_DEFAULT_SERVER_ENDPOINT}
GET  {CUSTOM_DEFAULT_SERVER_ID_ENDPOINT}
POST {CUSTOM_REGISTER_ENDPOINT}
```

Se sua integração anterior já implementa esses endpoints e está funcionando, ela não precisa adotar imediatamente a API de tenants.

### O que foi adicionado

A principal evolução está no contrato de planos:

* `additionalUserPrice`, `additionalChannelPrice`, `additionalSpacePrice`.
* Preço individual dos módulos existentes.
* `activecampaigndigicalls` e `campaignDigicallsPrice`.
* `activeinternalchat` e `internalChatPrice`.

Os campos novos são aditivos, mas devem ser enviados explicitamente. Na sincronização, campos ausentes assumem `0` ou `false` e podem sobrescrever valores locais.

### Correção sobre planId

O frontend pode trabalhar internamente com um objeto de seleção, mas o DigitalSac normaliza o valor antes de chamar o sistema comercial. O endpoint de cadastro recebe `planId` como **string ou número**, nunca como objeto no contrato atual.

### Provisionamento de tenants

A API `POST /api/tenants` e `PUT /api/tenants/{id}` é uma extensão para sistemas que desejam controlar também a criação e os upgrades diretamente no DigitalSac.

Use uma destas estratégias:

1. **Compatibilidade v1:** o endpoint de cadastro executa o processo já adotado pela integração existente.
2. **Provisionamento direto:** após receber o cadastro, o sistema comercial chama a API de tenants do DigitalSac.

Não execute as duas estratégias para a mesma contratação sem idempotência, pois isso pode criar clientes duplicados.

### Migração segura

1. Mantenha os cinco endpoints e formatos atuais.
2. Adicione os novos campos ao endpoint de planos.
3. Teste a sincronização em ambiente de homologação.
4. Confirme preços e flags na tabela local `Plans`.
5. Só então avalie o provisionamento direto de tenants.

{% hint style="success" %}
Uma integração antiga continua válida. A nova documentação amplia o contrato; ela não obriga uma reescrita completa.
{% endhint %}
