We cooperated with an American music company that produces and sells electronic musical instruments.
The challenge was that shopping cart management in Magento is only available via a SOAP API, while Drupal 8 uses REST API. REST API worked in the JSON format, while SOAP API worked in the XML format.
The interaction between these different APIs would create a too complicated logic, making Angular send queries both in XML and JSON, which would significantly slow the website down.
We created a module for Magento that solved these issues. It provided Magento with a REST API, thus making the integration smooth and providing great website speed.
In addition, we took care about user data protection. We created the functionality that allowed each user, even anonymous, to manage their own shopping cart in a very safe way. To achieve this, we used AES encryption for shopping card IDs.
Each shopping cart ID was presented as a code of 32 random symbols, sent to Angular and saved in cookies. When the user makes new operations with the shopping cart, this unique shopping cart ID is sent to Magento and decrypted, so the right shopping cart is used.
The site is a unique combination of Drupal CMS, Magento e-commerce platform, and AngularJS front-end framework. The custom module we've created provides for smooth and high-performance API interaction between Drupal and Magento. In addition, we've secured user personal data using AES encryption and shopping card IDs.
We are not afraid of challenging projects with different CMSs, frameworks, and data formats involved. We will provide website users with great performance and usability anyway!