Pular para o conteúdo principal

Integrando OpenPix com AWS Lambda

Configurando a AWS CLI

Precisamos ter a aws CLI configurada também. É necessário, pois ela quem irá controlar toda a questão de acesso para a sua conta e o script que vai fazer o deploy da sua aplicação, via CDK.

Neste link, contém a instalação para a CLI de acordo com o seu sistema operacional.

Depois disso será necessário que você configure a CLI a partir do comando: aws configure. Ele irá pedir alguns valores como: AWS Access Key ID, AWS Secret Access Key, etc. Para entender como de fato conseguir tais valores, sugerimos ver a documentação da própria AWS, ela vai instruir o passo a passo completo a respeito.

Referências

Configurando o CDK

Primeiro de tudo, é necessário instalar o CDK. Para isso, como pré-requisito é necessário ter o npm instalado na sua máquina também (se preferir, pode usar o Yarn).

Após instalação do NPM, você irá instalar o toolkit da AWS CDK da seguinte forma:

npm install --global aws-cdk

Após finalizar, valide que tudo ocorreu da forma correta com:

cdk --version

Referências

Repositório de boilerplate para CDK + AWS Lambda

Para os próximos passos, temos um repositório com boilerplate. Caso for do seu interesse para continuar as próximas etapas, você pode acessá-lo por aqui.

Fazendo o bootstrap do CDK

Por debaixo dos panos, o CDK utiliza outros recursos como os buckets do S3, etc. Precisamos criar eles para assegurar que todo o fluxo ocorra da forma correta. Para isso, execute:

cdk boostrap aws://ACCOUNT-NUMBER/REGION

Para você pegar tanto o ACCOUNT-NUMBER quanto a REGION desejada, caso não tenha em mãos, via a AWS CLI que já utilizou anteriormente, execute o comando:

aws sts get-caller identity

Com isso você vai ver algumas informações a respeito da sua conta,incluindo REGION e o ACCOUNT-NUMBER.

Fazendo o deploy da minha stack CDK

Após configurar corretamente A CLI do CDK, precisamos fazer mais dois passos para, por fim, termos nossa stack rodando na AWS:

Primeiro de tudo, vamos "sintetizar" a nossa aplicação, para ficar de acordo com o esperado pelo CloudFormation, isto é, um serviço que é usado pela CDK, por debaixo dos panos, para lidar com toda a responsabilidade de deployment, etc.

Para sintetizarmos, precisamos executar esse comando:

cdk synth

Isso vai fazer com que toda a sua aplicação converta para um formato YML amigável que será lido pelo AWS CloudFormation.


Depois de sintetizado, basta fazer o deploy da nossa stack, para isso execute o comando:

cdk deploy

Com isso, você conseguiu deployar a sua aplicação com sucesso! É possível acessar os recursos como:

  • API Gateway
  • Lambda

E ver que tudo foi deployado corretamente.

Referências

Como usar?

Para usar, precisamos ter três pontos configurados corretamente:

  • API Gateway (você já configurou no ponto anterior);
  • O webhook;

Configurando o webhook

Para criarmos o webhook, acesse a documentação para criar o webhook dentro da nossa plataforma e clique no botão: Novo webhook. Você irá cair neste formulário:

Webhook

Preenchendo ele, você seguirá a seguinte ordem:

  1. Nome, insira o nome que preferir para os webhooks.
  2. Evento, neste caso, é o evento que esperamos acontecer para disparar o webhook, você selecionará o evento de: Transação Pix Recebida.
  3. Url, aqui, coloque a URL do API Gateway que vai servir como gatilho (trigger) para a sua função Lambda.

Depois de preencher esses três campos, clique em Salvar. Parabéns, você criou seu novo webhook!

Para mais informações a respeito de como configurar seu webhook, temos outras documentações a respeito: