---
title: CreateOrderRequestCustomerOrder pipeline
slug: configured-commerce/docs/createorderrequestcustomerorder
docTags: 
createdAt: 2026-08-13T10:46:28.000Z
---

| Order | Pipe                      | Description                                                                                                                                                                              |
| ----- | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 100   | GetOrCreateCustomerOrder  | If PunchOutSession.CustomerOrder is not null, use PunchOutSession.CustomerOrder. If PunchOutSession.CustomerOrder is null, create a new CustomerOrder.                                   |
| 200   | PopulateBillToAndShipTo   | Uses the GetOrderRequestCustomer pipeline to determine the CustomerOrder.Customer and uses the SetBillTo pipeline to update the CustomerOrder.                                           |
| 300   | PopulateCurrency          | Uses the GetOrderRequestCurrency pipeline to determine the CustomerOrder.Currency.                                                                                                       |
| 400   | PopulateShipVia           | Uses the PunchOutOrderRequest.PunchOutOrderRequestExtrinsics.ShipVia and CustomerOrder.Customer.ShipCode to determine CustomerOrder.ShipVIa.                                             |
| 500   | PopulateRequestedShipDate | Uses the PunchOutOrderRequest.PunchOutOrderRequestExtrinsics.RequestedShipDate to determine CustomerOrder.RequestedShipDate.                                                             |
| 600   | PopulateAdditionalValues  | Populates additional properties on the CustomerOrder.                                                                                                                                    |
| 700   | PopulateCustomProperties  | Uses PunchOutSettings.OrderCustomPropertyFields and PunchOutOrderRequest.PunchOutOrderRequestExtrinsics to add custom properties to CustomerOrder.                                       |
| 800   | PopulateOrderLines        | Uses the GetItemOutOrderLine to create OrderLine and uses the AddCartLine pipeline to update the CustomerOrder.                                                                          |
| 900   | ValidateCustomerOrder     | Validates CustomerOrder and PunchOutOrderRequest property values and adds necessary messaging to PunchOutOrderRequest.PunchOutOrderRequestMessages.                                      |
| 1000  | RecalculateCart           | Uses the AcceptPriceProvided pipeline to determine if AcceptPriceProvided. If AcceptPriceProvided then bypass handler. Uses the GetCartPricing pipeline to update CustomerOrder pricing. |
| 1100  | UpdateCart                | Uses the ICartService.UpdateCart to update the CustomerOrder.                                                                                                                            |
