Agent skill
magento-checkout
Customize Magento 2 checkout — payment methods, shipping carriers, totals collectors, and checkout UI. Use when building custom payment/shipping integrations or modifying the checkout flow.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/magento-checkout
SKILL.md
Magento 2 Checkout Customization
Before writing code
Fetch live docs:
- Web-search
site:developer.adobe.com commerce php tutorials frontend custom-checkoutfor checkout customization tutorials - Web-search
site:developer.adobe.com commerce php tutorials frontend custom-checkout add-payment-methodfor payment method tutorial - Web-search
site:developer.adobe.com commerce php development components checkoutfor checkout architecture
Conceptual Architecture
Checkout Flow
Two-step checkout built with UI Components + KnockoutJS:
- Shipping Step — address, shipping method selection
- Payment & Review Step — payment method selection, order review, place order
Quote Model
The central data structure during checkout:
Magento\Quote\Model\Quote— the cart/checkout session- Contains items, addresses (billing + shipping), payment, totals
- Converted to an Order on successful placement
Payment Methods
Three Categories
| Type | Description |
|---|---|
| Gateway | Data passes through Magento to processor (Stripe, Braintree) |
| Offline | No external provider (Check/Money Order, Bank Transfer, COD) |
| Hosted | Redirects to external payment page (PayPal Redirect) |
Implementation Components
- Payment Model — uses Payment Gateway Command pattern with
Magento\Payment\Model\Method\Adapteras a virtual type (recommended). Note:Magento\Payment\Model\Method\AbstractMethodis deprecated; avoid for new payment methods. - Config Provider — implements
ConfigProviderInterface, returns JS config for checkout - JS Renderer — KnockoutJS component rendering the payment form in checkout
- di.xml — register config provider into composite config provider
- system.xml/config.xml — admin configuration fields for enabling/configuring the method
Payment Gateway Command Pattern
Modern approach (since 2.1) with configurable command chain:
- Command objects for each operation (authorize, capture, refund, void)
- Request builders construct gateway-specific payloads
- Response handlers process gateway responses
- Validators verify responses
- Transfer factory creates HTTP transfer objects
Shipping Methods
Carrier Implementation
Shipping carriers extend Magento\Shipping\Model\Carrier\AbstractCarrier:
collectRates()— returns available shipping rates for the cartgetAllowedMethods()— returns method code/name pairs- Configuration in
config.xml(defaults) andsystem.xml(admin fields) - Tracking capability via
getTrackingInfo()
Totals Collectors
What Totals Collectors Do
Calculate order totals (subtotal, shipping, tax, discount, grand total):
- Declared in
etc/sales.xml - Extend
Magento\Quote\Model\Quote\Address\Total\AbstractTotal collect()— performs calculation, modifies quote address totalsfetch()— returns the result for display
Collector Order
Collectors run in sequence. Standard order: subtotal → discount → shipping → tax → grand_total. Custom collectors must declare their position relative to existing ones.
Checkout UI Customization
Layout Modification
Checkout layout is defined in checkout_index_index.xml. Modify via:
- Adding new UI components to checkout steps
- Moving/removing existing components
- Plugin on
LayoutProcessorInterfacefor dynamic modifications
Custom Checkout Steps
Add entire new steps via JavaScript UI components registered in the checkout layout.
Best Practices
- Use the Payment Gateway Command pattern for new payment methods
- Test payment methods in sandbox/test mode before production
- Handle payment failures gracefully with clear customer messaging
- Use config providers to pass server config to checkout JS
- Follow PCI compliance — never log or store raw card data
- Test shipping rate calculation with various cart compositions
Fetch the checkout customization tutorials for exact class signatures, XML configurations, and JS component patterns before implementing.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?