Note: This release is in preview. Features described here don’t become generally available until the latest general availability date that Salesforce announces for this release. Before then, and where features are noted as beta, pilot, or developer preview, we can’t guarantee general availability within any particular time frame or at all. Make your purchase decisions only on the basis of generally available products and features.

ccrz.ccLogicCartPlace.process

Overrides the base ccrz.ccLogic.process method, sets up an intermediate working map, and invokes the other methods for this class.

Compatibility

This reference applies to:

Release Managed Package Version API Version
B2B Commerce for Visualforce Winter ’21 4.13 12
B2B Commerce for Visualforce Spring ’20 4.12 11
B2B Commerce for Visualforce Summer ’19 4.11 10
B2B Commerce for Visualforce Spring ’19 4.10 9
B2B Commerce for Visualforce Summer ’18 4.9 8

Signature

global virtual Map<String, Object> process(Map<String, Object>)

Inputs (Required)

This method accepts a Map<String, Object>, which was the input data for the ccrz.ccApiCart.place method.

Logic Performed

This method invokes other methods of the ccrz.ccLogicCartPlace class in the following order, depending on which version of the managed package you're using:

B2B Commerce for Visualforce Winter ’21 (managed package version 4.13 and API version 12)
  1. processInput
  2. checkCartForAsyncPlace

    If the ccrz.ccApiCart.PLACE_ASYNC key is true after this method completes, the ccrz.ccApiCart.placeAsync global method executes instead. The rest of the methods in this logic service provider class are skipped.

    Note

  3. retrieveCartHeader
  4. validateCartPricing
  5. processAddresses
  6. createOrderHeader
  7. retrieveCartItems
  8. processCartItems, which calls into createOrderItem
  9. performDMLOnOrder
  10. processOrderGroups
  11. performDMLOnOrderItems, which calls into insertMajorItems and insertMinorOrderItems
  12. processOrderTerms
  13. closeCart
  14. createStoredPayments
  15. processSubscriptions
  16. processTransactionPayments
  17. changeOrderStatus
  18. processInvoices
  19. refetch
  20. prepReturn
B2B Commerce for Visualforce Spring ’20 (managed package version 4.12 and API version 11) or earlier
  1. processInput
  2. placeOrder
  3. prepReturn

Outputs

This method creates a Map<String, Object> that contains a copy of the original input data. This method passes this working map through the inner methods, and returns the final map after all inner methods have completed.

This method handles exceptions differently depending on which version of the managed package you're using:

B2B Commerce for Visualforce Winter ’21 (managed package version 4.13 and API version 12)
This method rethrows any ccrz.ccLogicCartPlace.CartPlaceException instances that occur during the logic chain, which ends processing and rolls back transactions. The ccrz.ccLogicCartPlace.handleCartPlaceException method catches these exceptions.
B2B Commerce for Visualforce Spring ’20 (managed package version 4.12 and API version 11) or earlier
This method doesn't catch any exceptions that occur as the method executes.