Author Image

joandervieira

Jun 8, 2023

Implementação de Cobrança Pix com GoLang

cobrança PixGoLangintegrar apigerar link pagamentoidentificador transaçãoEfísdk golangcriar cobrança

Olá pessoal, bom dia.
Estou tentando implementar a cobrança de pix usando GoLang. (quero gerar um link para pagamento do pix com um id de transação para eu saber se foi foi pago e quem pagou).
Acredito ser este Ednpoint:

PUT
/v2/cob/
:txid
Endpoint para cadastrar uma cobrança com um identificador de transação (txid).
No SDK GoLang o método mais próximo que encontrei que acredito chamar este endpoint é este:
gn.CreateCharge(body)

Estou tentando chamar com este método com este body:
body := map[string]interface{}{
"calendario": map[string]interface{}{
"expiracao": 3600,
},
"devedor": map[string]interface{}{
"cpf": efiPaymentDTO.PayerIdentifier,
"nome": efiPaymentDTO.PayerName,
},
"valor": map[string]interface{}{
"original": formatAmount(efiPaymentDTO.Amount),
},
"chave": config.ComandoPixKey,
"solicitacaoPagador": "Checkout Comando",
}

Porém estou recebendo este erro:
(EXTRA []string=[{\"code\":3500034,\"error\":\"validation_error\",\"error_description\":\"A propriedade [items] é obrigatória.\"}])

Algumas dúvidas:
- Este método CreateCharge() realmente corresponde ao endpoint /v2/cob/ ?
- Qual o body correto para este método ? usei o mesmo indicado na documentação para /v2/cob/;
- Este método CreateCharge() não aceita o transactionID, como passar este txid ?

Desde já muito obrigado !

Respostas (1):
Avatar discord do usuario palloma_efi

palloma_efi

08/06/2023

Bom dia @joandervieira ! Tudo bem?
Para criação de Cobranças Pix, você pode seguir este exemplo aqui: https://github.com/gerencianet/gn-api-sdk-go/blob/master/examples/pix/cob/pixCreateCharge.go
Nele detalhamos como deve ser o body da requisição.