SDK .NET dla Polska
CorpMerch.SDK na NuGet — .NET 8, HttpClientFactory, modele AOT-friendly source-gen dla Polska.
Architektura — Instalacja i init dla Polska
NuGet: dotnet add package CorpMerch.SDK. Init w Program.cs: builder.Services.AddCorpMerch(o => { o.ApiKey = builder.Configuration["CorpMerch:ApiKey"]; o.Country = "Polska"; });. Używa HttpClientFactory z politykami retry Polly v8. VAT 23% aplikowane po stronie serwera; kanał KSeF dla faktur. .NET 8 / .NET Standard 2.1.
Jak to zintegrować — Quickstart z anulowaniem
var order = await _cm.Orders.CreateAsync(new OrderCreateOptions { IdempotencyKey = Guid.NewGuid().ToString(), Buyer = new() { VatId = "EU…" }, Lines = [new() { Sku = "TSH-001", Qty = 200 }] }, cancellationToken);. Serializatory System.Text.Json source-generated — AOT-friendly, szybki cold start w Azure Functions i AWS Lambda.
Eksploatacja i przypadki brzegowe — Weryfikacja webhooka (ASP.NET Core)
Mapuj endpoint: app.MapPost("/wh", async (HttpRequest req, ICorpMerchWebhooks wh) => { var ev = await wh.ConstructEventAsync(req); return Results.Ok(); });. Rzuca SignatureVerificationException przy złym podpisie — podpięte do 400. Minimal API i MVC. ID potwierdzeń Krajowy System e-Faktur (KSeF) na InvoiceEvent.AcknowledgementId.
FAQ
Wsparcie frameworków?
.NET 8 i .NET Standard 2.1. .NET Framework 4.8 na legacy SDK 1.x.
AOT i trimming?
Tak — source-generated System.Text.Json, bez reflection w runtime. Gotowe do AOT publish i trimmed buildów.
Polly retry?
Wbudowane retry, timeout i circuit-breaker przez Polly v8. Konfigurowalne przez AddCorpMerch(o => { o.Retry.MaxAttempts = 5; }).
Wsparcie F#?
Tak — czysty assembly .NET, działa z F#. Wrappery discriminated union w pakiecie companion.
VAT 23% i KSeF?
country: 'Polska' aplikuje VAT 23%. Zdarzenia webhooków faktur zawierają id potwierdzenia KSeF.