Histórico de mensagens sobre Recebimento

EXIBINDO CONVERSAS RECENTES:

Texto: Recebimento
# pix
Avatar discord do usuario ananiaslima

ananiaslima

Ver Respostas

Boa tarde, estou iniciando uma avaliação da solução da GerenciaNet para recebimento de Pix. Inicialmente estou tentando autenticar utilizando a Collection Postaman "OAuth", mas estou recebendo a mensagem "INCORRECT_PASSWORD". Acredito que segui a documentação. Alguma dica?

# sugestões
Avatar discord do usuario francisco.carvalho

francisco.carvalho

{
"pix": {
// configuração da conta
"receberSemChave": true, // permite ao EC recusar Pix Manual de titularidade diferente

"chaves": [{
"chave": "[email protected]",
"recebimento": {

// se false, implica em recusar qualquer txid vazio ou com "", não importando
// qual a forma de iniciação
"txidNulo": false,

// no futuro, quando a forma de iniciação vier na PACS.008,
// será possível outras customizações
// não precisamos entrar nesse mérito agora, mas um esboço poderia ser:
"qrEstatico": {
"recusarTodos": true,
"txidTamMin": 10, // obviamente só entra em cena caso o anterior seja false
"txidNulo": true, // idem
"txidRegex" "^pix", // necessário mais estudos
}

"viaChave": {}

}
}]
}
}

# comercial
Avatar discord do usuario adm_yakuza

adm_yakuza

A taxa de recebimento no cartão de crédito que me assustou um pouco.

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Experimente fazer um get em /pix com inicio = minuto do recebimento segundo 0 fim = minuto do recebimento segundo 59

# sugestões
Avatar discord do usuario francisco.carvalho

francisco.carvalho

{
"pix": {
// configuração da conta
"receberSemChave": true, // permite ao EC recusar Pix Manual de titularidade diferente

"chaves": [{
"chave": "[email protected]",
"recebimento": {

// se false, implica em recusar qualquer txid vazio ou com "", não importando
// qual a forma de iniciação
"txidNulo": false,

// no futuro, quando a forma de iniciação vier na PACS.008,
// será possível outras customizações
// não precisamos entrar nesse mérito agora, mas um esboço poderia ser:
"qrEstatico": {
"txidNulo": true,
"txidRegex" "^pix", // necessário mais estudos
}

"viaChave": {}

}
}]
}
}

# sugestões
Avatar discord do usuario anoni_mato

anoni_mato

Ver Respostas

Pensando na implementação lógica, o fluxo seria mais ou menos esse:

-> se o txid é dinâmico {26,35} a GN valida com base na chave + txid se existe cobrança (talvez isso até já esteja implementado hoje).
-> elseif, txid é nulo, GN consulta a configuração da conta do EC recebedor (ou da chave) se deve acatar Pix com txid nulo.

se a GN tiver como diferenciar quando o Pix foi enviado via "manual" (informando dados bancários) ou com uso da chave DICT, o ideal seria a configuração de aceitar/não os recebimentos com txid nulo ser por chave + uma configuração extra para bloquear todos os recebimentos manuais (que nunca tem txid associado).

se não tiver como diferenciar, a configuração poderia ser global (por conta transacional), com opção de sobrescrever a escolha para chaves individuais (assim poderia bloquear recebimentos com txid nulo para toda a conta [que seria o comportamento padrão] e autorizar o txid nulo em uma chave particular).

e, futuramente:
-> else (txid é estático), valida conforme as regras de aceite do EC (por regex match ou enviando o request de validação para webhookURL/txidmatch, como sugeri acima).

e esse "futuramente" eu não consigo nem ver uma demanda relevante. o importante são as outras funções.

# sugestões
Avatar discord do usuario anoni_mato

anoni_mato

Ver Respostas

bom dia. voltando à questão do regex para aceitar/não os recebimentos com base no txid. alguém da GN pode me esclarecer quais os cenários específicos onde vocês visualizaram uma necessidade de aceitação com base em regex? que eu me lembre, essa ideia apareceu como como uma evolução da necessidade de barrar recebimentos com txid vazio. porém:

- para recebimentos de cobranças (QR dinâmico) o txid precisa ser correspondente a uma cobrança existente na GN ou ela já poderia ser descartada (independente de qualquer crivo por parte do EC); e
- para recebimentos de QR estático, é perfeitamente compreensível que a GN não tenha ciência prévia dos txid dos recebimentos mas não vislumbro problemas maiores que exijam uma validação do txid com base em critérios definidos pelo EC (somente o problema conhecido de pagamentos entrando sem txid).

então, eu pergunto:

1. já foi implementada a possibilidade de bloqueio de recebimentos de Pix sem txid (seja a nível de chave Pix ou de conta transacional)?
2. se não foi, a evolução dessa funcionalidade para algo baseado em regex (ou outras regras) não está atrasando desnecessariamente a implantação da função de bloqueio de recebimento sem txid?

Lembrando que esse bloqueio é essencial para os EC que precisam de 100% de assertividade na conciliação automática.

# sugestões
Avatar discord do usuario wesleyhp

wesleyhp

