Price request

Version: 1.1, Date: 2024-09-03

Revision history

DateVersionDescription
2024-09-021.0Initial version.
2024-09-041.1Servicelevel not passed along anymore
Molleton used via max weight per package

Business process

The customer service / transport team will select the carrier after they created an entry in Navision. They have an good idea (95% of cases ok) on how the order will be packed.

Detailed process

Diagram
  1. Create order
    1. Customer service creates the order in Navision. They enter the expected grote colli, kleine colli, grote pallet and kleine pallet based on the number and size of rolls ordered.
  2. Request price selection by opening URL by Navision:
    • Url:
      • Production: https://stitch.services.shipitsmarter.com/api/customers/indetex/pricing-request/request?environment=production&api_key={{willBeProvided}}&mag={{magazijnOrderNr}}
      • Test: https://stitch.services.shipitsmarter.com/api/customers/indetex/pricing-request/request?environment=test&api_key={{willBeProvided}}&mag={{magazijnOrderNr}}
  3. Retrieve order
    1. Viya requests the order information from Navision.
    2. Url: separate for production and test available at Viya.
      1. Credentials are available.
  4. Create ‘price request’ shipment
    1. Viya will transform the navision order to a shipping object. For now we call it priceRequest
    2. There are some defaults/business logic to be included here like:
      1. Dimensions of packaging: large rols/small rolls/small colli/large colli
      2. maybe some other business rules
    3. If a priceRequest already exists for this order, it will be updated.
      1. If the first label for the shipment has been generated, it cannot be altered anymore.
  5. Forward user to price request page
    1. Indetex CS will open the URL to the price request page
    2. Optional: login if not already logged in
    3. The price request page will show the created shipment and focus on the carrier selection
  6. Select carrier/servicelevel/price etc..
    1. The Indetex Transport team will:
      1. Select carrier/servicelevel/price
        1. Maybe change some handling units/service options/addresses if needed to get a proper price
        2. Later stage: select service options (fragile, insurance, …)
      2. Save the selection
        1. User WILL NOT order the shipment here, only select the carrier/servicelevel/price
  7. Webbook in Viya (shipping module) fires on saving a priceRequest with a new price:
    1. webhook configured to call a Viya endpoint (stitch module) eg: https://indetex.viya.me/api/customers/indetex/carrierprice/confirmselection?pricerequestId=1234
  8. Update order with carrier/servicelevel/price
    1. stitch will collect priceRequest from Viya + order from Navision and update the order in Navision with the selected carrier/price
      1. URL to post the updated order to Navision: same as step 2 but then in body it has a mag:Update tag instead of mag:Read
    2. When the shipment is ordered from the WMS the selected carrier & servicelevel will be used.