Ir para conteúdo
  • Cadastre-se

dev botao

Pix PSP Sicredi


Ver Solução Respondido por EliasCesar,
  • Este tópico foi criado há 793 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado

Boa Noite, estou tentando criar o PSP Sicredi, vi o modelo do Itau que parece usar certificado, mais não vi em nenhum lugar como ele é carregado na chamada.

Alguém sabe me falar como posso carregar o certificado e o pem?

  • Moderadores
Postado
58 minutos atrás, sidnei_alves1 disse:

Boa Noite, estou tentando criar o PSP Sicredi, vi o modelo do Itau que parece usar certificado, mais não vi em nenhum lugar como ele é carregado na chamada.

Alguém sabe me falar como posso carregar o certificado e o pem?

chegou a olhar no exemplo uso dele? senão me engano lá já demonstra

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

  • Membros Pro
Postado (editado)

Já olhei, não carrega, pelo menos baixei os fontes e não, tinha mais pesquisei aqui na parte de NFe e achei a propriedade de como carregar o certificado, deu certo.

só to com problema agora no retorno 

 

que o AJson chega aqui NIL, e da acess violation, mais no retorno realmente não tem, mais tentei tratar como 
IF AJson = nil then exit;

parace que não funciona.

procedure TACBrPIXRetirada.DoReadFromJSon(AJSon: TJsonObject);
begin
  {$IfDef USE_JSONDATAOBJECTS_UNIT}
   fsaque.ReadFromJSon(AJSon);
   ftroco.ReadFromJSon(AJSon);
  {$Else}
   fsaque.ReadFromJSon(AJSon);
   ftroco.ReadFromJSon(AJSon);
  {$EndIf}
end;

 

Editado por sidnei_alves1
  • Membros Pro
Postado

Bom dia. @Juliomar Marchetti.

mudei a função dessa forma, não tinha dado certo antes pq nao tinha recompilado o componente.

procedure TACBrPIXRetirada.DoReadFromJSon(AJSon: TJsonObject);
begin
  if AJSon = nil then exit;

  {$IfDef USE_JSONDATAOBJECTS_UNIT}
   fsaque.ReadFromJSon(AJSon);
   ftroco.ReadFromJSon(AJSon);
  {$Else}
   fsaque.ReadFromJSon(AJSon);
   ftroco.ReadFromJSon(AJSon);
  {$EndIf}
end;


poderia me falar se posso fazer dessa forma?

  • Membros Pro
Postado

Segue a unit para o PSP Sicredi.

Testes feito em modo produção

  1. Geração do token
  2. Criação dinâmica do PIX
  3. Consulta

Conforme chat no discord, a unica coisa que teria que ainda rever na unit *ACBrPIXSchemasCob* e o tratamento a tag RETIRADA, visto que o SICREDI devolve a mesma como NULL, gerando um acess violation.

 

ACBrPIXPSPSicredi.pas

  • Curtir 1
  • Consultores
Postado

Muito obrigado pela contribuição.

Criada uma task para análise: TK-2831

Consultor SAC ACBr

Elias César Vieira
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Assine o
SAC

 
  • Consultores
Postado
Em 23/06/2022 at 07:55, sidnei_alves1 disse:

Segue a unit para o PSP Sicredi.

Testes feito em modo produção

  1. Geração do token
  2. Criação dinâmica do PIX
  3. Consulta

Conforme chat no discord, a unica coisa que teria que ainda rever na unit *ACBrPIXSchemasCob* e o tratamento a tag RETIRADA, visto que o SICREDI devolve a mesma como NULL, gerando um acess violation.

 

ACBrPIXPSPSicredi.pas 7 kB · 4 downloads


Boa tarde, 
Poderia me passar o link da documentação da API da Sicredi por favor?

Não encontrei no ambiente dev deles. Abri um chamado no site e entrei em contato via telefone solicitando a documentação e as credenciais, porém não me passaram.

Consultor SAC ACBr

Elias César Vieira
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Assine o
SAC

 
  • Consultores
Postado

Muito obrigado @sidnei_alves1

...os dois arquivos estão iguais, os dois são sobre a geração do certificado.
Acho que faltou o manual de integração. Se puder nos enviar por favor

Consultor SAC ACBr

Elias César Vieira
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Assine o
SAC

 
  • 2 semanas depois ...
  • Consultores
  • Solution
Postado

Olá, 

O PSP Sicredi foi incluído no pacote ACBrPIXCD. 
@sidnei_alves1 Por favor, se puder efetuar um teste para verificar se está funcional.

Como até o momento não possuímos as credenciais para testes, o novo PSP ainda não foi incluído no demo.

Alterações disponíveis no SVN, rev: 26074.

  • Curtir 1
Consultor SAC ACBr

