Cart and checkout are where trust is spent: stock reservation, taxes, Stripe or PayPal, shipping rates, and error states a human can recover from. I do not invent a card-data form that would put PAN on your server. For Shopify we stay inside Checkout; for WooCommerce and custom we use hosted fields or redirect flows that keep PCI scope small.
English-market defaults: Stripe, PayPal, Apple Pay / Google Pay where the platform allows, and tax/VAT as required by the selling entities in the brief. Carrier APIs (rates, labels) are in scope when you have accounts. I do not wire YooKassa or CDEK as the default story on this locale — those belong to the Russian-language service pages.
What we ship: cart rules (min order, coupons), checkout steps, payment configuration, shipping methods, emails/order status, and test cards on staging. Abandoned-cart email is platform-native or a light ESP hook, not a fake “AI recovery suite.” Messenger payment nudges, if you want them, sit on chat bots and must not replace a real checkout.
Failures we plan for: payment webhooks firing twice, customers refreshing confirmation, and stock going to zero mid-session. Those are engineering problems, documented in the runbook.
