Propostas

Uma proposta é um documento comercial que formaliza uma oferta de produtos ou serviços para um cliente. No CRM, ela está vinculada a uma negociação e permite que você:

  • Detalhe a solução: Especifique produtos, quantidades, preços e condições
  • Compartilhe via link, email ou PDF
  • Rastreie o progresso: Acompanhe se foi enviada, visualizada ou aceita
  • Automatize processos: Integre com sistemas externos para sincronizar dados

Propostas criam um registro estruturado da negociação, facilitando o acompanhamento comercial e a integração com outros sistemas (ERPs, ferramentas de assinatura digital, etc.).

Seções e properties

Cada item em sections pode incluir o campo properties, que deve ser um objeto. A estrutura depende do type da seção:

typeCampos em properties
htmllayout com padding_top e padding_bottom (inteiros, pixels)
products_listcolumns (array de objetos com entity, field_type, identifier) e, opcionalmente, layout

Exemplo de seção HTML com espaçamento:

{
  "slug": "first-section",
  "type": "html",
  "value": "<p>Proposta comercial</p>",
  "order": 1,
  "properties": {
    "layout": {
      "padding_top": 16,
      "padding_bottom": 8
    }
  }
}

Exemplo de trecho para seção products_list (colunas padrão):

{
  "slug": "second-section",
  "type": "products_list",
  "value": "{{deal_products}}",
  "order": 2,
  "properties": {
    "columns": [
      { "entity": "product", "field_type": "default", "identifier": "name" },
      { "entity": "deal_product", "field_type": "default", "identifier": "total" }
    ],
    "layout": { "padding_top": 0, "padding_bottom": 0 }
  }
}

Na criação (POST /deals/{deal_id}/proposals), envie properties apenas quando precisar customizar layout ou colunas em relação ao modelo; caso contrário, o CRM utiliza os valores do template de proposta.