Elias César Vieira
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Assine o
SAC

 
  • 1 mês depois ...
Postado

Olá, 

Realizei os testes no ambiente de Homologação e Produção do PSP Sicredi
Para solicitar a Devolução do Pix, foi necessário um ajuste no ResultCode do endpoint

Antes era testado apenas o 201-Created, porém no Sicredi é retornado o 200-Ok

function TACBrPixEndPointPix.SolicitarDevolucaoPix(const e2eid,
  idDevolucao: String): Boolean;
....
  fPSP.AcessarEndPoint(ChttpMethodPUT, EndPoint, ResultCode, RespostaHttp);
  Result := (ResultCode in [HTTP_CREATED,HTTP_OK]);
  if Result then
    fDevolucao.AsJSON := String(RespostaHttp)
  else
    fPSP.TratarRetornoComErro(ResultCode, RespostaHttp, Problema);

 

Também inclui as configurações do Sicredi no exemplo do ACBr, porém estava gerando alguns erros para compilar.

Deixei o fonte comentado do que dava erro nas rotinas do Pix vencimento.

Caso queiram aproveitar, eu fiz só o básico para conseguir funcionar, segue em anexo.

ACBrPIXCD.pas FrPrincipal.pas FrPrincipal.dfm

  • Fundadores
Postado

Oi Marcelo.. a modificação faria o fonte principal, aceitar uma interpretação diferente da especificação da API do BC...

O correto seria traduzir o retorno errado, para o valor correto, em um "hook" da classe do PSP... veja esse exemplo do B.B.

procedure TACBrPSPBancoDoBrasil.QuandoReceberRespostaEndPoint(const AEndPoint,
  AURL, AMethod: String; var AResultCode: Integer; var RespostaHttp: AnsiString);
begin
  // Banco do Brasil, responde OK a esse EndPoint, de forma diferente da especificada
  if (UpperCase(AMethod) = ChttpMethodPUT) and (AEndPoint = cEndPointCob) and (AResultCode = HTTP_OK) then   // <------ AQUI ------
  begin
    AResultCode := HTTP_CREATED;

    // Ajuste no Json de Resposta em Testes alterando textoImagemQRcode p/ pixCopiaECola - Icozeira
    if (ACBrPixCD.Ambiente = ambTeste) then
      RespostaHttp := StringReplace(RespostaHttp, 'textoImagemQRcode', 'pixCopiaECola', [rfReplaceAll]);
  end;

  // Ajuste para o Método Patch do BB - Icozeira - 14/04/2022
  if (UpperCase(AMethod) = ChttpMethodPATCH) and (AEndPoint = cEndPointCob) and (AResultCode = HTTP_CREATED) then
    AResultCode := HTTP_OK;
end;     

 

@EliasCesar, consegue adaptar os fontes, para aplicar esses ajustes ?

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

  • Consultores
Postado
Em 12/08/2022 at 18:44, Daniel Simoes disse:

@EliasCesar, consegue adaptar os fontes, para aplicar esses ajustes ?

Sim Daniel, já estou verificando

  • Curtir 1
Consultor SAC ACBr

Elias César Vieira
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Assine o
SAC

 
  • Consultores
Postado

Olá @Marcelo A. Rodrigues

Muito obrigado pela contribuição! 

Percebi que haviam vários endpoints que estavam comentados no seu código... eles não funcionam pro PSP Sicredi?

Acabei de subir algumas alterações baseadas no código que vc enviou, se puder por favor efetuar testes para verificar se ficou tudo ok.

(Alterações disponíveis no SVN, Rev: 26418)

-- ACBrPIXPSPSicredi --
[*] Alteração para compatibilizar o retorno da API Pix Sicredi ao solicitar uma devolução
    Por: Marcelo A. Rodrigues

[+] Inclusão do PSP Sicredi no demo do componente ACBrPIXCD
    Por: Marcelo A. Rodrigues
Consultor SAC ACBr

Elias César Vieira
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Assine o
SAC

 
  • 4 semanas depois ...
Postado
Em 12/08/2022 at 18:26, Marcelo A. Rodrigues disse:

Olá, 

Realizei os testes no ambiente de Homologação e Produção do PSP Sicredi
Para solicitar a Devolução do Pix, foi necessário um ajuste no ResultCode do endpoint

Antes era testado apenas o 201-Created, porém no Sicredi é retornado o 200-Ok

function TACBrPixEndPointPix.SolicitarDevolucaoPix(const e2eid,
  idDevolucao: String): Boolean;
....
  fPSP.AcessarEndPoint(ChttpMethodPUT, EndPoint, ResultCode, RespostaHttp);
  Result := (ResultCode in [HTTP_CREATED,HTTP_OK]);
  if Result then
    fDevolucao.AsJSON := String(RespostaHttp)
  else
    fPSP.TratarRetornoComErro(ResultCode, RespostaHttp, Problema);

 

