Provider kinds

The manifest's provider block is a discriminated union on kind (exact fields in the manifest reference). Each kind has a closed platform-side interface; the interface IS the contract — there are no manifest-declared free-form actions.

payment (live)

methodId + settlement: card | cod | transfer. The platform owns the payment session state machine (attempts, 3DS continuation, finalize assertions, refunds as intent-first reservations); a card provider implements installments / initiate / finalize / handleWebhook / refund and only resolves or rejects sessions. methodFee (e.g. kapıda) and pendingOrder (expiry config key + a typed orderInstructions() block rendered in the order view, the confirmation mail and the sözleşme) are generic contracts — the platform never reads a provider's config shape directly. Webhooks: /v1/ext/{id}/wh/{token}/{storeId}; browser callbacks: /_mz/co/cb/{id}/{attemptId}.

shipping (live)

A checkout rate source via the checkout.shipping.rates hook with a hot-path contract (rates.timeoutMs, cacheTtlSeconds, onError). The first-party mozaik.flat-shipping is the auto-installed floor.

cargo (live)

Fulfillment after the order: createShipment / offers / acceptOffer / label / track / cancel / createReturn / registerWebhook / handleWebhook / senderAddressCreate. Typed op routes POST /v1/orders/{ord}/cargo/{offers|book|ship} and /cargo/{shp}/{track|cancel|update|label} are capability-gated by the manifest (rateShopping, tracking, labelFormats, senderProfile). Tracking webhooks are a *nudge*: the platform re-fetches with its own credentials before any state transition.

einvoice (kind defined; first extension at M7)

Per-entegratör transmission (Nilvera first). The platform keeps GİB mükellef lookup, e-Fatura-vs-e-Arşiv routing and the invoice-at-fulfillment trigger UX. Needs the order-lifecycle events dispatcher (manifest field events is defined now).

channel (kind defined; M9)

Marketplace sync consuming the stock-ledger outbox (seq > cursor, absolute-quantity push) and pulling orders as order.import.

messaging (kind defined; M10)

SMS/e-mail transports. The İYS consent ledger stays core.

reporting (kind defined)

Report packs with CSV/XLSX exports.

Generated from the live platform registries at build time — reference pages cannot go stale. Markdown variant: /provider-kinds.md