Pular para o conteúdo principal
Este guia cria um plano de tarifas com uma tarifa de transação e uma tarifa de serviço e o usa em uma conta. Planos de tarifas traz as regras que os passos seguem.

Antes de começar


Você precisa de:
  • Um ledger e uma conta para o cliente final, aqui com o alias @customer_001.
  • Uma conta que recebe as tarifas, aqui com o alias @fee_revenue.
  • As permissões account-plans e fee-charges no Midaz. Veja Permissões.
Os exemplos usam um ledger sem validação de rotas, em que uma tarifa de transação seleciona transações pelo scheme. Em um ledger com validação de rotas, dê também um bloco accounting a cada tarifa. Veja Rotas contábeis. Os exemplos usam estas variáveis de shell. Todo UUID é um valor de exemplo. Use os valores do seu próprio ambiente.
1

Crie o plano de tarifas

Envie o plano para Criar um plano de tarifas. A tarifa tedSent cobra 7.90 por cada TED que a conta envia, depois de 2 TEDs gratuitas no mês. A tarifa paperStatement cobra 3 por cada extrato em papel, depois de 1 extrato gratuito no mês.
O Midaz responde 201 com o plano e a versão 1 dele. Ele preenche os valores padrão de referenceAmount e period:
Guarde o id do plano:
2

Atribua o plano à conta

Envie o plano para Atribuir um plano de tarifas a uma conta:
O Midaz responde 200 com a atribuição ativa:
A partir de agora, os pacotes de tarifas do ledger não cobram @customer_001 nas transações /v2 que ela envia.
3

Envie uma transação e leia a tarifa dela

Envie uma TED da conta com Criar uma Transação no modelo direto v2. O scheme é TED, então a tarifa tedSent corresponde:
A resposta 201 traz accountPlanFees. A primeira TED do mês usa uma unidade gratuita:
A terceira TED do mês passa da cota gratuita. O item dela traz "outcome": "charged", "unit": 3 e "amount": "7.9". A conta envia 107.9: os 100 da TED e a tarifa, que vai para @fee_revenue.Uma transação com outro scheme, ou sem nenhum, recebe "outcome": "no_match". A conta não paga tarifa nela.Guarde accountPlanFees da resposta de criação. As leituras da transação não o retornam.
4

Leia o uso do mês

Leia as unidades da conta com Consultar o uso do plano de tarifas de uma conta:
Depois de três TEDs, a resposta é:
period.start e period.end são o mês no fuso horário do plano, em UTC.
5

Cobre tarifas de serviço

Cobre dois extratos em papel com Cobrar tarifas de serviço de uma conta. Envie uma chave X-Idempotency e envie a mesma chave quando repetir a mesma cobrança:
O Midaz responde 201. O primeiro extrato usa a unidade gratuita, e o segundo custa 3:
A transação de tarifa debita 3 de @customer_001 e os credita em @fee_revenue. Para desfazer a cobrança no mesmo mês, estorne essa transação.
6

Crie uma nova versão

Aumente as TEDs gratuitas para 5 a partir de novembro. Envie só o campo que muda para Atualizar um plano de tarifas:
O Midaz cria a versão 2 com as duas tarifas, e tedSent tem freeQuota: 5. Antes de 1º de novembro no fuso horário do plano, a resposta e as transações usam a versão 1, e currentVersion é 2.
7

Termine a atribuição

Para tirar a conta do plano, use Terminar a atribuição de plano de tarifas de uma conta:
O Midaz responde 204. Os pacotes de tarifas do ledger voltam a se aplicar à conta.