Loading
Point of Sale
Table of Contents
Select Filters

          No results
          No results
          Here are some search tips

          Check the spelling of your keywords.
          Use more general search terms.
          Select fewer filters to broaden your search.

          Search all of Salesforce Help
          Configure the Salesforce (SF) Order Management System (OMS) in CMS

          Configure the Salesforce (SF) Order Management System (OMS) in CMS

          Discover the steps to configure the Salesforce Order Management System (OMS) in CMS. Point of Sale platform has an inbuilt Salesforce OMS connector. The connector is built on the best practices and collaboration with the Salesforce team.

          Before reading this article, refer to Salesforce (SF) Order Management System (OMS) Integration Guide to learn the integration portion.

          Based on various OMS features and declarative integration paradigms we have the following sections:

          • Connectivity and Authentication
          • Order Search Configuration
          • BOPIS Setup
          • Custom Field Mappings
          • Return Field Mappings
          • Order Field Mappings
          • Digital Wallet Types
          • Additional Payment Types
          • Payment Gateway
          • URL Override
          • Delivery Methods
          • Order Status Mappings
          Note
          Note This connector is compatible with Salesforce REST API version 49.0 and above.

          Prerequisites

          • Refer to POS Access List - URLs and IP Addresses for a list of URLs and IP addresses to be allowlist. This is to enable the necessary communication.
          • If you've yet to set up an Adyen and Point of Sale account, confirm that your StoreIDs are the same for both accounts.
          • If your Point of Sale account is already live but you haven't set up Adyen, confirm that your Adyen's StoreID is the same as your Point of Sale's StoreID.
          • If your Adyen account is already live but you haven't set up Point of Sale, confirm that your Point of Sale's StoreID is the same as Adyen's StoreID.
          • Contact your Customer Success Manager (CSM) to configure an OMS Import Job for each environment.

          Enable CMS Configurations

          Turn on the Generate Order ItemId for SFOMS Order setting in Point of Sale CMS to generate unique orderItemIDs for each product in an order. Failing to turn on this setting may lead to errors in processing split order

          1. In CMS, go to Store Management | Store Settings | System.
          2. Expand Rollout.
          3. Turn on Generate Order ItemId for SFOMS Order.

          Create OMS Configuration

          Now create the OMS configuration.

          1. In CMS, go to Integrations | OMS Configuration.
          2. Fill out the fields.
            Field Required Description Example
            General Settings
            Service Yes

            Set to NetSuite for standard NetSuite implementation, Salesforce OMS for Salesforce implementation, or Custom for merchant-specific customizations.

            If Salesforce is selected, additional configuration is needed for Inventory Configurations.

            If using the order SPI, a custom configuration isn't needed. The merchant is to process the order JSON and assign fulfillment workflows accordingly, by referring to the fulfillmentTypes and subFulfillmentTypes.

            NetSuite, Salesforce OMS, Custom
            Error Reporting No Functionality has been moved to Advanced > Monitoring Learn more N/A
            Order Statuses to Process No This field is deprecated, don't use it. N/A
            Connectivity and Authentication
            Username Yes The username of the merchant's SF OMS account must be an integration account, rather than an individual user. Be aware of password reset cadences, as this can lead to inventory availability errors. username123
            Password Yes The password of the SF OMS account. password123
            Client ID Yes The client ID of the SF OMS account. SDOKWmwe123.sadAJS
            Client Secret Yes The client secret of the SF OMS account. 456xyz
            Environment No The environment of the account. TEST, PRODUCTION
            API version No The API version. The current recommended setting is v51.0. v51.0
            Query API version No The query API version. The current recommended setting is v51.0. v51.0
            Order Search Configuration
            Enable No Activate to configure the fields in this section. Deactivating it would close all the fields in this panel N/A
            Currency Code No Field filters search results by currency code and map to the OrderSummary CurrencyIsoCode in the SF OMS. US Dollar (USD)
            Sales Channel IDs No Filter search results by a list of Sales Channel IDs; should map to OrderSummary SalesChannelIDs in Salesforce OMS 0000000123abc
            Store ID No Field filters search results by a store ID OMS Field. For this filter to work, this OMS field should map to POS Field ORDER_STORE_ID and apply to the ORDER field in custom field mapping 1
            Card Last Four No Field specifies which SF OMS custom field to use for order search by using the last four digits of the payment card CardLastFour__c
            BOPIS
            Enable No Activate to configure the fields in this section; otherwise, deactivating closes all the fields in this panel N/A
            Order Statuses to Import No Order status in the SF OMS that the POS needs to import for BOPIS orders DRAFT, ACTIVATED
            Pack Order Status No Order status to be set in the SF OMS when an associate marks a BOPIS order as packed pickpack
            Delivery Method Name No Delivery method of the BOPIS order in SF OMS Store PickUp
            Delivered Order Status No Order status to be set in the SF OMS when an associate marks a BOPIS order as delivered Fulfilled
            Canceled Order Status No Order status to be set in the SF OMS when an associate marks a BOPIS order as canceled Canceled
            Custom Field Mappings
            POS Field Yes Configuration property is a predefined Point of Sale field that is exclusively applicable to posted orders ORDER_STORE_ID
            OMS Field Yes Configuration property is an SF OMS merchant-specific field that is exclusively applicable to posted orders warehouseID__c
            Applied To Yes Configuration property is an SF object to which this mapping should be applied; exclusively applicable to posted orders ORDER
            Transform Function No Configuration property that applies a supported transform function to the mapping NONE
            Return Field Mappings
            Mapping Field No Configuration property is a predefined Point of Sale field that is exclusively applicable to returns CHANGE_ORDER_ID
            OMS Field No Configuration property is an SF OMS merchant-specific field that is exclusively applicable to returns ChangeOrder__c
            Applied To No Configuration property is an SF object to which this mapping should be applied; exclusively applicable to returns REFUND
            Order Field Mappings
            No Receipt Returns Order Type No Order type of NRR orders in SF OMS Unreferenced Returns
            Default Email Address No Email address to be used on the account for Guest Orders when there is no email address (this would be a Person Account Object in SF) default@email.com
            Endless Aisle Order Type No Endless aisles are in-store kiosks that allow customers to browse and order products that are not available in the store Endless Aisle
            Digital Wallet Type
            Digital Wallet No For BORIS scenarios, POS requires a list of digital wallets supported on the website. For more information, see Digital Wallet Types. Apple Pay, PayPal, or Google Pay
            SFOMS Values No Payment types configured in the Commerce system for the digital wallet type. Located in Salesforce account under Type in the Order Payment Summary. For more information, see Digital Wallet Types. DW_APPLE_PAY
            Additional Payment Types
            Additional Payment Type No Additional payment types, for example, Affirm. Located in your Salesforce account, if applicable Affirm Payment Type
            SFOMS Values Corresponding additional payment type values in SF OMS. Located in your Salesforce account
            Tender Types
            Tender Types No POS tender type Cash, Credit Card, Gift Card
            SFOMS Values No

            SF OMS TenderType value. Located in your Salesforce account, if applicable

            Look for the value of the PaymenyGatewayName; not to be confused with the PaymentGatewayID

            Cash, Givex, Adyen
            URL Override
            OMS Endpoint No Configuration is for advanced use cases. If a merchant has built a different URL to override SF OMS core flows, this endpoint and its overriding value need to be populated Submit Return, Preview Return
            Override Values No Overriding URL that alters the default behavior; URL must start with a forward slash, see example /services/apexrest/pos-return?step=preview
            Delivery Methods
            Delivery Method No POS order type. Located in your Salesforce account. For more information, see Delivery Methods. Ship To Home
            SFOMS Values No Corresponding delivery methods in SF OMS. Located in your Salesforce account. For more information, see Delivery Methods. OVERSIZE_HOME_DELIVERY
            Order Status Mappings
            Created Yes SF OMS order status that needs to be shown as CREATED on the POS. Located in in your Salesforce account, if applicable Created
            Completed Yes SF OMS order status that needs to be shown as COMPLETED on the POS; can be found in your Salesforce account, if applicable Fulfilled, Closed, Return
            Cancelled Yes SF OMS order status that needs to be shown as CANCELLED on the POS; can be found in your Salesforce account, if applicable Canceled
            Processing Yes SF OMS order status that needs to be shown as PROCESSING on the POS; can be found in your Salesforce account, if applicable Waiting Approval, Waiting Allocation, Waiting Fulfillment, Waiting Business Approval
            Advanced
            Enable 'Skip In-Store' Order Search No Activate to enable skip in-store order search N/A
            Enable Returns No Activate to enable returns N/A
            Enable Streaming No Activate to allow SF OMS Streaming listener to pull orders that a store needs to fulfill (BOPIS / BOFIS) N/A
            Enable Master of Record for Web Orders No Activate to allow SF OMS as Master of Record for web orders N/A
            Enable Cancellation APIs No Activate to enable cancel APIs for fulfillment orders N/A
            Enable Composite Query Search No Point of Sale's current integration retrieves details for SObjects endpoints like Order Items and Tax Line Items using separate requests. However, this caused issues with orders containing many items. By activating this flag, the SFOMS Composite query API enables querying multiple SObjects in a single request, improving efficiency for orders with a high item count N/A
            Enable Payment Update No Activate to post Payment Object to SF OMS in "Draft" status, which can be updated during Store-and-Forward (SAF). Applicable in cases where there is an incorrect tender reference ID during the initial order posting and you can correct it during the SAF process N/A
          3. Click SAVE.

          Custom Field Mappings

          The field mappings provide a mapping of the custom fields between Point of Sale and the Salesforce OMS. The following properties are used to map the fields from Point of Sale's Order objects to the Salesforce objects. On a high-level overview, this is how information about an order is selectively processed and then posted to SF OMS.

          A settings window displays custom field mappings.

          In the screenshot, the POS app field (ORDER_NOTES) is mapped to the SF OMS field (OrderNotes__c). It is applied to "ORDER" and the transformation type is "Order to Order Notes". With this configuration, we're using code logic (transformation type) to read and grab the order notes we're trying to find in the Order object (apply to).

          order.notesList[0].noteText

          To further explain, in the code example above, the transformation type of "Order to Order Notes" is being used to read the field value of noteText from the order.noteList[0] object. After we have the information we need, we process it and post it to SF OMS.

          Important
          Important We need at least one field mapping defined to identify the store ID to ensure BOPIS orders are routed to the correct store.
          • POS Field - A configuration property that is a predefined Point of Sale field to map to. E.g., ORDER_NOTES.
          • OMS Field - A configuration property that is an SF OMS custom field name. E.g., OrderNotes__c.
          • Apply/Applied To - A configuration property that is a list of SF object names for which this mapping should be applied. E.g., ORDER. The difference between Order and Product is just a way, for example, to read the order notes from either the Order object or Product object. It is specific to the POS field that is being selected.
          • Transform Function/To - A configuration property that applies a supported transform function. E.g, Order To Order Notes. This is the logic that will find the specific field value of an array object in a JSON string. It is specific to the POS field that is being selected.
          • Delimiter - A character that marks the beginning or end of a unit in a string of data. E.g., comma (,), semicolon (;).
          • Date Format - The format of the date to be posted in SF OMS. E.g., MM-dd-yyyy.

          To Add a Custom Field Mapping:

          • Click + Add at the bottom of the panel.
          • Fill out the fields.
          • Click SET.
          • (Optional) Select the pencil icon to the right to edit a field mapping.
          • (Optional) Select the trash bin icon to the right to delete a field mapping.

          POS Fields

          POS Field Applied To Transform Function
          ASSOC_ID ORDER NONE
          ORDER_NO_RECEIPT_RETURNS ORDER NONE
          ORDER_DETAIL_STORE_ID PRODUCT NONE
          ORDER_NOTES ORDER ORDER_TO_ORDER_NOTES
          ORDER_QUOTE_ID ORDER NONE
          ORDER_STORE_ID ORDER, LOCATION NONE
          ORDER_TARIFF ORDER NONE
          ORDER_TAX_EXEMPT ORDER ORDER_TO_TAX_EXEMPT
          ORDER_UPDATE_DATE ORDER, FULFILLMENT_ORDER EPOCH_TO_DATE
          ORIGINAL_ORDER_ID ORDER NONE
          PRODUCT_CARD_ALIAS ORDER PRODUCT_CARD_ALIAS
          PAYMENT_CARD_LAST_FOUR ORDER PAYMENT_TO_CARD_LAST_FOUR
          PRODUCT_ASSOC_ATTR PRODUCT PRODUCT_TO_ASSOC_ATTR
          PRODUCT_CUSTOMSKU PRODUCT List to JSON string
          PRODUCT_NOTES PRODUCT PRODUCT_TO_PRODUCT_NOTES
          PRODUCT_PICKUP_STOREID PRODUCT

          PRODUCT_PICKUP_

          TO_TARGET_STORE_ID

          PRODUCT_FULFILLMENTLOC_STOREID PRODUCT NONE
          PRODUCT_FULFILLMENT_TYPE PRODUCT NONE
          PRODUCT_FULFILLMENT_SUBTYPE PRODUCT NONE
          PRODUCT_PRICE_ADJUSTMENT_PROMONAME PRODUCT_PRICE_ADJUSTMENT NONE
          PRODUCT_PRICE_ADJUSTMENT_REASON PRODUCT_PRICE_ADJUSTMENT_REASON List to JSON string
          PRODUCT_TARGET_STORE_ID PRODUCT NONE
          PRODUCT_TAX_CODE PRODUCT_TAX NONE
          PRODUCT_TAX_JURISDICTION PRODUCT_TAX NONE
          PRODUCT_TAX_REGISTRATION_NO PRODUCT_TAX NONE
          STORE_FULFILLMENT_ORDER_ID ORDER NONE
          STORE_REGISTER_ID ORDER NONE
          TARIFF_RATE ORDER NONE

          Digital Wallet Types

          Map online payment options, such as ApplePay, PayPal, and Google Pay, to the Retail CLoud POS app. This field(s) is not mandatory however, it is critical for BORIS flows to map online payment options to the POS. Configure the same payment types in the Commerce system and Point of Sale CMS. These are found in your Salesforce account under Type in the Order Payment Summary.

          An order payment summary shows payment details. A web form displays digital wallet settings.

          For details on the support capability for BORIS returns to credit card payments, refer to Buy Online, Return In-Store (BORIS) Payment Refunds via Credit Card.

          Additional Payment Types

          In terms of functionality, Additional Payment Types is similar to Digital Wallet. If you allow, for example, Affirm during checkout, then it needs to be configured so that Retail Cloud's additional payment type values can be mapped to the SF OMS additional payment type values. The values to be entered, if applicable, can be found in your Salesforce account.

          Delivery Methods

          View delivery methods in your Salesforce Point of Sale account in the Order Delivery Method summary.

          An order delivery method form details oversize home delivery.A table displays Point of Sale delivery methods and corresponding Salesforce delivery methods.

          There are different order fulfillment types (for example, online, in-store) at the item-level as well as fulfillment subtypes (for example, BOPIS, try at store, pick up later). Point of Sale created the Delivery Methods field to map a brand's various delivery methods. Point of Sale uses logic to map out the delivery methods in their subsequent fulfillment and fulfillment subtypes. In the above screenshot, since a delivery method was entered under Ship to Home in the CMS, with Point of Sale's logic, the fulfillment type would be online with a fulfillment sub type as default.

           
          Loading
          Salesforce Help | Article