Order on Behalf Of (OOBO) , also known as Order Entry, is a Salesforce feature that streamlines the purchasing process by enabling customer service employees to place orders on behalf of shoppers.
The OOBO feature only supports credit cards supported by the SFCC cartridge that does not require additional verification.
This feature depends on the release of the OMS OOBO support package by Salesforce. Contact Salesforce for questions about the availability.
Before you enable OOBO, you must:
- Have a fully functional Salesforce OMS Org that is connected to your Salesforce Commerce Cloud (SFCC) storefront.
- Install and set up the Adyen Salesforce OMS package version 2.1.0 or later.
- Have a Web Service user with the API PCI role.
- Install and set up OOBO in Salesforce .
Step 1: Provision Cart and Checkout Data connection type
- In your Salesforce Org, go to Setup and search for B2C Commerce Connections.
- Click Edit for the SFCC storefront that you want to enable OOBO.
- Move Cart and Checkout Data from Inactive Connection Type to Selected Connection Type and select it.
- Click Save. After a few minutes, the connection type status will change to provisioned.
Step 2: Associate a payment gateway to your B2C Commerce WebStore
In your Salesforce OMS Org, open the Developer Console
Run the following query to get the WebStore Id for your SFCC storefront:
SELECT Id, ExternalReference, Name, Type, DefaultTaxLocaleType, CurrencyIsoCode, DefaultLanguage, SupportedLanguages, SupportedCurrencies FROM WebStore
In the response, check the
Namefields to identify the Id that corresponds to your SFCC storefront and save it.
Make sure that the
SupportedCurrenciesfields are populated.
Make sure that the
DefaultLanguagefield matches the Default Locale of your SFCC storefront.
In your Developer Console, run the following query to get the Payment Gateway Id used for your SFCC storefront:
SELECT Id, Name, PaymentGatewayName, PaymentGatewayProviderId, Status FROM PaymentGateway
The correct Id has Adyen for
PaymentGatewayName. You set your Payment Gateway Name when you set up OMS.
In your Developer Console, create a
StoreIntegratedServiceentity with the WebStore and Payment Gateway Ids you obtained:
StoreIntegratedService sis = new StoreIntegratedService( StoreId = 'YOUR_WEBSTORE_ID', Integration = 'YOUR_PAYMENT_GATEWAY_ID', ServiceProviderType = 'Payment' ); insert sis;
Step 3: Configure the OOBO flow
The flow requires a shopper
accountId to start.
- In your Salesforce OMS Org ,from Setup, enter Flows in the search field.
- Select the OOBO Flow.
- Toggle the Toolbox button that is on the top left side of the page.
- Under Manager, search for Gateway and select the PaymentGateway Id variable.
- In the window, fill Default Value with the Payment Gateway Id you obtained in Step 2 and click Done.
- Click Save As and select Save As flow and Save As a new version.
- Click Activate.
The following are common problems and ways to troubleshoot if you experience issues when executing the OOBO flow.
Problems related to the locale
Check if the value for the
DefaultLanguage field of your WebStore matches the default locale in your SFCC.
If you get the This feature is not currently enabled for this user message, your user needs the Order Management Operations Manager permission.
If you get the Tenant not validated for this Tenant Group message, check if your Cart and Checkout Data connection is set up correctly.
If you get the No available delivery methods message, make sure that you set up all active shipping methods for the product currency you are using in Salesforce.
If you get a gateway error when placing the order, make sure that you are using the right payment gateway Id and that your adapter configuration is correct.
Missing merchant account role
Assign the API PCI role to your API credential.