Guia de usuário
Recebendo uma chamada no seu app
Para explicar melhor este fluxo, vamos utilizar um exemplo, a aplicação chamada “Pix”, quer fornecer seus serviços para serem consumidos por outras aplicações no ecosistema da iugu. Pra isto, esta aplicação implementa a ação “create”, que permite receber em sua api uma solicitação para criar cobranças pix ao custo de R$0,10 centavos. Em nosso exemplo, a aplicação “Pix” irá receber uma chamada da aplicação “Pagamentos Online” para emitir as cobranças pix, em uma determinada área de trabalho.
Passo a Passo
-
Acessar o console iugu e criar um app preenchendo “create” no campo “ações implementadas” (implemented actions), que são as ações que o próprio app realiza e adicionar “billing:event.create” em “ações consumidas” (consumed actions) pois são as ações adicionais implementadas por outros aplicativos, as quais a aplicação “Pix” fará uso. Para saber mais sobre como configurar o funcionamento de faturamento em suas aplicações acesse Faturamento (Billing).
-
Ao receber uma chamada na sua rota /create, a aplicação “Pix” irá verificar se um token JWT foi enviado para autenticar a chamada.
-
Decodificar o token, checando checando a validade de sua assinatura por meio do jwks. Para saber mais consulte a documentação JWT
-
Checar se o campo “aud” do token, corresponde ao id do aplicativo sendo acessado, no caso o client_id da aplicação “Pix”.
-
Chamar o servidor de autorização da iugu para saber se a ação sendo chamada (“pix:create”) é permitida. Para saber mais acesse Verify
-
Caso as ações sejam permitidas, a aplicação Pix realiza a criação do pix e faz em seguida uma chamada para a aplicação Faturamento (Billing) para realizar a cobrança de R$0,10 centavos.
-
Para chamar a aplicação “Billing”, a aplicação “Pix” realiza o processo de gerar um token JWT via client credentials, informando no audience o client_id da aplicação Billing.
-
Com o token obtido, a aplicação “Pix” chama o endpoint de faturamento para criar um evento e registrar a cobrança. Veja mais em Criando Planos e Criando eventos