Histórico de mensagens sobre js em bolix

EXIBINDO CONVERSAS RECENTES:

Texto: js
Canal: bolix
Avatar discord do usuario isecchin

isecchin

Ver Respostas

Sei que podemos resolver isso facilmente do nosso lado, mas acredito que a validação não está condizente (tanto por serem CNPJs distintos quanto por conseguir sim emitir 3, e só dar problema a partir da 4ª)

Avatar discord do usuario isecchin

isecchin

O caso específico em que estamos tendo problema atualmente é com uma empresa que tem 5 lojas (5 CNPJs diferentes, inclusive em cidades diferentes) porém o financeiro dessa empresa é único, então eles solicitaram que fossem enviadas as notificações para o mesmo e-mail e telefone

Avatar discord do usuario thigas8242

thigas8242

Ver Respostas

Nodejs

Avatar discord do usuario matheus_efi

matheus_efi

Hoje o retorno da API segue este padrão:

json
{
"code": 200, // retorno HTTP "200" informando que o pedido foi bem sucedido
"data": {
"barcode": "00000.00000 00000.000000 00000.000000 0 00000000000000", // linha digitável do boleto
"link": "link_https_para_acesso_o_bolix", // link do Boleto gerado
"pdf": {
"charge": "link_https_do_pdf_da_cobranca" // link do PDF do Boleto
},
"expire_at": "2022-12-15", // data de vencimento do boleto no seguinte formato: 2022-12-15 (ou seja, equivale a 15/12/2022)
"charge_id": numero_charge_id, // número da ID referente à transação gerada
"status": "waiting", // forma de pagamento selecionada, aguardando a confirmação do pagamento ("waiting" equivale a "aguardando")
"total": 5990, // valor, em centavos. Por exemplo: 5990 (equivale a R$ 59,90)
"payment": "banking_billet" // forma de pagamento associada à esta transação ("banking_billet" equivale a "boleto bancário")
}
}
Você pode pegar o valor que fica no atributo charge e quando o cliente acionar o botão no app, ele fazer o download automático. A forma de implementar vi depender da linguagem de programação utilizada no back-end. Caso encontremos uma forma fácil de transformar o link diretamente, como um parâmetro por exemplo, enviaremos para você no canal.

Avatar discord do usuario sady_efi

sady_efi

Ver Respostas

Os padrões do POST/token e GET/Json continuam sendo os mesmos 😉

Avatar discord do usuario matheus_efi

matheus_efi

Ver Respostas

Boa noite, em relação a primeira pergunta, ao receber o token de notificação de um carnê e consumir o endpoint GET notification/token você terá um array contendo as mudanças que ocorreram em cada parcela do carnê, seja de status pago(paid) ou de cancelamento(canceled) por exemplo. Neste link: https://dev.gerencianet.com.br/docs/notificacoes-recebendo#section-2-1-exemplos-de-respostas- tem a aba carnê exemplificando como é um JSON com os status de cada parcela.
Em relação ao segundo questionamento não tem um padrão definido, vai depender de cada linguagem e do sistema do integrador, mas a lógica permanece a mesma: Receber o token de notificação, consultá-lo(https://dev.gerencianet.com.br/docs/notificacoes-recebendo#section-2-consultando-detalhes-de-uma-notifica-o) e depois fazer a tratativa dos dados recebidos, seja percorrendo o array em busca de algum dado específico ou salvando tudo em um banco de dados.

Avatar discord do usuario thigas8242

thigas8242

Ver Respostas

Estou fazendo a integração do gerencianet em um sistema em nodejs e estou com dúvidas?
1 ° - Consigui receber tokens da notification(em testes com php) porém minha dúvida é, consigo pegar esse token e retornar os dados, como quantidade de parcelas e o status de cada uma?
2° - qual a melhor maneira de tratar esses dados? Tipo com axios por exemplo?

Avatar discord do usuario matheus_efi

matheus_efi

Ver Respostas

Bom dia, <@!617773421241040982>! Essa falha de curl ocorre quando retornamos o JSON com a resposta da requisição mas a sua aplicação já não está mais "esperando" e corta a conexão. Geralmente é devido ao link de internet que demora para entregar a resposta da API. Uma coisa que você pode fazer é aumentar o tempo de timeout como por exemplo: timeout => 60

Avatar discord do usuario josimaros

josimaros

Ver Respostas

no momento não, mas hoveu alguma alteração, pios ate mes passado ainda estava funcionando.
porem ja aproveitando.

estou fazendo o mesmo software com nodejs
e quando tento receber a informações de um carne utilizando nodejs
e copiando e colocando o exemplo de voces - Retornar informações sobre um carnê
recebo essa informação
{
"code": 3500010,
"error": "property_does_not_exists",
"error_description": {
"property": "id",
"message": "A propriedade [id] informada não existe."
}
}

Avatar discord do usuario andresisdanca

andresisdanca

Estou com outro problema:

Enviei um item valendo R$ 12,00 e o desconto condicional até dia 31/10 de R$ 2,00.
Assim o bolix saiu com o valor final de R$ 10,00 e desconto de R$ 2,00.

Porém ao tentar pagar hoje pelo código de barra o banco está colocando o valor de R$ 8,00 para pagar. Ou seja aplicando o desconto sobre o valor final que já esta com desconto.

{"items":[{"name":"#4307727 - NOV/21 - MENSALIDADE","value":1200,"amount":1}],"payment":{"banking_billet":{"customer":{"name":"Agnaldo Tim?teo","cpf":"xxxxxxxx","email":null,"phone_number":"11988754622","address":{"street":"Avenida D?lio Silva Britto, s/n","number":"120","neighborhood":"Coqueiral de Itaparica","zipcode":"29102904","city":"Vila Velha","complement":null,"state":"ES"}},"expire_at":"2021-11-02","configurations":{"fine":200,"interest":33},"discount":{"type":"currency","value":200},"conditional_discount":{"type":"currency","value":200,"until_date":"2021-10-31"},"message":"- Emitida por Studio Conta DanceBank.\n- E-mail do Emissor: [email protected].\n- Caso j? tenha pago desconsiderar solicita??o.\n"}},"metadata":{"custom_id":"","notification_url":"https://app.sisdanca.com.br/sistema/publico/bolix.jsp"}}]]