6º - Quando apenas o módulo de Pix está ativo no plugin, uma mensagem dizendo que é necessário ativar uma forma de recebimento fica aparecendo
imagem enviada na mensagem pelo usuario wesleyhp

# sugestões
Avatar discord do usuario anoni_mato

anoni_mato

tive uma ideia aqui. e se a GN mandar um request para webhookURL/txidmatch passando o txid recebido, com um timeout de uns 3 segundos, e o EC responde se a GN deve ou não aceitar o recebimento?

talvez o problema seja o BC encasquetar com o prazo de conclusão do recebimento (a média de tempo iria subir)

# sugestões
Avatar discord do usuario joelemanoel

joelemanoel

Ver Respostas

<@!793123559874494465> uma alternativa seria usar algo como o % do MySQL. Assim, poderíamos ter:

// Caso onde aceitaria: GN9268T9cac2ca53c5fe723c249d
"recebimento": {
"txid": {
"aceitarApenas": "GN%",
"aceitarVazio": true
}
}

// Caso onde aceitaria: 9268T9cac2ca53c5fe723c249dGN
"recebimento": {
"txid": {
"aceitarApenas": "%GN",
"aceitarVazio": true
}
}

# sugestões
Avatar discord do usuario francisco.carvalho

francisco.carvalho

Tipo assim:

"recebimento": {
"txid": {
"comecaCom": ["gnPix", "pix", "prod"], // aplica-se OR para os arrays, entre comecaCom e terminaCom, aplica-se AND
"terminaCom": ["BACEN", "pix"],
"aceitarVazio": false
}
}

# sugestões
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Os comecaCom/terminaCom/contem são múltiplos ? Ou seja, poderia ser:
"recebimento": {
"txid": {
"comecaCom": "gnPix",
"comecaCom": "BACEN",
"aceitarVazio": false
}
}
?

# sugestões
Avatar discord do usuario francisco.carvalho

francisco.carvalho

Ver Respostas

Eu acredito que resolveríamos com outra flag, <@!780500321994539068> , algo nesse sentido:

"recebimento": {
"txid": {
"contem": "gnPix",
"aceitarVazio": true
}
}

# sugestões
Avatar discord do usuario francisco.carvalho

francisco.carvalho

Ver Respostas

Boa tarde @everyone !

Retomando o assunto endpoint de configurações (https://www.notion.so/Endpoint-de-configura-es-0a97faee68f845ab96ec21551862fe6c).

Nosso time de engenharia observou que existem possíveis situações em que o match do regex com a string do txid pode demorar muitos segundos ou até minutos. Existem situações inclusive de crash da aplicação. Em outras palavras: não é seguro recebermos via input qualquer regex.

Um exemplo que vocês podem testar no browser:

let regexp = /^(\d+)$/;
let str = "012345678901234567890123456789z";
alert( regexp.test(str) );

O alert acima levará um longo tempo até que apareça. Imaginem isso no ato de recebimento de um Pix, no qual cada milisegundo é um fator determinante para um timeout inesperado.

A conclusão é que precisamos controlar melhor quais regex serão aceitas.

A proposta é, ao invés de receber um txidRegex, receber algo mais limitado que também atenda da mesma forma:

"recebimento": {
"txid": {
"comecaCom": "gnPix"
}
}

"recebimento": {
"txid": {
"terminaCom": "gnPix"
}
}

"recebimento": {
"txid": {
"contem": "gnPix"
}
}

comecaCom/terminaCom/contem: a-zA-Z0-9{0,15} //caracteres aceitos

Gostaria de opinião de vocês em relação a essa nova proposta, bem como sugestões dentro dessa nova abordagem.

Para quem interessar, uma referência sobre o assunto regexp-catastophic-backtracking com mais detalhes.
https://javascript.info/regexp-catastrophic-backtracking

# pix
Avatar discord do usuario ezequielsp

ezequielsp

e por isso que ter 2 fluxos de notificações, para pagamentos e recebimentos.

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Possivelmente o webhook de pix enviado devesse ser sendpix ao invés de pix. Então vc mandaria exemplo.com.br/webhook na configuração de webhook para aquela chave, e a GN acionaria exemplo.com.br/webhook/pix para os recebimentos e exemplo.com.br/webhook/sendpix para os pagamentos.

# pix
Avatar discord do usuario ezequielsp

ezequielsp

um webhook para pagamentos e outro para recebimentos.

# pix
Avatar discord do usuario matheus_efi

matheus_efi

Ver Respostas

Boa tarde <@!783359762917752843>, a resposta já vem no momento da requisição, mas o webhook também é acionado com os dados do envio. Você pode configurar sim, mas neste caso o melhor cenário seria ter uma chave para envio de Pix com um webhook e outra chave com o segundo webhook exclusivo para recebimento, pois, cada chave só pode estar associada a um único webhook.

# pix
Avatar discord do usuario anoni_mato

anoni_mato

Ver Respostas

Bom dia. Seria legal se alguém da GN pudesse esclarecer se a implementação de vocês prevê (e previne) modificações/remoções na cobrança no intervalo entre o início de um processo de recebimento e a sua conclusão, que foi discutido em https://github.com/bacen/pix-api/issues/324