Sufficit.Gateway.Efi
1.26.928.1338
dotnet add package Sufficit.Gateway.Efi --version 1.26.928.1338
NuGet\Install-Package Sufficit.Gateway.Efi -Version 1.26.928.1338
<PackageReference Include="Sufficit.Gateway.Efi" Version="1.26.928.1338" />
<PackageVersion Include="Sufficit.Gateway.Efi" Version="1.26.928.1338" />
<PackageReference Include="Sufficit.Gateway.Efi" />
paket add Sufficit.Gateway.Efi --version 1.26.928.1338
#r "nuget: Sufficit.Gateway.Efi, 1.26.928.1338"
#:package Sufficit.Gateway.Efi@1.26.928.1338
#addin nuget:?package=Sufficit.Gateway.Efi&version=1.26.928.1338
#tool nuget:?package=Sufficit.Gateway.Efi&version=1.26.928.1338
Sufficit Gateway Efí
Worktrees (padrão Sufficit): toda árvore de trabalho deste projeto (humanos ou agentes de IA) deve ser criada dentro da pasta do próprio projeto:
git worktree add .worktrees/<nome>. A pasta.worktrees/é ignorada pelo git (.gitignore→**/.worktrees/) e nunca deve ser versionada ou criada fora da raiz do repositório.
Integração HTTP tipada da Sufficit com as APIs Efí.
EfiGateway é a fachada geral do provedor. Cada produto é implementado como
uma capacidade parcial; a primeira capacidade implementa IBankSlipGateway e
IBankSlipProviderDiagnosticsGateway para o provider persistido efi, sem
referenciar nem alterar o SDK ou o gateway legado da Gerencianet.
Responsabilidades
- compartilhar autenticação, cliente HTTP, configuração e credenciais entre as capacidades Efí;
- emitir, consultar e cancelar boletos;
- reconciliar resultados ambíguos antes de permitir uma nova emissão;
- normalizar estados, erros e orientações operacionais;
- oferecer consultas tipadas e somente leitura para a console de diagnóstico.
Fluxo de boleto
- OAuth2
client_credentialsemPOST /v1/authorize; - criação da cobrança em
POST /v1/charge; - associação do boleto em
POST /v1/charge/{charge_id}/pay; - consulta em
GET /v1/charge/{charge_id}; - cancelamento em
PUT /v1/charge/{charge_id}/cancel.
O catálogo EfiBankSlipErrorCatalog traduz códigos oficiais para categorias
internas e orientação segura ao operador. Não há failover automático.
Erros de segurança, limites de emissão e respostas ambíguas bloqueiam retry automático. Códigos ainda desconhecidos durante a emissão são tratados como resultado ambíguo até que uma consulta descarte a criação da cobrança.
Configuração
O host registra o gateway e a infraestrutura neutra separadamente:
services.AddSufficitGatewayInfrastructure(configuration);
services.AddSufficitBankSlipInfrastructure(configuration);
services.AddSufficitGatewayEfi(configuration);
As opções e credenciais do provedor ficam em Sufficit:Gateway:Efi. Nenhuma
configuração geral do Efí pertence ao módulo de boletos:
{
"Sufficit": {
"Gateway": {
"Efi": {
"BillingSandboxBaseAddress": "https://cobrancas-h.api.efipay.com.br/",
"BillingProductionBaseAddress": "https://cobrancas.api.efipay.com.br/",
"Timeout": "00:00:30",
"TokenClockSkew": "00:00:30",
"IncludePayerEmail": false,
"_IncludePayerEmail": "Quando true, envia o e-mail do pagador à Efí. A Efí poderá disparar mensagens de cobrança diretamente; mantenha false quando a comunicação for feita pela Sufficit.",
"Credentials": {}
}
}
}
}
IncludePayerEmail é um opt-in. Quando a requisição de emissão informa essa
decisão explicitamente, ela prevalece sobre o padrão do gateway. No fluxo V2,
o valor vem das configurações Efí do tenant e nasce desligado. O campo _IncludePayerEmail
é apenas documentação inline do arquivo JSON e é ignorado pelo binder.
Client ID e Client Secret não pertencem a este repositório nem ao payload das
filas. O host resolve referências opacas por IGatewayCredentialResolver a
partir da configuração protegida.
Validação
dotnet test tests/Sufficit.Gateway.Efi.Tests.csproj
Os testes usam um HttpMessageHandler controlado e não acessam contas reais.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.12)
- Sufficit.Base (>= 1.26.928.242)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.26.928.1338 | 196 | 9/28/2026 |
| 1.26.923.1336 | 117 | 9/23/2026 |
| 1.26.923.1207 | 84 | 9/23/2026 |
| 1.26.922.2152 | 90 | 9/22/2026 |
| 1.26.906.1631 | 114 | 9/6/2026 |
| 1.26.817.2202 | 105 | 8/17/2026 |
| 1.26.817.1907 | 97 | 8/17/2026 |
| 1.26.816.1812 | 109 | 8/16/2026 |
| 1.26.812.624 | 105 | 8/12/2026 |
| 1.26.811.1748 | 111 | 8/11/2026 |