Merch aziendale in altri paesi:AMArmeniaGEGeorgiaTRTürkiyeRSSerbiaAEUAECYCyprusPTPortugalPLPolandESSpain

SDK .NET per Italia

CorpMerch.SDK su NuGet — .NET 8, HttpClientFactory, modelli AOT-friendly via source-gen per Italia.

Architettura — Installazione e init per Italia

NuGet: dotnet add package CorpMerch.SDK. Init in Program.cs: builder.Services.AddCorpMerch(o => { o.ApiKey = builder.Configuration["CorpMerch:ApiKey"]; o.Country = "Italia"; });. Usa HttpClientFactory con policy retry Polly v8. IVA 22% applicata lato server; canale SdI per le fatture. .NET 8 / .NET Standard 2.1.

Come integrarlo — Quickstart con cancellation

var order = await _cm.Orders.CreateAsync(new OrderCreateOptions { IdempotencyKey = Guid.NewGuid().ToString(), Buyer = new() { VatId = "EU…" }, Lines = [new() { Sku = "TSH-001", Qty = 200 }] }, cancellationToken);. Serializzatori System.Text.Json source-generated — AOT-friendly, cold start veloce su Azure Functions e AWS Lambda.

Operatività e casi limite — Verifica webhook (ASP.NET Core)

Mappa un endpoint: app.MapPost("/wh", async (HttpRequest req, ICorpMerchWebhooks wh) => { var ev = await wh.ConstructEventAsync(req); return Results.Ok(); });. Solleva SignatureVerificationException in caso di firma errata — collegata a 400. Sia Minimal API che MVC. ID di notifica Sistema di Interscambio (SdI) su InvoiceEvent.AcknowledgementId.

Domande frequenti

Framework supportati?

.NET 8 e .NET Standard 2.1. .NET Framework 4.8 sulla SDK 1.x legacy.

AOT e trimming?

Sì — System.Text.Json source-generated, niente reflection a runtime. Pronto per AOT e trimmed build.

Retry con Polly?

Retry, timeout e circuit-breaker integrati via Polly v8. Configurabile con AddCorpMerch(o => { o.Retry.MaxAttempts = 5; }).

Supporto F#?

Sì — assembly .NET puro, usabile da F#. Wrapper a discriminated union in pacchetto companion.

IVA 22% e SdI?

country: 'Italia' applica IVA 22%. Gli eventi webhook fattura includono l'id di notifica SdI.

Parla con uno specialista