Company Overview:
Dynamic Technologies LLP is a specialized provider of Microsoft Dynamics services, offering comprehensive support, implementation, migration, and development solutions. Our expertise spans across all facets of Microsoft Dynamics, ensuring that our clients receive tailored solutions that meet their unique business needs. With a focus on delivering high-quality service, Dynamic Technologies LLP is committed to helping businesses streamline their operations, enhance productivity, and achieve their digital transformation goals.
Client Background:
Our client is a leading company in the cosmetic industry based in South Africa. With over 100 retail outlets and a strong presence in eCommerce, they are a significant player in their market. To manage their operations efficiently, they rely on Microsoft D365 Finance and Operations, utilizing all its modules to streamline processes across their business. However, as their business grew, they encountered challenges with their existing Retail SDK, which prompted the need for a migration to the more robust and flexible Commerce SDK.
Project Overview:
Microsoft recently released a new SDK specifically for Commerce customizations, necessitating an update from the Retail SDK to the Commerce SDK to leverage the latest features and improvements. Our client, who had extensively customized their Retail SDK, required a seamless transition to the new Commerce SDK to continue their operations without disruption. Dynamic Technologies LLP undertook the task of migrating all existing customizations from the Retail SDK to the new Commerce SDK, ensuring that the client's system was fully updated and optimized for the latest version of Microsoft Dynamics 365 Commerce.
Technical Challenges:
With the release of Commerce version 10.0.28, Microsoft mandated the transition from the Retail SDK to the Commerce SDK. The Retail SDK, used in earlier versions of Commerce, was deprecated, and the new Commerce SDK introduced changes and enhancements. This migration was necessary for compatibility with Commerce version 38 and future updates.
Key challenges included:
- API Deprecation: Several APIs and functionalities from the Retail SDK, such as the price engine, were deprecated in the Commerce SDK. This required rewriting custom code to replace deprecated APIs with their Commerce SDK counterparts.
- Customization Adaptation: The existing customizations built on the Retail SDK needed to be adapted and reworked to ensure seamless integration with the new Commerce SDK functionalities.
These challenges involved significant technical effort to ensure that the migrated system met the new SDK's requirements and continued to function effectively.


