Корпоративный мерч в других странах:AMArmeniaGEGeorgiaTRTürkiyeRSSerbiaAEUAECYCyprusPTPortugalPLPolandESSpain

.NET SDK в Италии

CorpMerch.SDK на NuGet — .NET 8, HttpClientFactory, AOT-совместимые source-gen модели в Италии.

Архитектура — Установка и инициализация в Италии

NuGet: dotnet add package CorpMerch.SDK. Инициализация в Program.cs: builder.Services.AddCorpMerch(o => { o.ApiKey = builder.Configuration["CorpMerch:ApiKey"]; o.Country = "Италия"; });. Использует HttpClientFactory с retry-политиками Polly v8. IVA 22% применяется на сервере; канал SdI для счетов. .NET 8 / .NET Standard 2.1.

Как подключить — Быстрый старт с 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);. Source-generated сериализаторы System.Text.Json — AOT-совместимы, быстрый cold start в Azure Functions и AWS Lambda.

Эксплуатация и пограничные случаи — Проверка webhook (ASP.NET Core)

Сопоставьте endpoint: app.MapPost("/wh", async (HttpRequest req, ICorpMerchWebhooks wh) => { var ev = await wh.ConstructEventAsync(req); return Results.Ok(); });. Бросает SignatureVerificationException при неверной подписи — связано с 400. Поддерживаются Minimal APIs и MVC. ID подтверждений Sistema di Interscambio (SdI) на InvoiceEvent.AcknowledgementId.

Частые вопросы

Поддержка фреймворков?

.NET 8 и .NET Standard 2.1. .NET Framework 4.8 — на legacy SDK 1.x.

AOT и trimming?

Да — source-generated System.Text.Json, без reflection в runtime. Готово к AOT-публикации и trimmed-сборкам.

Retry на Polly?

Встроенные retry, timeout и circuit-breaker через Polly v8. Настраивается через AddCorpMerch(o => { o.Retry.MaxAttempts = 5; }).

Поддержка F#?

Да — чистая сборка .NET, работает из F#. Discriminated-union обёртки в companion-пакете.

IVA 22% и SdI?

country: 'Италия' применяет IVA 22%. Webhook-события счёта содержат id подтверждения SdI.

Свяжитесь со специалистом