Operation: FinishOrder

The request comprises a vco:FinishOrderRequest element; the response comprises a vco:FinalOrderResponse element. The vco:FinishOrderRequest element is of type TransactionRequestType; the vco:FinalOrderResponse element extends TransactionResponseType with the vco: OrderHeader element as well as the vco:OrderResponseLine element which can occur as often as required. The OrderHeader element has two child elements: vco:OrderID and cbc:IssueDate.

Rule: FinishOrder

A Veloconnect-compliant server responds to a FinishOrderRequest as follows:

  1. Determined as part of the request is whether a related transaction instance exists. If not, then ResponseCode 420 is returned. On existence of a transaction instance not in state 2, processing of the request is aborted, and ResponseCode 430 is returned.

  2. The order stored in the transaction context is relayed to the seller's merchandise management system, and triggered there if the element IsTest is missing in the request, or has the status false. If the merchandise management system assigns the order an identifier allowing the order to be tracked, and the server can determine this identifier, it must be used as vco:OrderID in the vco:OrderHeader element. Furthermore, the current date is to be used as a cbc:IssueDate element in the vco:OrderHeader element.

  3. If the IsTest element in the request has the status true, it is necessary to ensure that no order or delivery is triggered.

  4. From the transaction context, the OrderResponseLine elements are inserted into the response, which is supplied with ResponseCode 200 to the client. The transaction instance is switched to state 100 (final state).