Cancelamento de contrato

De RBX ISP - Manual do Usuário

O objetivo deste serviço é realizar o cancelamento de um contrato. Abaixo, segue exemplo do json de envio:

{
  "contract_cancel":
  {
    "customer_id": 4777,
    "contract_id": 788570,
    "reason_id": 1,
    "cancel_competition_id": 1,
    "billing":
    {
      "future_cancel": true,
      "cancellation_period_action": "block",
      "reason_id": 3
    },
    "pre_billing":
    {
      "cancel": true,
      "cancellation_period_action": "cancel"
    },
    "fine":
    {
      "account_id": 3,
      "historic_id": 1
    },
    "os":
    {
        "open": 3,
        "target_type": 1,
        "target_id": 1
    }
  }
}

Detalhamento dos campos

ID Campo Obrigatório Pai Tipo Observações
A01 contract_cancel Sim Raiz -  
A02 customer_id Sim A01 Número

Código do cliente. Aceita valores inteiros positivos e maiores que zero.

A03 contract_id Sim A01 Número

Número do contrato que será cancelado. Aceita valores inteiros positivos e maiores que zero. Para que um contrato possa ser cancelado ele deve estar em uma das situações a seguir:

  • Aguardando Instalação
  • Em Instalação
  • Ativo
  • Bloqueado
  • Suspenso
A04 reason_id Sim A01 Número

Código do motivo de cancelamento. Aceita valores inteiros positivos e maiores que zero.

A05 cancel_competition_id Não A01 Número

Código da concorrência de cancelamento. Aceita valores inteiros positivos e maiores que zero.

A06 billing Sim A01 -

Grupo de informações para estorno de faturamento

B01 future_cancel Sim A06 Booleano

Informa se os faturamentos futuros deverão ser cancelados.

  • true: estorna os faturamentos futuros
  • false: não estorna os faturamentos futuros
B02 cancellation_period_action Sim A06 Texto

Define qual ação deverá ser realizada para o faturamento referente ao período de cancelamento:

  • none: nenhuma ação
  • cancel: estornar o documento
  • block: não gerar residual 
B03 reason_id Sim A06 Número

Código do motivo de estorno dos documentos financeiros. Aceita valores inteiros positivos e maiores que zero.

A07 pre_billing Sim A01 -

Grupo de informações para estorno de pré-faturamentos

C01 cancel Sim A07 Booleano

Informa se os pré-faturamentos deverão ser excluídos.

  • true: estorna os pré-faturamentos
  • false: não estorna os pré-faturamentos
C02 cancellation_period_action Sim A07 Texto

Informa se os pré-faturamentos referentes ao período de cancelamento deverão ser excluídos. Valores permitidos:

  • cancel: estorna os pré-faturamentos
  • none: não estorna os pré-faturamentos
A08 fine Sim A01 -

Grupo de informações para geração de multa de cancelamento

D01 account_id Sim A08 Número

Número da conta corrente para geração do boleto de multa contratual. Aceita valores inteiros positivos e maiores que zero. Deve ser uma conta:

  • De natureza Recebimento.
  • Que aceita Faturamentos.
D02 historic_id Sim A08 Número

Número do histórico para geração do boleto de multa contratual. Aceita valores inteiros positivos e maiores que zero. Deve ser um histórico:

  • De operação Crédito.
  • Do tipo Prazo.
A09 os Não A01 -

Grupo de informações para abertura de atendimento de retirada de equipamentos. Este grupo só é obrigatório se não houver locação transitória cadastrada no sistema.

E1 open Sim A09 Booleano

Informa se deverá ser aberto atendimento para retirada de equipamento:

  • true: abrir OS
  • false: não abrir OS
E2 target_type Sim* A09 Texto

Informe o tipo do alvo para abertura do atendimento. Este campo é obrigatório se no campo A09 foi informado o valor true. Valores permitidos:

  • topic: abrir atendimento em um tópico
  • workflow: abrir atendimento em um fluxo
E3 target_id Sim* A09 Número

Informa o código do alvo - tópico ou fluxo, conforme parametrizado no campo A09 - a ser utilizado para abertura do atendimento. Este campo é obrigatório se no campo A09 foi informado o valor true.

 

Mensagem de retorno

Em caso de sucesso, será retornado um json conforme o exemplo abaixo:

{
  "status": 1,
  "error_code": 0,
  "error_description": "",
  "result": "Successfully cancelled contract"
}

Em caso de falha, será retornado um json conforme o exemplo abaixo:

{
  "status": 0,
  "error_code": 19,
  "error_description": "Unknown error!",
  "result": ""
}