Commerce 14 migration considerations
Outline
- Modern foundation: Commerce 14 is fully on ASP.NET Core—modular, high-performance, and cloud-ready.
- API-first design: Headless commerce capable via REST & GraphQL; front-ends can use any technology.
- Customization impact: Product catalog, pricing, promotions, orders, and integrations need careful refactoring.
- Database & CMS integration: Schema updates handled by migration; shared services with CMS 12 simplify development.
- Outcome: Scalable, performant, and flexible e-commerce tightly integrated with CMS 12.
This module examines the key considerations and technical implications of migrating existing Optimizely Commerce solutions to Commerce 14. Building on ASP.NET Core fundamentals, it covers architectural shifts, impact on customizations, database considerations, and CMS 12 integration. Understanding these aspects is crucial for planning a successful Commerce migration.
Key Architectural Shifts in Commerce 14
Commerce 14, like CMS 12, is entirely based on ASP.NET Core. This provides a modern, modular, high-performance foundation while introducing specific Commerce-focused architectural changes.
1. ASP.NET Core Foundation
- Shared Benefits: Cross-platform compatibility, enhanced performance, and cloud-native readiness align Commerce 14 with modern infrastructure.
- Modular Design: Leveraging ASP.NET Core's DI and middleware pipeline makes customization and extension easier.
2. API-First Approach
- Headless Commerce Readiness: Core logic and data are exposed via APIs, allowing front-ends in React, Vue, Angular, or other frameworks.
- GraphQL & REST APIs: Emphasis on performant APIs supports flexible integration and modern front-end development.
3. Service-Oriented Architecture
- Updated Service Layer: Internal services (catalog, pricing, promotions, order management) follow ASP.NET Core DI patterns; custom extensions require careful migration.
- Event-Driven Communication: Inter-service event handling may require updates for custom logic integration.
Impact on Existing Commerce Customizations
Existing solutions often include extensive customizations in catalog, pricing, promotions, and orders. Migrating these requires careful planning and refactoring.
1. Product Catalog and Data Model
- Content Types and Properties: Core content types remain, but interactions with CMS 12 content model may need adjustment.
- Custom Properties: Custom catalog properties should be validated and updated to align with new definitions and best practices.
2. Pricing and Promotions
- Pricing Engine: Review and refactor custom pricing logic or integrations for Commerce 14 API compatibility.
- Promotion Engine: Update custom promotions to ASP.NET Core-compatible framework, including rules, conditions, and actions.
3. Order Management and Checkout
- Order APIs: Adapt custom order creation, modification, and fulfillment to new Commerce 14 APIs.
- Checkout Process: Refactor tightly-coupled ASP.NET Framework checkout flows for ASP.NET Core MVC/Razor Pages integration.
4. Integrations
- Payment Gateways: Update custom integrations using ASP.NET Core HTTP client and new Commerce 14 payment APIs.
- ERP/CRM Integrations: Re-evaluate and refactor external system integrations for Commerce 14 API compatibility.
Database and Data Migration
Commerce database structures remain largely consistent, but migration steps are required for integrity and compatibility.
- Database Schema Updates: Follow the official upgrade sequence to apply schema changes correctly.
- Data Consistency: Custom data or complex relationships may need manual verification or migration scripts.
- Content Migration: Product catalog content migrates as part of CMS 12 content migration process.
Integration with CMS 12
- Unified Development: Single solution with shared libraries and consistent patterns across CMS and Commerce.
- Shared Services: Logging, configuration, and DI are unified for simpler setup and maintenance.
- Content-Commerce Synergy: CMS content enriches commerce data for seamless content-driven commerce experiences.
Conclusion
Migrating to Commerce 14 requires strategic planning for its ASP.NET Core foundation, API-first design, and impact on customizations. Refactoring custom code, verifying database migrations, and ensuring smooth CMS integration are critical. Adopting Commerce 14’s modern architecture enables performant, scalable, and flexible e-commerce fully integrated with CMS 12 for a unified Digital Experience Platform.