Business Challenges :
The migration from Retail SDK to Commerce SDK was not only a technical undertaking but also posed several business challenges:
- Operational Continuity: With over 100 retail outlets and a robust eCommerce presence, ensuring that the migration process did not disrupt the client's daily operations was crucial. Any downtime or issues during the transition could have significantly impacted their retail and online sales.
- Customer Experience: The client needed to maintain a seamless customer experience throughout the migration process. This involved ensuring that their sales channels, including both physical stores and eCommerce platforms, continued to operate smoothly without any interruptions or performance degradation.
- Customization Impact: The client had invested in extensive customizations with the Retail SDK. The migration required careful handling to preserve these customizations and ensure they continued to meet the client’s specific business needs in the new Commerce SDK environment.
- Future Scalability: The migration was not just about updating the system but also about preparing it for future growth. The new Commerce SDK needed to support the client’s ongoing expansion plans and adapt to future enhancements in Microsoft Dynamics 365 Commerce.
Our Step-by-Step Approach to D365 Consultation
Leverage our strategic approach to optimize your ROI on Microsoft D365 data consultation as experts guide you smoothly from start to finish to match services that fit your business needs.
- Current System Evaluation : We conducted a comprehensive evaluation of the client's existing system to understand the scope of customizations and integrations built on the Retail SDK. This involved mapping out all custom code, functionalities, and dependencies.
- API Analysis : We reviewed the deprecated APIs in the Commerce SDK and identified the specific customizations that relied on these outdated functions. This included components like the price engine, which required significant updates.
- Compatibility Assessment: : We assessed the compatibility of the client's customizations and integrations with the new Commerce SDK. This included analyzing how the new SDK features and capabilities could be leveraged to enhance or replace existing custom functionalities.
- Impact Analysis: : We evaluated the potential impact of the migration on business operations, including the need for any adjustments to business processes or user training to accommodate the changes introduced by the Commerce SDK.
- Migration Planning : Based on the assessment, we developed a detailed migration plan that outlined the steps required to transition from Retail SDK to Commerce SDK, including timelines, resource allocation, and risk mitigation strategies.
Migration Plan:
To ensure a smooth transition from the Retail SDK to the Commerce SDK, we developed a comprehensive migration plan that included the following steps:
Pre-Migration Preparation:
- Backup and Documentation : Back up the existing Retail SDK environment and document all customizations, configurations, and integrations.
- Environment Setup : Prepare the target environment for Commerce SDK, including hardware and software requirements.
Customization Rewrite:
- Code Updates : Rewrite custom code that relies on deprecated APIs to use the new Commerce SDK functions.
- Feature Adaptation : Update custom features and processes to leverage new Commerce SDK capabilities.
System Configuration :
- System Configuration : Configure the Commerce SDK to meet the client’s business needs and align with existing processes.
- Data Migration : Execute data migration, ensuring data is accurately transferred and validated in the new environment.
Integration and Development :
- Integration Testing : Reconfigure and test integrations with third-party systems or other applications to ensure compatibility.
- Enhancements : Develop and integrate any new features required by the client.
Functional Testing :
- Unit Testing : Test individual components and customizations to ensure they function properly with the Commerce SDK.
- Integration Testing : Validate that system integrations operate correctly in the new Commerce SDK environment.
Tools and Technologies:
During the migration from the Retail SDK to the Commerce SDK in Dynamics 365, several tools, frameworks, and technologies are utilized to ensure a smooth transition. Here are the key components involved:
Tools:
- Visual Studio Code : A lightweight, powerful code editor used for developing and debugging extensions.
- Microsoft Azure DevOps : Provides version control, build, and release management to streamline the development process1.
- Git : A distributed version control system used for tracking changes in the source code during development.
- MSBuild : A build tool used to automate the process of creating a software build.
Frameworks and Libraries :
- .NET Framework: : The primary framework for developing applications and extensions within the Commerce SDK.
- NuGet Packages : Used for managing dependencies and libraries required for the development.
- ASP.NET:A framework for building web applications and services.
Development Environment :
- Development Environment : A cloud-based collaboration portal that provides a unified environment for managing Dynamics 365 implementations.
- Commerce Scale Unit : A component that supports the deployment of Commerce runtime (CRT) and channel database extensions.
These tools and technologies collectively facilitate the migration process, ensuring that extensions are developed, tested, and deployed efficiently. If you have any specific questions about any of these tools or need further details, feel free to ask!
Process
Environment Setup
- Development Environment : We set up a new development environment with Visual Studio Code, Git, and Azure DevOps for version control and CI/CD pipelines.
- Commerce Scale Unit (CSU) : Deployed the Commerce Scale Unit to support the deployment of Commerce runtime (CRT) and channel database extensions.
Code Migration
- Copying Extensions : We transferred the content of the extension package directory from the Retail SDK to the new Commerce SDK project.
- Updating References : All references in the code were updated to use the new Commerce SDK packages. This included updating NuGet packages and ensuring compatibility with the .NET framework.
Customizations and Integrations
- Custom POS Extensions : Migrated custom Point of Sale (POS) extensions, ensuring they were compatible with the new SDK. This involved rewriting some parts to align with the new architecture.
- API Integrations : Updated API integrations to work with the new Commerce SDK. This included changes to the proxy and channel database extensions.
Testing and Validation
- Unit Testing : Conducted extensive unit testing to ensure that all functionalities worked as expected in the new environment.
- Integration Testing : Performed integration testing to validate the interactions between different components and systems.
- User Acceptance Testing (UAT) : Engaged end-users to perform UAT, ensuring that the migrated system met business requirements and user expectations.
Deployment and Rollout
- Staged Rollout : Implemented a staged rollout to minimize disruption. This involved deploying the new Commerce SDK in phases, starting with a pilot group before a full-scale rollout.
Unique Approaches
- Independent Extensions : Leveraged the ability to develop and deploy extensions independently, which simplified the upgrade and deployment process.
- Sealed Installers : Used the new sealed installer framework to isolate base and extension installers, reducing the need for combined packaging.
- Continuous Integration/Continuous Deployment (CI/CD) : Implemented CI/CD pipelines using Azure DevOps to automate the build, test, and deployment processes.
Team Involvement:
Project Manager
- Project Manager : Oversaw the entire migration project, managed timelines, coordinated between teams, and ensured that the project stayed on track.
- Collaboration : Facilitated regular meetings, tracked progress, and addressed any roadblocks.
Solution Architect
- Responsibilities : Designed the overall architecture for the migration, ensuring that the new system met all business requirements and was scalable.
- Collaboration : Worked closely with developers and business analysts to align technical solutions with business needs.
Developers
- Responsibilities : Carried out the actual migration tasks, including code migration, updating references, and implementing customizations.
- Collaboration : Used Git for version control and Azure DevOps for CI/CD pipelines, ensuring seamless integration and deployment.
Business Analysts
- Responsibilities : Gathered requirements, documented existing processes, and ensured that the new system met business needs. Conducted thorough testing, including unit tests, integration tests, and user acceptance tests (UAT).
- Collaboration : Acted as a bridge between the technical team and business stakeholders, facilitating clear communication. Worked closely with developers to identify and resolve issues, ensuring a smooth transition.
Results :
Key Results Achieved
- Deployment Time : Reduced by 30%, allowing for quicker updates and feature rollouts.
- Maintenance Costs : Decreased by 25%, thanks to the simplified update process and reduced need for code merges.
- User Satisfaction : Increased by 20%, as measured by user feedback and satisfaction surveys conducted post-migration.
Migration Success Summary :
The migration from the Retail SDK to the Commerce SDK was a significant success, delivering substantial value to the client. Here’s a recap of the key achievements and benefits:
Key Achievements
- Improved Performance : The migration led to faster deployment times, enhanced system stability, and optimized resource utilization, resulting in a more efficient and reliable system.
- Reduced Costs : Maintenance costs were reduced by 25% due to the simplified update process and efficient development practices. The minimized downtime further contributed to cost savings.
- Enhanced User Experience : Users experienced a seamless transition with minimal disruption. The updated extensions and integrations provided a more robust and feature-rich experience, leading to a 20% increase in user satisfaction.
Value Delivered to the Client
- Operational Efficiency : The streamlined architecture and independent extension deployment significantly improved operational efficiency, allowing for quicker updates and feature rollouts.
- Cost Savings : The reduction in maintenance costs and efficient resource utilization translated into substantial cost savings for the client.
- User Satisfaction : Comprehensive training and support ensured that users were comfortable with the new system, enhancing overall satisfaction and productivity.
Overall Impact :
The migration project not only met but exceeded the client’s expectations, delivering a modern, efficient, and user-friendly system that supports their business needs and growth. The successful transition to the Commerce SDK has positioned the client for future scalability and innovation.
Let’s talk something great together
INDIA
A 1018 Sidhhi Vinayak Business Tower Nr. Adani School Makarba, Ahmedabad, Gujarat 380051