Pular para o conteúdo principal

kobana billing plan-changes

Comandos de kobana billing plan-changes. Toda opção global (Opções globais) vale aqui.

ComandoHTTPDescrição
plan-changes configGET /v1/plan_changes/configObter configuração de mudança de plano
plan-changes config updatePATCH /v1/plan_changes/configAtualizar configuração de mudança de plano
plan-changes rules listGET /v1/plan_changes/rulesListar regras de mudança de plano
plan-changes rules createPOST /v1/plan_changes/rulesCriar regra de mudança de plano
plan-changes rules getGET /v1/plan_changes/rules/{id}Obter regra de mudança de plano
plan-changes rules updatePATCH /v1/plan_changes/rules/{id}Atualizar regra de mudança de plano
plan-changes rules deleteDELETE /v1/plan_changes/rules/{id}Excluir regra de mudança de plano
plan-changes statsGET /v1/plan_changes/statsEstatísticas de mudanças de plano
plan-changes listGET /v1/plan_changesListar mudanças de plano
plan-changes createPOST /v1/plan_changesExecutar mudança de plano
plan-changes getGET /v1/plan_changes/{id}Obter mudança de plano

plan-changes config​

Obter configuração de mudança de plano

kobana billing plan-changes config [OPÇÕES] [COMANDO]

GET /v1/plan_changes/config

Retorna a configuração padrão da organização para upgrades e downgrades — comportamento de proração, timing e geração de crédito/refund.

Respostas

HTTPDescrição
200Configuração atual.
404Recurso não encontrado na organização atual.

plan-changes config update​

Atualizar configuração de mudança de plano

kobana billing plan-changes config update [OPÇÕES]

PATCH /v1/plan_changes/config

Atualiza parcialmente (PATCH) a configuração de mudança de plano da organização. Todos os campos são opcionais.

Corpo da requisição

NomeTipoObrigatórioDescrição
allow_upgradebooleannãoHabilita upgrades de plano para a organização.
allow_downgradebooleannãoHabilita downgrades de plano para a organização.
upgrade_prorationstringnãoMétodo de proração padrão para upgrades: full_proration, no_proration ou partial_proration. Valores: full_proration, no_proration, partial_proration.
downgrade_prorationstringnãoMétodo de proração padrão para downgrades. Valores: full_proration, no_proration, partial_proration.
upgrade_timingstringnãoQuando aplicar upgrades: immediate ou end_of_period. Valores: immediate, end_of_period.
downgrade_timingstringnãoQuando aplicar downgrades: immediate ou end_of_period. Valores: immediate, end_of_period.
refund_on_downgradebooleannãoEstorna a diferença ao fazer downgrade.
credit_on_downgradebooleannãoGera crédito (em vez de estorno) ao fazer downgrade.
apply_discount_on_changebooleannãoMantém descontos ativos ao mudar de plano.

Outros campos e objetos aninhados: kobana schema billing.plan-changes.config.update.

Respostas

HTTPDescrição
200Configuração atualizada.
400Corpo da requisição falhou na validação.
404Recurso não encontrado na organização atual.
422Corpo da requisição falhou na validação.

plan-changes rules list​

Listar regras de mudança de plano

kobana billing plan-changes rules list [OPÇÕES]

GET /v1/plan_changes/rules

Lista as regras customizadas que sobrescrevem o comportamento padrão para transições específicas entre planos.

Respostas

HTTPDescrição
200Lista de regras de mudança de plano.
404Recurso não encontrado na organização atual.

plan-changes rules create​

Criar regra de mudança de plano

kobana billing plan-changes rules create [OPÇÕES]

POST /v1/plan_changes/rules

Cria uma nova regra para uma transição entre planos. Permite bloquear/permitir a transição, definir timing, proração, descontos e dias bônus.

Corpo da requisição