Será que é por que estou enviando o desconto e o desconto condicional juntos?

Avatar discord do usuario matheus_efi

matheus_efi

Ver Respostas

No caso se for a SDK .NET, você vai inserir a informação no endpoints.json

Avatar discord do usuario andresisdanca

andresisdanca

Ver Respostas

Os parametros são estes aqui para pegar o token?

String basicAuth = Base64.getEncoder().encodeToString(((this.clienteId + ':' + this.clienteSecret).getBytes()));

HttpPost httpPost = new HttpPost(rota);
httpPost.setHeader("Content-Type", "application/json");
httpPost.setHeader("Authorization", "Basic " + basicAuth);
String requestJson = "{"grant_type": "client_credentials"}";

Retirei o certificado e estou na rota https://sandbox.gerencianet.com.br/v1/authorize

E continua dando não autorizado.

Esta API de vcs não tive muito sucesso com ela ... desculpe.

Será que estou com o Bolix liberado para realizar as transações?
O Cliente Id e o ClienteSecret é o mesmo do PIX?

Avatar discord do usuario andresisdanca

andresisdanca

Estou chamado o endereço https://sandbox.gerencianet.com.br/v1/authorize para poder pegar o token para gerar o Bolix. Estou recebendo token Unauthorized.

Estou usando

HttpPost httpPost = new HttpPost(rota);
httpPost.setHeader("Content-Type", "application/json");
httpPost.setHeader("Authorization", "Basic " + basicAuth);

String requestJson = "{\"grant_type\": \"client_credentials\"}";

Avatar discord do usuario carlosh.skraba4582

carlosh.skraba4582

gostaria de algo como um put/post com vários de uma vez, e retorno em json

Avatar discord do usuario jessica_efi

jessica_efi

Certo. Mas utilize a sdk dessa forma que não terá nenhuma falha. Faça um teste inserindo suas credenciais no arquivo credentials.json e no arquivo OneStepBankingBillet.cs não faça nenhuma alteração.

Avatar discord do usuario jessica_efi

jessica_efi

Ver Respostas

Certo. No arquivo credentials.json (Gerencianet.NETCore.SDK.Examples/credentials.json) você inseriu suas credenciais e definiu o sandbox?

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Certo. levarei sua sugestão para análise.
Teoricamente, como o boleto tem sua confirmação d+1, e o Pix tem sua confirmação instantânea, então quando consultar o token de notificação e o parâmetro received_by_bank_at estiver com a mesma data do created_at, significa que foi pago com Pix 😉

json
{
"created_at": "2019-09-14 07:33:30", // data da alteração do status do array "id 4"
"custom_id": null, // identificador da cobrança definido pelo integrador, se existir
"id": 4,
"identifiers": { // identificadores que representam a cobrança
"charge_id": 24342333
},
"received_by_bank_at": "2019-09-14", // data do pagamento da cobrança
"status": {
"current": "paid", // status ATUAL da transação: paid ("pago")
"previous": "waiting" // status ANTERIOR da transação: waiting ("aguardando")
},
"type": "charge", // tipo da cobrança que sofreu a alteração (neste caso, "charge" quer dizer que a alteração ocorreu em uma transação)
"value": 6990 // valor que acompanha a alteração. Esta tag existirá quando a alteração for uma confirmação de pagamento, informando o valor pago que foi confirmado
}