Reference > Shop flow URLs > Order Management subsystem URLs > Orders URLs
Submits an order for processing. The order must have been locked by the OrderPrepare command.
- The fully qualified name of the WebSphere Commerce Server and the configuration path.
name-value pair with the & character. For a detailed description of the parameters and their values, see the list entitled Parameter values." />
- Specifies the logon ID of the user on whose behalf the command runs; only a person with the authority to process orders can specify this parameter.
- Same as forUser, but identifies the user by the internal user ID as found in the USERS table.
- Sets or resets the preferred language for the duration of the session; the supported languages for a store are found in the STORELANG table.
- Specifies the reference number of the store with which the order is to be placed. This value is ignored unless an error occurs before the order is resolved. It is used only to call the correct store's exception handler.
- Required: Specifies the reference number of the order to be processed. This parameter can be repeated.
- Specifies a user ID to be sent with the order-transfer request.
- Specifies a password for the user ID specified by the externalUserId parameter.
- Specifies the mode of transfer to an external system. A value of 0 transfers the order without payment information (shopping-cart transfer); a value of 1 transfers the order with payment information (purchase-order transfer). The default value is 0.
- Specifies the reference number of the address to bill.
- field1, field2, and field3
- Specify customizable fields.
- notify_[ msgtype]_ transportname_ attributename
- Specifies the configuration attributes that apply to order notification for a given message type and message transport. Message type is optional. If it is not specified, the configuration attribute applies to all message types.
- Send the "order received" e-mail notification for orders processed by this command to 2 e-mail addresses, email@example.com and firstname.lastname@example.org:
notify_ OrderReceived_ EMailSender_recipientemail@example.com,firstname.lastname@example.org
- Send all types of order e-mail notifications to email@example.com:
where EMailSender is from TRANSPORT.NAME.
To send an e-mail notification to a guest customer, then capture the e-mail address of the guest customer. Set the e-mail address as the value of the notify_[ msgtype]_ transportname_ attributename parameter .
- Specifies whether the store is notified when the order processing is complete. E-mail notifications are sent only when WebSphere Commerce is configured with WebSphere Commerce Payments. A value of 1 specifies that the store should be notified; a value of 0 specifies that the store should not be notified.
- Specifies whether the customer is notified when the order processing is complete. E-mail notifications are not sent if PrimePaymentCmd fails. A value of 1 specifies that the customer should be notified; a value of 0 specifies that the customer should not be notified.
- Defines the behavior of the command if the order total expires or an order item's fulfillment center changes during inventory allocation. Order total expires if the current time is greater than or equal to the last update timestamp on the order plus the number of seconds specified in the QUOTEGOODFOR column of the STORE table. This parameter may have three values:
- Always proceed with processing the order after recalculating order total.
- Proceed with processing the order if the recalculated order total is unchanged or is less than the previous order total. Otherwise, redirect to a URL specified by the quoteExpiredUrl.
- Always redirect to the URL specified by the quoteExpiredUrl parameter.
- Specifies the URL to which to redirect if the order total expired in agreement with the expiry policy specified by the quoteExpiryPolicy parameter.
- Specifies whether the customer is notified when the order is successfully submitted for processing. A value of 1 specifies that the customer should be notified; a value of 0 specifies that the customer should not be notified. The default is 0.
- Specifies the URL to which to redirect when the estimated availability time plus the shipping offset for any order item moves into the future (as a result of allocating or backordering inventory) by more than the time interval specified by the maxAvailabilityChange parameter. This parameter is ignored if ATP inventory allocation is not enabled.
- Specifies the time interval, in seconds, mentioned in the availabilityChangeURL parameter description. The default value is 3600 (one hour). This parameter is ignored if the availabilityChangeURL parameter is not specified, or if ATP inventory allocation is not enabled.
- Specifies the URL to which to redirect if any of the items in the order cannot be allocated or backordered. This parameter is ignored if ATP inventory allocation is not enabled.
- Specifies the identifier of a Terms and Conditions object (refer to the TERMCOND table). If this is specified and if it identifies a PaymentTC, and if that PaymentTC specifies a memberId and an address nickName (refer to the PaymentTC mapping), then the memberId and address nickName are used to determine the billing address, in which case the billToAddressId parameter is ignored.
Notes about payments:
Notes about order notification: If configure order notification:
- Enable outbound messaging.
- Create templates for composing order notification messages.
- Controls whether the relType attribute values for "selection" OrderQuotationRel objects that identify the order being processed with their childId attribute must be changed to "submission". A value of 0 does not change the relType attributes of the OrderQuotationRel objects in the list to indicate "submission"; a value of 1 does change it to indicate "submission". The default value is 0.
- Controls whether quantities of order items in the selection parent order are reduced by the quantities of order items in the order being processed. A value of 0 does not reduce parent quantities; a value of 1 reduces parent quantities. The default value is 0.
The parent order is updated only when the status attribute is P or E.
Only those order items that have the same CatalogEntryId, SpecifiedItemId, and correlationGroup attribute values as the items in the order are updated.
- Controls whether order processing continues to the next order when there is a failure in processing one of multiple orders. A value of 0 specifies that the process should not continue; a value of 1 specifies that the process should continue. The default value is 0.
- If not passed, the default value is true. If it is true, PIAdd will be called to add one payment instruction. Otherwise, no payment instruction will be added. If isPIAddNeeded is not passed, or if isPIAddNeeded=Y, policyId is required.
- The meaning of the payMethodId parameter has changed from version 5.x to version 6.x. Older versions used payMethodId to set the payment method ID to add payment instruction. This has been deprecated for more than 2 releases, and was removed from version 6. Now, payMethodId means the payment method ID of the payment instruction to add. It corresponds to the column POLICYNAME of the record in the table POLICY used by this payment instruction.
When creating new WebSphere Commerce Payments Cassettes and new functions, instead use the policyID parameter.
- Sets the payment policy ID. If it is not set, use the default policy ID. It is used only for compatible mode.
- If this parameter is not passed in, the value is 'N.' This indicates that if isPIAddNeeded is Y or not passed in, the payment information for the profile will be queried out and used in the payment protocol data. This is used in quick checkout.
- If isPIAddNeeded is true, sets the billing address Id of the Payment Instruction. If this parameter is not set, it will use the billing address of the order.
- Sets the purchase order number for this order for the group i. If the purchaseorder_id is specified, this value will be replaced.
- Sets the purchase order number for this order for the group i.
- Use this parameter to pass sensitive payment information for payment instructions.
For example, a shopper adds two payment instructions (10001 and 10002). The shopper inputs payment information for a third payment instruction. The shopper clicks the submit order button and is prompted to enter credit card verification information for all three payment instructions. Next, the order is submitted and the OrderProcess command is called. In this example, the relevant parameters are:
This information is passed to the corresponding payment plug-in as extended data for the payment instruction. This data is not persisted.
To use the paymentInstructionId parameter, you must configure the payment plug-in to use synchronous event processing.
The following command processes the placing of an order whose reference number is 3.
Assuming that WebSphere Commerce Payments has been already set up, this command passes the customer's payment information to Payment Manager. The parameter policyId=200 refers to the OfflineCard method which the store model uses by default for WebSphere Commerce Payments.
The DoPaymentMPFCmdImpl class supports an additional parameter called tcId, which is used for specifying the ID of the payment terms and conditions to be used for an order. The terms and conditions must be one of the common payment terms and conditions specified in the contracts associated with the ordered items.
To assist in selecting JSP file of common payment terms and conditions, use the UsablePaymentTCListDataBean. The tcId parameter is mandatory if any of the contracts used for the order items has payment terms and conditions associated with it.
Call OrderCommentRecordContrlCmd to process any order comments from the CSR
If the flag updateChannelId is set:
- Update the order channel Id
Call PIAddCmd to add payment instructions if the remaining amount is greater than zero and if isPIAddNeeded = Y
Call ValidatePaymentMethodCmd to validate any existing PIs for the current order (not bound to "If the flag updateChannelId is set")
if Unified Business Flow is enabled:
- Call BusinessFlowUrlEventCmd (UBF command) to process the order in Unified Business Flow:
- Initialize BusinessFlowEvent
- In BusinessFlowEventListener
- Execute OrderProcessPreApprovalCmd which invokes PreProcessOrderCmd
- Execute OrderProcessCheckApprovalCmd to check whether approval is required
- Execute OrderProcessPostApprovalCmd which invokes ProcessOrderCmd
- Call ProcessOrderCmd directly to process order without Unified Business Flow
Call RaiseOrderEventCmd to raise ORDER_SUBMISSION_EVENT (not bound to "Otherwise")
- If the order is not locked, the command throws the ECApplicationException specifying the OrderUnlockErrorView command.
- If the customer typed incorrect data, the command throws the ECApplicationException specifying the BadOrderDataErrorView error view command to notify the customer.
- If the order is not pending, the command throws the ECApplicationException exception specifying the OrderNoneErrorView command.
- If any of the contracts used by the order are not valid, the command throws the ECApplicationException.
Order Management subsystem
Order Management subsystem URLs