NomeTipoObrigatórioDescrição
from_plan_idstring (uuid)nãoUUID do plano de origem. Quando ausente, a regra cobre qualquer plano de origem.
to_plan_idstring (uuid)nãoUUID do plano de destino. Quando ausente, a regra cobre qualquer plano de destino.
change_typestringnãoTipo da mudança: upgrade, downgrade ou lateral. Valores: upgrade, downgrade, lateral.
allowedbooleannãoSe false, bloqueia explicitamente a transição.
timingstringnãoSobrescreve o timing da mudança: immediate ou end_of_period. Valores: immediate, end_of_period.
proration_methodstringnãoSobrescreve o método de proração: full_proration, no_proration ou partial_proration. Valores: full_proration, no_proration, partial_proration.
discount_percentnumbernãoDesconto percentual aplicado quando esta regra é usada (0 a 100).
bonus_daysintegernãoDias bônus adicionados ao período corrente quando esta regra é aplicada.
messagestringnãoMensagem livre exibida no portal/checkout (ex.: motivo do bloqueio).
priorityintegernãoPrioridade para resolução de conflito quando múltiplas regras casam (maior vence).

Outros campos e objetos aninhados: kobana schema billing.plan-changes.rules.create.

Respostas

HTTPDescrição
201Regra criada.
400Corpo da requisição falhou na validação.
404Recurso não encontrado na organização atual.
422Corpo da requisição falhou na validação.

plan-changes rules get​

Obter regra de mudança de plano

kobana billing plan-changes rules get [ID] [OPÇÕES]

GET /v1/plan_changes/rules/{id}

Argumentos do caminho: id

Respostas

HTTPDescrição
200Detalhe da regra.
404Recurso não encontrado na organização atual.

plan-changes rules update​

Atualizar regra de mudança de plano

kobana billing plan-changes rules update [ID] [OPÇÕES]

PATCH /v1/plan_changes/rules/{id}

Argumentos do caminho: id

Corpo da requisição

NomeTipoObrigatórioDescrição
allowedbooleannãoSe false, bloqueia explicitamente a transição.
timingstringnãoSobrescreve o timing da mudança: immediate ou end_of_period. Valores: immediate, end_of_period.
proration_methodstringnãoSobrescreve o método de proração: full_proration, no_proration ou partial_proration. Valores: full_proration, no_proration, partial_proration.
discount_percentnumbernãoDesconto percentual aplicado quando esta regra é usada (0 a 100).
bonus_daysintegernãoDias bônus adicionados ao período corrente quando esta regra é aplicada.
messagestringnãoMensagem livre exibida no portal/checkout (ex.: motivo do bloqueio).
priorityintegernãoPrioridade para resolução de conflito quando múltiplas regras casam (maior vence).
is_activebooleannãoDesativa a regra sem removê-la.

Outros campos e objetos aninhados: kobana schema billing.plan-changes.rules.update.

Respostas

HTTPDescrição
200Regra atualizada.
400Corpo da requisição falhou na validação.
404Recurso não encontrado na organização atual.
422Corpo da requisição falhou na validação.

plan-changes rules delete​

Excluir regra de mudança de plano

kobana billing plan-changes rules delete [ID] [OPÇÕES]

DELETE /v1/plan_changes/rules/{id}

Argumentos do caminho: id

Respostas

HTTPDescrição
200Regra removida.
404Recurso não encontrado na organização atual.

plan-changes stats​

Estatísticas de mudanças de plano

kobana billing plan-changes stats [OPÇÕES]

GET /v1/plan_changes/stats

Retorna agregados de mudanças de plano (totais por tipo, por status, créditos e cobranças de proração) para uma janela em dias.

Parâmetros de consulta

NomeTipoObrigatórioDescrição
daysintegernãoJanela em dias para os agregados (padrão: 30).

Respostas

HTTPDescrição
200Estatísticas agregadas de mudanças de plano.
404Recurso não encontrado na organização atual.

plan-changes list​

Listar mudanças de plano

kobana billing plan-changes list [OPÇÕES]

GET /v1/plan_changes

Retorna o histórico paginado de mudanças de plano (upgrades, downgrades e laterais) da organização atual.

Parâmetros de consulta

