@mira-commerce/checkout-sdk
v0.2.0
Published
Helpers TypeScript de checkout headless do Mira Commerce — sessões, carrinho e place-order sobre o @mira-commerce/client-sdk
Downloads
46
Maintainers
Readme
@mira-commerce/checkout-sdk
Helpers TypeScript para checkout headless no
Mira Commerce — camada fina sobre o
@mira-commerce/client-sdk
que codifica as boas práticas do funil (ex.: placeCheckoutOrder exige
idempotencyKey por assinatura).
npm install @mira-commerce/client-sdk @mira-commerce/checkout-sdkUso (no seu BFF — o comprador nunca vê estes tokens)
import { createCommerceClient } from "@mira-commerce/client-sdk";
import {
createCheckoutSession,
patchCheckoutSession,
placeCheckoutOrder,
} from "@mira-commerce/checkout-sdk";
const client = createCommerceClient({
baseUrl: "https://api.mira-dev.tech/v1",
token: process.env.MC_API_TOKEN,
memberId: MEMBER_ID,
});
const session = await createCheckoutSession(client, {
memberId: MEMBER_ID,
warehouseId: WAREHOUSE_ID,
channel: "web",
});
// guarde session.sessionToken em cookie httpOnly
await patchCheckoutSession(client, session.id, sessionToken, {
cart: [{ sku: "SKU-001", qty: 2, selected: true }],
customer_email: "[email protected]",
});
const placed = await placeCheckoutOrder(client, {
sessionId: session.id,
sessionToken,
idempotencyKey: crypto.randomUUID(),
});
if (placed.checkout_url) redirect(placed.checkout_url);Documentação
O passo a passo completo do funil (estado da sessão, identidade do comprador, tratamento de erros, pagamento embutido) está no guia de storefront — docs 03 e 04.
