Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Note: The below API endpoints are written considering the Object-Oriented implementation of Shopping Cart. We need to identify the best way to store the shopping cart object as the user session won't be in the picture here. One way to introduce a new table to keep the cart object with a unique cart ID. For better performance cache can also be used efficiently. The cart object should have the last updated timestamp so that a clear policy to remove the abandoned cart can be imposed.


Sr No.API EndpointDescriptionTasksStatusPhase
Shopping Cart
1POST /cartsTo create a cart.
PlanningI
2
GET
PUT /carts/{cartReference}
PlanningI
To update the cart.


3
DELETE
GET /carts/{cartReference}To get the complete cart.
PlanningI
4POST /carts/{cartReference}/
itemsFor adding products and other order adjustments like shipping charges, tax, etc
deleteTo remove items from the cart.
PlanningI
5
GET /carts/{cartReference}/itemsPlanningI6PUT /carts/{cartReference}/items/{itemSeqId}PlanningI78
DELETE /carts/{cartReference}/items/{itemSeqId}PlanningI
POST /carts/{cartReference}/promotionsTo apply the promo code on the cart.
PlanningI
9
6DELETE /carts/{cartReference}/promotions
/{itemSeqId}11POST /carts/{cartReference}/items/order/{orderId}This will add all the items of a given past order to the cart.PlanningICheckout1POST /carts/{cartReference}/ship-groupsTo create a new ship group in case of split shipment.PlanningI2GET /carts/{cartReference}/ship-groupsTo get the ship groups with items.PlanningI3
To remove an applied promotion.
PlanningI
10POST /carts/{cartReference}/items/shopping-list/{shoppingListId}This will add all the items of a given shopping list to the cart.PlanningI
7POST /carts/{cartReference}/
ship-groups/{shipGroupSeqId}/
shipping-
addressTo add the shipping address.
information

PlanningI
4POST /carts/{cartReference}/ship-groups/{shipGroupSeqId}/itemsTo move items from one ship group to another in case of split shipment.PlanningI5
8POST /carts/{cartReference}/
ship-groups/{shipGroupSeqId}/
shipping-
instructionsTo add special instructions, gift message in case of a gift, split preferences(ship all items together or ship items when available)PlanningI6PUT /carts/{cartReference}/ship-groups/{shipGroupSeqId}/shipping-instructionsTo update special instructions, gift message in case of a gift, split preferences(ship all items together or ship items when available)PlanningI7GET /shipping-methods}To get the shipping
methods
.PlanningI8POST /carts/{cartReference}/ship-groups/{shipGroupSeqId}/shipping-methodTo add/update the shipping method.


PlanningI
9GET /
payment-optionsTo get the list of supported payment options.PlanningI10POST /
carts/{cartReference}/payment-methods
To add a payment method. The combination of the gift card and other payment methods are supported as of now.PlanningI




10GET carts/{cartReference}/totals
11POST /checkoutTo place the order.PlanningIAnonymous Checkout1POST /carts/{cartReference}/guest/personal-informationSet the anonymous user's detail for the order. Name, phone, email, etc.PlanningI2PUT /carts/{cartReference}/guest/personal-informationPlanningI3POST /carts/{cartReference}/guest/shipping-addressPlanningI4PUT /carts/{cartReference}/guest/shipping-addressPlanningI5POST /carts/{cartReference}/guest/payment-informaionPlanningI6PUT /carts/{cartReference}/guest/payment-informaionPlanningI