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.
With our OMS package, you can place OOBO orders with card payment methods, or use Pay by Link to accept payments using an Adyen-hosted payment page, and offer the option to pay with more payment methods.
Requirements
Requirement | Description |
---|---|
Integration type | Make sure that you have integrated with the following: |
API credential roles | Make sure that you have the following role:
|
Customer Area roles | If you want to offer Pay by Link, make sure that you have one of the following roles:
|
Webhooks | Subscribe to the following webhook:
|
Limitations | OOBO with Pay by Link is only available on v3.2.0 and later versions of our OMS package, and supports limited payment methods. |
Setup steps | Before you begin:
|
Supported payment methods
The OOBO feature supports:
- Credit cards: take OOBO orders with credit cards supported by the SFCC cartridge and do not require additional verification.
- Pay by Link: accept payments using payment links for iDeal, Apple Pay, PayPal, and cards supported by the SFCC cartridge.
How it works
Learn more about how to place orders on behalf of your shoppers in the Salesforce documentation. In the OOBO flow, you place orders on behalf of your shoppers by entering their card details or sending them a payment link.
Read about the payment flow for OOBO with cards in Salesforce documentation.
Set up OOBO for cards
- Follow the Salesforce documentation to configure OOBO .
- Follow the Salesforce documentation to install and set up the Salesforce External Payments Package .
- Provision cart and checkout data connection type.
- Associate a payment gateway to your B2C Commerce WebStore.
Provision cart and checkout data connection type
- In your Salesforce OMS Org, go to Setup and search for B2C Commerce Connections.
- Click Edit for the SFCC storefront for which 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.
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
ExternalReference
andName
fields to identify the Id that corresponds to your SFCC storefront and save it. -
Make sure that the
CurrencyIsoCode
,DefaultLanguage
,SupportedLanguages
, andSupportedCurrencies
fields are populated. -
Make sure that the
DefaultLanguage
field 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, 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
StoreIntegratedService
entity 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;
Assign permissions
This step is only required if you want to support Pay by Link payments with OOBO.
To let your customer service employees use the OOBO feature, assign the External Credential you created to them.
Update custom metadata fields to enable Pay by Link
This step is only required if you want to support Pay by Link payments with OOBO.
- In your Salesforce OMS Org, Go to Setup > Custom Code > Custom Metadata Types.
- Scroll down to Adyen Adapter Layout, and select Edit.
- Drag and drop the Payment Link Expiry Duration, Payment Link Return URL, and Payment Link Theme ID fields to the Adyen Adapter Layout.
- Select Save.
- Select Manage Adyen Adapters.
- Next to Adyen Default, select Edit.
-
Fill the following fields:
Field Description Payment Link Expiry Duration The duration after which a payment link expires. The default value is 24 hours. Payment Link Return URL The URL to which your shoppers should be redirected after completing the payment on the Adyen-hosted payment page. Payment Link Theme ID The ID of the Pay by Link theme. When not specified, the default theme set in your Customer Area will be used. - Select Save.
Add payment links
This step is only required if you want to support Pay by Link payments with OOBO.
To show the payment links on the order summary pages, configure your order summary page layout.
- In your Salesforce OMS Org, Go to Setup > Object Manager.
- Select Order Summary.
- Select Page Layouts, and then select Order Summary Layout.
- In the layout editor, drag the Payments links field to the Related List section.
Add configuration to manage payment links
This step is only required if you want to support Pay by Link payments with OOBO.
Add configuration to add buttons to your order summary page that lets you expire and regenerate payment links.
- On the Order Summary Layout page, next to the Payment Links related list, select the wrench icon.
- Expand the Buttons section.
- Move the Expire Link and Regenerate Link buttons from Available Buttons to Selected Buttons.
- Selected OK.
- Select Save to save your changes to the page layout.
After you have set up the buttons, you can manage your payment links from the OMS.
After a payment link is created, in Salesforce, navigate to the order summary page. On this page, you can select either:
- Expire: all payment links associated with the order will be expired, and shoppers cannot continue to make payments using the previously generated links.
- Regenerate: all payment links associated with the order will be expired, and a new payment link will be generated.
Troubleshooting
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.
Missing permissions
If you get the This feature is not currently enabled for this user message, your user needs the Order Management Operations Manager permission.
Invalid Tenant
If you get the Tenant not validated for this Tenant Group message, check if your Cart and Checkout Data connection is set up correctly.
Delivery methods
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.
Gateway error
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
If the API Logs in your Customer Area > Developers > API Logs display the 403 HTTP response, your API credential is missing the required account role.
Assign the API PCI Payments role to your API credential.