SAP Business One and Salesforce Integration
SAP Business One and Salesforce Integration and Business Process Automation
Salesforce integration with SAP Business one integration involves connecting Salesforce APIs with SAP Business one using APIs configured in APPSeCONNECT to ensure seamless communication between them. The primary goal of the data flow is to ensure and maintain centralized data across the platform. The seamless data integration reduces manual tasks and enables users to take informed decision-making.
APPSeCONNECT marketplace readily provides you ready-made integration between Salesforce and SAP B1 sales cycle either using DI Server integration which involves local deployment of agent to sync data, or using Service Layer component which is can be hosted both in your premise or hosted in our cloud environment. The integration involves all the important objects in salesforce or SAP B1 directly synched back to the target application seamlessly without any changes made to the installed solution. The packages published in APPSeCONNECT marketplace comes for free, and created for vanilla systems, and hence can be easily customized based on your own logic.
Endpoints for SAP Business One and Salesforce Integration
Standard Features Covered in Our SAP Business One and Salesforce Integration Template
Accounts
Accounts/Business Partners
New business partners within SAP Business One get synchronized with Salesforce. Any modification to the business in Salesforce / SAP is synchronized with the other application.
The following information is synchronized between the applications.
- Account Name
- SAP Customer Number
- Default Shipping Address
- Default Billing Address
- Phone
- Industry
The Sync works bi-directionally with Add and Update Operation.
Contacts
New Contacts from one application will be synchronized with the other application. Updates to contacts are also synchronized.
Contacts are synchronized and associated with the right business partner or account.
Following are the key fields which are synchronized during contact sync
- Name
- Owner (if applicable)
- Telephone / Mobile
- Account Name
The Sync works bi-directionally with Add and Update Operation
Pricebook
- Pre-defined price lists are synced from SAP Business One to Salesforce as price-books. One of the price lists has to be chosen as the standard price list. Product prices are synced from SAP Business one to Salesforce for these price-books. If the prices are updated within SAP, they are synced with Salesforce.
- The Sync works from SAP Business One to Salesforce with Add and Update Operation. Single Currency is supported under this sync process. Special Prices are not supported.
Item
Items from SAP Business One will be synced with Salesforce along with their prices. It is possible to filter products to be synced and to sync only the active products. Following are the key information synced as far as Items are concerned.
- Product name
- Product Code
- Product Description
- Product prices associated with various price-books
The Sync works from SAP Business One to Salesforce with Add and Update Operation.
Quotes
The non-zero value quotes are synced from Salesforce to SAP Business One. The Sales Person can mark the Quotes which are ready to be synced. Following are the crucial information synced from Salesforce to SAP Business One.
Quotes Header
- Customer
- Owner (If Applicable)
- Date
- Customer Reference Number
- SAP Quote Number (updated back to Salesforce)
- Validity Till
- Default Ship to
Quotes Line Items
- Product
- Quantity
- Remarks
The Sync works from Salesforce to SAP Business One with Add Operation.
Sales Order
Sales order from SAP Business One will be synced to Salesforce when they are created. The sales order items are also synced along with the header information. The following are the crucial fields that get synced from SAP Business One to Salesforce.
Sales Order Header
- Order Number
- Order Date
- Order Value
- Account
- Owner (if applicable)
Sales Order Line Items
- Product
- Unit Price
- Quantity
- Sub Total
The Sync works from SAP Business One to Salesforce with Add Operation.
Invoice
Invoice information is synced from SAP Business One to Salesforce when the invoice is created. Invoice line items are also synced along with the respective invoices. The following are the key information that is synced between the applications.
Invoice Header
- Account
- Invoice Number
- Invoice Date
- Invoice Amount
- Owner (if applicable)
Invoice Line Items
- Product
- Unit Price
- Quantity
- Sub Total
The Sync works from SAP Business One to Salesforce with Add Operation.
Add-ons
Add-Ons
Below Add-On Features will involve additional cost
- Multi-Currency – If you maintain your prices in multiple currencies, this feature can help synchronize the product prices in the correct currencies. The Sync works from SAP Business One to Salesforce with Add/Update Operation.
- Inventory – If you want to view inventory within salesforce, this feature can help you provide visibility of committed and on-hand stock levels of the product across warehouses. The Sync works from SAP Business One to Salesforce with Add/Update Operation.
- Customer Addresses – Manage multiple shipping addresses within Salesforce and SAP for preparing Quotation. The non-default addresses are synced in a bi-directional manner and are available to be used for Quote generation. The Sync works bi-directionally with Add/Update Operation.
- Sales Order Update – If the orders are updated after creation, this feature helps in synchronizing the updates from SAP to Salesforce. The updates also ensure that the line items are kept in sync. The Sync works from SAP Business One to Salesforce with Update Operation.
- Invoice Update on Payment – If you want to show the payment or any other sort of update for Invoices on Salesforce, this feature can help you do so. The updates also help sync the invoice items in an automated fashion. The Sync works from SAP Business One to Salesforce with Update Operation.
After Sales Service
After Sales Service Integration Features will involve additional cost
- Assets – The installed base from SAP Business One is synced as Assets within Salesforce. The assets are also assigned to the correct Account within Salesforce. The Sync works from SAP Business One to Salesforce with Add/Update Operation.
- Service Call – Service calls from one system is synced with the other application. In case a service call is updated or closed, the same is synced with the other application. The Sync works bi-directionally with Add/Update Operation.
- Activities – Activities created in one system is synced with the other application and assigned to the correct owner. The Sync works bi-directionally with Add/Update Operation.
Popular SAP Business One Integrations
+
+
+
+
Popular Salesforce Integrations
+
+
+
+
View All Apps
Connect SAP Business One and Salesforce
Get Started with APPSeCONNECT Today!
SAP Business one integration requires APIs to get data. There are two options to it.
Service Layer : SAP Business one introduced OData based API layer which is distributed freely for integration with external applications. APPSeCONNECT uses it to fetch or push data to SAP B1.
DI Server : SAP Business one also comes with DI Server component which is also supported by APPSeCONNECT to communicate data between applications.
Even though Service Layer is recommended by SAP for communication, you can choose either of them to communicate with APPSeCONNECT.
B1WS is a web service wrapper that is allowed to be installed on local onpremise environment for communication with external applications. But as this component puts forward additional load to your local system as you need to use tomcat to enable it to your system, we do not want to use it for our integration. Even though you still can connect using B1WS to APPSeCONNECT which internally use DI Server, APPSeCONNECT can directly use Service Layer or DI Server to communicate directly.
Salesforce provides SDFC REST API with OAuth 2.0 authentication to communicate from external application. APPSeCONNECT is a middleware which keeps track of the access token internally and uses it while transferring the data. The token is generated once you authenticate your salesforce account using Authentication mechanism, the auth token and the refresh tokens are stored in an encrypted database such that it is secure enough from any external threats. While calling the actual API, it uses the access token and also regenerates the access token when the same is expired.
To access the API system, you need to create a Connected App from App Manager, which will ensure the credentials could be passed to 3rd party application from your tenancy.
Once APPSeCONNECT receives the data, it is made available to all other applications which are connected from your account, and you can easily pass it to the external systems based on your logic.
SAP B1 by default supports batching. The application uses filters to fetch data from SAP B1 and can use Salesforce Batch APIs to directly push data to Salesforce. SalesForce Batch API requires a Job creation and upload the data as CSV into salesforce and process it in background. With APPSeCONNECT, the batch operation does not require the user to handle complex Batch operation scenario.
We have APPSeCONNECT App listed in Salesforce marketplace. We can use the marketplace app to get OAuth Credentials. We only get Access token and Refresh token, which will be used to fetch data to and from Salesforce. Your credentials or any Personally identifiable information is safe with Salesforce only, and never been exposed to us.
In case you want to enable additional security by offloading the user authentication to organizational identity, you need to first install the component required to enable Extra ID. Now if you do, the entire authentication system of SAP B1 will be changed, and it will require us to use OAUTH 2.0 with PKCE or Proof of Key Code Exchange. This type of integration provides an additional security layer to reduce vulnerability attacks on your ERP.
APPSeCONNECT provides out of the box integration support for Extra ID authentication system if you have already configured it, and it is natively supported.
Salesforce Object Query Language (SOQL) is the one supported by Salesforce already which will allow you to query any salesforce object from outside using REST API. APPSeCONNECT supports SOQL APIs and hence while you get the data, you can use SOQL to retrieve objects directly from Salesforce using structured query. The SOQL can be added in our Action Filter and it will be automatically configured to a Query in Salesforce API.
Advantages of using SOQL
• Reduced API calls
• Can join multiple objects directly
• Almost no learning curve, because SOQL is purely using SQL structure which we all know already.
• API system remains same
Our pre-packaged marketplace solution also uses SOQL in some cases.
Yes, you can. If you have configured your price book in SAP B1 with multiple currencies, you can still use the currencies in Salesforce PriceBooks. The currencies are picked up automatically during integration process from SAP B1 and update them to Salesforce to be used later. Updates of Pricebook entries in ERP is also tracked and synced back.
Salesforce allows you to create custom sObjects (Salesforce Objects) directly. You can create them in SetUp -> Object Manager. Now when you add them to Salesforce, the REST API models will automatically be created in sObjects/ObjectName. You can call the REST API to directly insert or update data through our integration.
In case of SAP B1, you can create UDO (User defined tables) quite easily if you have access to SQL database server. As Salesforce Service Layer APIs or even DI Server APIs supports SQL queries, you can still use them directly.
Salesforce adds the Version key inside BaseURL. You can replace it with variable which can be configured for each integration points specifically to specify the version of APIs to be used. All the versioned APIs are exposed in Action filter of APPSeCONNECT to be able to call them.
In case, an new version of same API is released, the old API will continue to work and you don’t need to bother to upgrade.
In some cases, when the old version of the API is removed or deprecated, we get prior notification from Salesforce team to do a migration plan. Our support team will communicate with you about these changes and will migrate your integration automatically to the new version so as to support the changes made by applications.
Apex Classes exposes API as generic endpoint /apexrest. In case you have exposed your objects through your apex class, you can still call the API correctly. The Apex class APIs are generally outside the salesforce versioning and hence when you are using them, you do not need to change your integration later.
APPSeCONNECT does not store any PII Information or Credit card numbers. Ideally the base integration mask the sensitive information while in transit. But in case you want the raw data to be transferred to SAP B1, you are allowed to send it too. We ensure no PII or other sensitive information is stored inside the platform.
You can always synchronize data manually even if it is scheduled at a particular timeframe. We provide Runtime Filter feature which allows you to pass an ID or any filter criteria to sync a batch of data at a specific time. Even though you try to sync a specific data manually, it does check for duplication automatically before hand preventing data redundancy on various applications.
You can also deploy a ProcessFlow in manual mode, so as to run only through manual sync.
APPSeCONNECT automatically tracks every data which pass through the platform. It identifies the primary key of each data packet and stores them into a list which we call Sync Info. You can go to the platform anytime to Resync the failed entries, provided the data is perfect for a sync.
Additionally, the platform allows you to intelligently resync the data automatically and retry them at an interval scheduled by you. In case you still have some failed data in the system, we will ensure to notify you through emails at regular intervals.
We ensure highest security standards for our systems. All communication from APPSeCONNECT is encrypted in AES 256 bit with TLS 1.2 enabled always. The transactional data which is passed through our system is secured both at rest and at motion. We use encrypted storage to store any data into our system which is protected for a particular tenant. The data in transit is always through secure channels.
We are also ISO 27001 certified and we maintain highest standard in terms of security of data.