Store owner can choose carrier groups that will be sent to Pacejet to calculate shipping rates for each store.
- CASE OF STUDY -
Pacejet service is an enterprise multi-carrier shipping software our client uses to manage his stores' shipping of orders.
What is Pacejet
Pacejet provides a list of carries the client wants to use for his stores and calculates live shipping rate quotes using order data.
MPS developed the private Custom Shipping Rates Integration Shopify application for 5 client’s stores. The application outputs on Shopify Checkout page calculated live shipping rate quotes from Pacejet in additional to flat rate shipping prices on lightweight products from the Shopify store. Embedded Shopify application integrates Pacejet functionality to the Shopify Checkout page via API, allows the client to manage dimensions of each product variant item, carrier groups, and custom box in an easy way.
During the first discussion of the project requirements the task of our team was to add the ability to manage dimensions of product variants, send an order, buyer data and store address to Pacejet and output calculated by Pacejet live shipping rates to Shopify Checkout page.
The client confirmed with Pacejet that they return calculated shipping rates less than in 10 seconds (Shopify requirement).
A great advantage of working with the client is his professional technical background and skill to describe requirements in an accessible and understandable way for business analytics.
During the development process, we proposed to add the search of variants to the application and the client requested to add import/export of CSV file with dimensions of product variants.
We proposed and implemented a new algorithm of interaction with Pacejet when there was found Pacejet didn’t return calculated shipping rates in 10 seconds Shopify limit. The carriers the client uses were divided into groups and requests to Pacejet to calculate rates were sent for each group in parallel to reduce the time of Pacejet’s answer.
Later the client requested to use different sets of carrier groups in different stores. We proposed to add the ability to choose needed carrier groups to the application and implemented it.
When the application was ready the client requested to add the dimensions and weight fields for cases. The application should allow us to manage them and send to Pacejet for ordered products. Pacejet was going to add functionality to calculate rates depending on the number of product items - when a number of products corresponds to the quantity in a case then data of case are used to calculate shipping rates.
The client requested to add address validation when the application was installed to 5 client’s stores. And to send to Pacejet different flags depending on the address is Residential or not.
- We needed to develop and implement the new algorithm into the ready code to reduce time of receiving calculated shipping rates from Pacejet because Pacejet was not able to reduce time on their side.
- Each time the application was ready to be deployed to Live client’s server - the client added new requirements to implement.
- Delay which was caused by the Pacejet slow communication so we had to wait for their answers to continue the work.
- A lot of time was spent checking that clients issues were caused on Pacejet side.
- Initially, the Client was going to setup server and install SSL certificate himself. We have waited for a long time for this to happen. As a result the Client agreed to involve our DevOps engineer.
As we got fully described requirements and the app should go live when it’s absolutely ready - we have decided to use waterfall model. We used JIRA for project management and Confluence for collaboration on the project.
The Fixed Price pricing model was chosen for the working process. The price was updated when new requirements were added.
Before proposing solution to the Client we analyzed the project needs from features and technology perspectives and estimated an approximate cost. After that, we sent a proposal that completely satisfied the Client's needs. Next, we carried out a whole complex of work on project management, business analysis for new features, frontend, backend development and testing.
- develop new feature and perform regression tests
- work closely with our Client to define what side issue they have.
- Project Manager/Business analyst
- Frontend/Backend Developer
- QA Engineer
- Shopify API
- Pacejet API
- The application development
- New features implementation
- App server setup
The application outputs calculated live shipping rate quotes from Pacejet in additional to flat rate shipping prices on lightweight products from Shopify store.
The application will check address on Checkout page and will send to Pacejet different flags depending on the address is Residential or not.