yavsc/src/Yavsc.Api/Services/InvoicingServiceCollectionExtensions.cs
Paul Schneider 2dcbcd35b3
feat(invoicing): connect signed estimates and verified payment receipts
Freeze invoice totals and parties, record offline receipts and verify completed PayPal transactions. Protect idempotence and concurrent balance updates; add migration, API client, documentation and tests.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-19 20:29:08 +01:00

17 lines
722 B
C#

using Yavsc.Services;
namespace Yavsc.Api.Services;
public static class InvoicingServiceCollectionExtensions
{
public static IServiceCollection AddInvoicing(this IServiceCollection services, IConfiguration configuration)
{
services.AddScoped<IInvoicingService, InvoicingService>();
services.Configure<PayPalSettings>(configuration.GetSection("Authentication:PayPal"));
services.AddHttpClient<IPayPalTransactionVerifier, PayPalTransactionVerifier>(client =>
client.Timeout = TimeSpan.FromSeconds(30));
services.AddOpenApi("invoicing", options =>
options.ShouldInclude = description => description.GroupName == "invoicing");
return services;
}
}