Também inclui as configurações do Sicredi no exemplo do ACBr, porém estava gerando alguns erros para compilar.

Deixei o fonte comentado do que dava erro nas rotinas do Pix vencimento.

Caso queiram aproveitar, eu fiz só o básico para conseguir funcionar, segue em anexo.

ACBrPIXCD.pas 64 kB · 4 downloads FrPrincipal.pas 93 kB · 4 downloads FrPrincipal.dfm 232 kB · 4 downloads

como faco pra me cadastrar e pegar as informacoes da cliente id e chave .. etc..

me cadastrei no site porem nao me apareceu a chave nem tokem

  • Membros Pro
Postado
2 horas atrás, dinhopires disse:

como faco pra me cadastrar e pegar as informacoes da cliente id e chave .. etc..

me cadastrei no site porem nao me apareceu a chave nem tokem

Você tem que pedi pro gerente faze a ativação. sicredi não tem 100% autorizado o processo de ativação.

Após o gerente ativar ai vc faz o processo pelo internet banking dentro da sua conta.

  • Obrigado 2
Postado

Bom dia.

Estou tentando usar o programa de testes para verificar a funcionalidade do PIX Sicredi.

estou com dúvidas de qual arquivo devo vincular no campo Arquivo Chave Privada.

Alguém poderia me auxiliar?

acbr.png

  • Membros Pro
Postado
42 minutos atrás, julio_cld disse:

Bom dia.

Estou tentando usar o programa de testes para verificar a funcionalidade do PIX Sicredi.

estou com dúvidas de qual arquivo devo vincular no campo Arquivo Chave Privada.

Alguém poderia me auxiliar?

acbr.png

 

voce tem gerar o arquivo .pem e .key

e informar os menos no portal internetbaking do sicredi, apartir disto ele devem de devolver um arquivo .cer

que vc ira usar na aplicação juntamente com o .key que vc gerou

 

  • Curtir 1
  • Consultores
Postado

Olá @sidnei_alves1 e @julio_cld

Vou fazer uma alteração no demo pra possibilitar a geração desses arquivos por ele (Parecido com a forma que é feito com o PSP Itaú).

Dessa maneira será possível gerar o arquivo .pem e o arquivo .key pelo ACBrPIXCDTeste, sendo necessário apenas enviá-los ao Sicredi e solicitar o '.cer'

  • Curtir 1
Consultor SAC ACBr

Elias César Vieira
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Assine o
SAC

 
  • Membros Pro
Postado
31 minutos atrás, EliasCesar disse:

Olá @sidnei_alves1 e @julio_cld

Vou fazer uma alteração no demo pra possibilitar a geração desses arquivos por ele (Parecido com a forma que é feito com o PSP Itaú).

Dessa maneira será possível gerar o arquivo .pem e o arquivo .key pelo ACBrPIXCDTeste, sendo necessário apenas enviá-los ao Sicredi e solicitar o '.cer'

Bacana, o sicredi, não precisar usar certificado A1, pode gerar manualmente que eles aceitam

Postado
3 horas atrás, EliasCesar disse:

Olá @sidnei_alves1 e @julio_cld

Vou fazer uma alteração no demo pra possibilitar a geração desses arquivos por ele (Parecido com a forma que é feito com o PSP Itaú).

Dessa maneira será possível gerar o arquivo .pem e o arquivo .key pelo ACBrPIXCDTeste, sendo necessário apenas enviá-los ao Sicredi e solicitar o '.cer'

Obrigado.

Na sua aplicação, como é feita a configuração para o cliente utilizar a API, sabendo que o sicredi devolve o certificado .cer?

 

  • Consultores
Postado

No caso do demo do ACBrPIXCD, vc precisará colocar sua chave gerada no campo PrivateKey e o arquivo '.cert' que o Sicredi te devolver no campo Certificado.

Eu não consegui testar esse PSP, pois não tenho as credenciais, mas pelo que entendi o arquivo .pem será apenas enviado para o Sicredi... vc não irá utilizá-lo no componente, correto @sidnei_alves1 ?

Consultor SAC ACBr

Elias César Vieira
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Assine o
SAC

 
  • Membros Pro
Postado
26 minutos atrás, EliasCesar disse:

No caso do demo do ACBrPIXCD, vc precisará colocar sua chave gerada no campo PrivateKey e o arquivo '.cert' que o Sicredi te devolver no campo Certificado.

Eu não consegui testar esse PSP, pois não tenho as credenciais, mas pelo que entendi o arquivo .pem será apenas enviado para o Sicredi... vc não irá utilizá-lo no componente, correto @sidnei_alves1 ?

Correto, isso mesmo.

  • Este tópico foi criado há 793 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.