This is what i am following
1. Add Configurable product in cart.
http://magento-host/index.php/rest/default/V1/carts/mine/items
- method : POST
- Authorization : Bearer <customer token>
- body data : json
{
"cartItem": {
"sku": "HKrh15hc", <product SKU>
"qty": 5,
"quote_id": "75", <Quote ID - Cart ID [see. step 2]>
"product_option": {
"extension_attributes": {
"configurable_item_options": [
{
"option_id": "93",
"option_value": 49
},
{
"option_id": "141",
"option_value": 168
}
]
}
},
"extension_attributes": {}
}
}
Now, this is saving my configurable product in my cart.
2. Get & put Shipping Information.
http://magento-host/index.php/rest/V1/carts/mine/shipping-information
- method : POST
- Authorization : Bearer <customer token>
- body data : json
{
"addressInformation": {
"shippingAddress": {
"region": "MH",
"region_id": 0,
"country_id": "IN",
"street": [
"221,Baker-street (e)"
],
"company": "Lumos",
"telephone": "12345678",
"postcode": "400001",
"city": "Mumbai",
"firstname": "Aditya",
"lastname": "Shah",
"email": "Aditya@Shah.com",
"prefix": "address_",
"region_code": "MH",
"sameAsBilling": 1
},
"billingAddress": {
"region": "MH",
"region_id": 0,
"country_id": "IN",
"street": [
"221,Baker-street (e)"
],
"company": "Lumos",
"telephone": "12345678",
"postcode": "4000001",
"city": "Mumbai",
"firstname": "Aditya",
"lastname": "Shah",
"email": "Aditya@Shah.com",
"prefix": "address_",
"region_code": "MH"
},
"shipping_method_code": "flatrate",
"shipping_carrier_code": "flatrate"
}
}
- Now, this 2nd STEP - Do i need to add shipping and Billing address every-time ?
- Whenever i place a new order with the same customer ?
3. Get payment method.
http://magento-host/index.php/rest/V1/carts/75/payment-methods
- method : POST
- Authorization : Bearer <customer token>
4. Place an order.
http://magento-host/index.php/rest/V1/carts/mine/order
- method : POST
- Authorization : Bearer <customer token>
- body data : json
{
"paymentMethod": {
"method": "checkmo"
}
}
Concern
IN Step -2
- Do i need to add address (Billing and Shipping) every-time to place and order ?
- Is there any thing like pass the address_id so i don't need to add addresses every-time.