NomeTipoObrigatórioDescrição
pageintegernãoPágina (começa em 1). Padrão: 1.
per_pageintegernãoItens por página. Padrão: 20. Máximo: 100.
sort_bystringnãoCampo de ordenação. Padrão depende do recurso.
sort_orderstringnãoDireção da ordenação. Padrão: desc. Valores: asc, desc.
person_idstringnãoFiltra por UUID da pessoa associada.
person_document_numberstringnãoFiltra por CPF/CNPJ da pessoa (exato).
person_name_containsstringnãoFiltra por nome da pessoa (busca parcial, sem distinção de maiúsculas).
subscription_idstringnãoFiltra pelas mudanças de uma assinatura.
billing_account_idstringnãoFiltra pelas mudanças de uma conta de cobrança.
from_plan_idstringnãoFiltra pelo plano de origem (UUID).
to_plan_idstringnãoFiltra pelo plano de destino (UUID).
change_typestringnãoFiltra pelo tipo: upgrade, downgrade ou lateral. Valores: upgrade, downgrade, lateral.
statusstringnãoFiltra pelo status: pending, scheduled, completed, canceled ou failed. Valores: pending, scheduled, completed, canceled, failed.
timingstringnãoFiltra pelo timing: immediate ou end_of_period. Valores: immediate, end_of_period.
proration_methodstringnãoFiltra pelo método de proração (ex.: full_proration, no_proration, partial_proration).
price_difference_minnumber,nullnãoDiferença de preço mínima em R$. Ex.: 10.50.
price_difference_maxnumber,nullnãoDiferença de preço máxima em R$. Ex.: 500.00.
proration_charge_minnumber,nullnãoCobrança de proração mínima em R$.
proration_charge_maxnumber,nullnãoCobrança de proração máxima em R$.
proration_credit_minnumber,nullnãoCrédito de proração mínimo em R$.
proration_credit_maxnumber,nullnãoCrédito de proração máximo em R$.
effective_date_fromstringnãoData de vigência a partir de (inclusive). Formato: YYYY-MM-DD.
effective_date_tostringnãoData de vigência até (inclusive). Formato: YYYY-MM-DD.
scheduled_date_fromstringnãoData agendada a partir de (inclusive). Formato: YYYY-MM-DD.
scheduled_date_tostringnãoData agendada até (inclusive). Formato: YYYY-MM-DD.
completed_afterstringnãoConcluída a partir de (inclusive). Formato: YYYY-MM-DD.
completed_beforestringnãoConcluída até (inclusive). Formato: YYYY-MM-DD.
created_afterstringnãoData de criação inicial do intervalo (YYYY-MM-DD).
created_beforestringnãoData de criação final do intervalo (YYYY-MM-DD).

Respostas

HTTPDescrição
200Lista paginada de mudanças de plano.
404Recurso não encontrado na organização atual.

plan-changes create​

Executar mudança de plano

kobana billing plan-changes create [OPÇÕES]

POST /v1/plan_changes

Executa uma mudança de plano para uma assinatura existente. O timing controla se a mudança é aplicada imediatamente (com proração) ou no fim do período atual. Quando bem-sucedido, retorna os UUIDs do plan_change, da fatura de proração (se houver) e do crédito gerado (se houver).

Corpo da requisição

NomeTipoObrigatórioDescrição
subscription_idstring (uuid)simUUID da assinatura que terá o plano alterado.
to_plan_idstring (uuid)simUUID do plano de destino.
timingstringnãoQuando aplicar a mudança: immediate (padrão para upgrades) ou end_of_period (padrão para downgrades). Valores: immediate, end_of_period.
reasonstringnãoMotivo da mudança (registrado no audit log).

Outros campos e objetos aninhados: kobana schema billing.plan-changes.create.

Respostas

HTTPDescrição
201Mudança de plano executada.
400Corpo da requisição falhou na validação.
404Recurso não encontrado na organização atual.
422Corpo da requisição falhou na validação.

plan-changes get​

Obter mudança de plano

kobana billing plan-changes get [ID] [OPÇÕES]

GET /v1/plan_changes/{id}

Argumentos do caminho: id

Respostas

HTTPDescrição
200Detalhe da mudança de plano.
404Recurso não encontrado na organização atual.