Tapbuy and Salesforce Commerce Cloud
Please register with Tapbuy so that your account can be approved. You should do this before starting any configuration or installation.
In this guide, you will learn the process for linking Tapbuy with your Salesforce Commerce Cloud instance.
Installation generally takes a couple of hours.
OCAPI ¶
Once configured, the Salesforce Commerce Cloud Open Commerce API (OCAPI) will supply Shopping feeds with a source feed of your product data, which will then be used and manipulated for outgoing sales via Tapbuy, keeping up-to-date User Accounts, Product Data, Inventory, Order and Order Fulfillment.
OCAPI Settings
Configure Open Commerce API Settings in [SiteId] > Administration > Site Development > Open Commerce API Settings.
Select type: Shop Select context: Global (organization-wide)
Add the following client
entry in the clients
list.
{
"client_id": "73f1f7e3-a5aa-48ab-a377-c072c2cb0d8f",
"allowed_origins": ["https://tapbuy.io"],
"resources": [
{
"resource_id": "/baskets",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/reference",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*",
"methods": ["get", "patch", "delete", "post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/payment_methods",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/customer",
"methods": ["put"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/agent",
"methods": ["put"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/storefront",
"methods": ["put"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/items",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/items/*",
"methods": ["patch", "delete"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/gift_certificate_items",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/gift_certificate_items/*",
"methods": ["patch", "delete"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/billing_address",
"methods": ["put"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/shipments",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/shipments/*",
"methods": ["patch", "delete"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/shipments/*/shipping_address",
"methods": ["put"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/shipments/*/shipping_method",
"methods": ["put"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/payment_instruments",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/payment_instruments/*",
"methods": ["delete", "patch"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/coupons",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/order_search",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/orders",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/orders/*",
"methods": ["get", "patch", "put"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/orders/*/payment_instruments",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/orders/*/payment_instruments/*",
"methods": ["patch"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers/auth",
"methods": ["get", "post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers/ext_profile",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers/ext_profile",
"methods": ["get", "post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers/*",
"methods": ["get", "patch"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers/*/password",
"methods": ["put"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers/*/auth",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/products/(*)",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/products/*",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers/*/password",
"methods": ["put"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers/*/addresses",
"methods": ["get", "post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers/*/addresses/*",
"methods": ["delete", "patch"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/stores",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/stores/*",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/shipments/*/shipping_methods",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers/*/baskets",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/baskets/*/coupons/*",
"methods": ["delete"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers/*/payment_instruments",
"methods": ["get", "post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers/*/payment_instruments/*",
"methods": ["get", "delete"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sessions",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customers/password_reset",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
}
]
}
Select type: Data Select context: Global (organization-wide)
Add the following client
entry in the clients
list.
{
"client_id": "73f1f7e3-a5aa-48ab-a377-c072c2cb0d8f",
"resources": [{
"resource_id": "/customer_lists/*/customer_search",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customer_lists/*/customers",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customer_lists/*/customers/*/addresses",
"methods": ["get", "post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/customer_lists/*/customers/*/addresses/*",
"methods": ["get", "patch", "delete"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/category_search",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/catalogs/*/categories/*/category_product_assignment_search",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/orders/*",
"methods": ["patch"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/orders/*/payment_instruments/*",
"methods": ["patch"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/orders/*/payment_instruments/*/transaction",
"methods": ["patch"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/orders/*/payment_status",
"methods": ["put"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/orders/*/status",
"methods": ["put"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/stores",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/stores/*",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/store_search",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/slots",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/slots/*/*",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/slots/*/slot_configurations/*",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/site_preferences/preference_groups/*/*/preference_search",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/site_preferences/preference_groups/*/*/preferences/*",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/product_search",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/coupon_search",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/coupon_redemption_search",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/coupons",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/coupons/*/codes",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/sites/*/coupons/*",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
},
{
"resource_id": "/custom_objects_search/*",
"methods": ["post"],
"read_attributes": "(**)",
"write_attributes": "(**)",
"version_range": {
"from": "17.3"
}
}
]
}
Business Manager Settings
Perform the following tasks in order to create a new Business Manager User and assign it a new Role with the Permissions listed below.
- Head to [SiteId] > Administration > Organization > Users, click new
and fill the form to create a new User named
Tapbuy
.
-
Your password: enter your Business Manager admin password
-
Login:
Tapbuy
-
Password/Confirm password: choose a password and sent it to your Tapbuy account manager
-
Lastname:
Tapbuy
-
Email:
demandware@tapbuy.io
Click Apply to confirm the User creation.
-
Head to [SiteId] > Administration > Organization > Roles & Permissions, click new and fill the form to create a new Role named
Tapbuy_role
, then click Assign. -
Go to the tab Users, click on Assign, then select the user
Tapbuy
and click on Assign. -
Go to the tab Business Manager Module, select your Salesforce Commerce Cloud instance in the Context popin and check on the Read and Write columns for the following rows:
Customers
-
Customers
-
Customer Groups
-
Batch Processes
-
Import & Export
Products and Catalogs
-
Products
-
Product Sets
-
Catalogs
-
Product Options
-
Variation Attributes
-
Recommendations
-
Price Books
-
Inventory Lists
-
Catalog Feeds
-
Batch Processes
-
Import & Export
-
Merchandising Tool
Ordering
-
Orders
-
Taxation
-
Payment Processors
-
Payment Methods
-
Shipping Methods
-
Import & Export
-
Customer Service Center
Online Marketing
-
Campaigns
-
A/B Tests
-
Promotions
-
Content Slots
-
Coupons
-
Source Code Groups
-
Active Data
-
Stores
-
Gift Certificates
-
Import & Export
Site Preferences
- Custom Preferences
Custom Objects
- Custom Object Editor
- Go to the tab Functional Permissions, select your Salesforce Commerce Cloud instance in the Context popin and check the following rows:
-
Login_On_Behalf
-
Login_Agent
-
Manage_Site_Catalog
-
Manage_Site_Library
-
Manage_Site_PriceBooks
-
Create_Order_On_Behalf_Of
-
Search_Orders
-
Access_Protected_Storefront
Cartridge ¶
Perform the following tasks in order to integrate the Tapbuy Metadata and the Tapbuy Cartridge:
-
Download Metadata and Tapbuy Cartridge:
-
add the
int_tapbuy_pipelines
,int_tapbuy_controllers
orint_tapbuy_sfra
cartridge in the UX Studio workspace -
upload the cartridge on the Salesforce Commerce Cloud instance
-
upload the
site_template.zip
Metadata file in Administration > Site Development > Site Import & Export -
import the archive file and wait until the import has been successfully completed
-
configure custom preferences sent by your Tapbuy account manager in [SiteId] > Merchant Tools > Site Preferences > Custom Site Preferences > Tapbuy settings
-
Is Tapbuy Enabled
-
Encryption key for Tapbuy
-
Script URL for Tapbuy
-
ISML Tag ¶
In order to redirect to the Tapbuy checkout funnel and monitor the Salesforce Commerce Cloud and Tapbuy funnel conversion, a ISML tag needs to be included in the storefront templates.
- /app_storefront_core/cartridge/templates/default/resources/appresources.isml (end of file)
<iscomment>Add Tapbuy tag</iscomment>
<isinclude url="${URLUtils.http('TapbuyController-Init')}" />