Friday, August 17, 2018

Salesforce and ChannelAdvisor integration

How are you reading this article right now? It may be on a laptop, a mobile or a tablet. Whatever the device you are using, it is connected to the Internet.
Data integration is about that: connectivity or the ability to let your apps talk to each other. And connectivity is a wonderful thing. It gives you all sorts of amazing benefits that when rightly applied, result in increased profits.
Data integration is actually quite a simple concept. The secret of its successful application resides in how to implement it.
To help clarify this approach, this article provides you with a simple explanation of the benefits of data integration. It also explains how to practically do it by using the powerful DBSync connectors. It ends by exploring some best practices in the field of integration.
Although it won’t answer all your questions, after reading it, you will have a sound foundation to start working on the integration of your data ecosystem.

Benefits

Synchronize ChannelAdvisor Customer, Order and Product data with Salesforce records

By integrating your CRM and your ecommerce data, you ensure that your customer, order and product data is available in a unified and consistent manner. This avoids errors, data redundancy and eliminates unnecessary human intervention.
The result is an ecosystem that represents your business with a guaranteed true picture. This in turn, gives you a tool for better data driven decision making.

Integrate your inventory with order fulfillment data

Imagine a situation where you have to manually integrate orders with inventory. Keeping an updated record can be very challenging. What could happen if two or more of your sales people trade the same items at the same time without the possibility of knowing that they are colliding?
By integrating ChannelAdvisor and Salesforce, you can be sure that collision is not a problem, and that each product sold is readily available in your inventory.
This in turn leads to increased customer satisfaction, as their needs are serviced with total reliability.

Strengthen your marketing, customer service and support programs

By permitting the use of consolidated data, the integration between Salesforce and ChannerAdvisor positively influences the management of the sale life cycle, from the creation of leads to the actual sale and invoicing.
This improvement can also be felt in the after-sale activities, such as customer support. The possibility of being able to track the full history of the operation may be invaluable in situations where the product is returned or, a complementary product is also sold to the customer. The improved scenarios are many.

How to integrate them

Integrating Salesforce and Channel Advisor can be very easy when using an app like DBSync. Just do the following steps:

Step 1: Create a project

The first step in the integration process is to create a project that will contain all the information related to the integration. For this, click on the Create New Project button. A screen asking for a project’s name will appear. Insert a name and click on the Save button. Your project will be added to the project’s list.
Figure 1: Create New Project screen

Step 2: Create a Salesforce connector

Now, you need to create a connector to Salesforce. This will allow for the communication between Salesforce and DBSync.
In order to create this connector, click on the Create New Connector button, and insert a name for your connector.
Figure 2: Create new connector
Now select Salesforce Connector from the drop-down menu Select Connector Type.
Figure 3: Select Connector Type menu
Click on the Save button. If you are not connected to Salesforce, a screen asking for the login credentials will appear. Fill in the credentials and wait for the connector to be saved.
Figure 4: Salesforce login page
Note that it is a good practice to login into your Salesforce account before you create the connector. In this manner, you won’t need to insert the login credentials.
After this, you will see a page confirming that the Salesforce connector has been added to your project.
Figure 5: Connector’s confirmation

Step 3: Create a ChannelAdvisor connector

The procedure to create a ChannelAdvisor connector is very similar to the previous one. First, you need to click on the Create New Connector button, input your connector’s name and type, and then click on the Save button.
Figure 6: Create New Connector screen
Figure 7: Select Connector Type menu
Figure 8: ChannelAdvisor login screen

Step 4: Create a process

Once you have the connectors in place, you need to create a new process that will contain your workflows. In order to do this, click on the Create New Process button, insert the name of your process, and click on the Savebutton. Your process will appear in the list of processes.
Figure 9: Create New Process screen
Figure 10: List of processes

Step 5: Create a workflow

Now you need to create a workflow that will contain the integration information. For this, click on the Create New Workflow button, insert a name, and press on the Save button.
Figure 11: Create New Workflow screen

Your workflow should now appear in the list of workflows. Note that each workflow in the list can be turned on or off via the status field.
Figure 12: List of workflows

Step 6: Create a trigger

Now you need to define a trigger that contains the information about the data source. In the figure below, the trigger obtains information from ChannelAdvisor. You will also need to select the data source table from the list of available tables.
Figure 13: Create a trigger

Step 7: Create a rule

Once you have the data-source defined, you need to create a data-destination. This is done via the creation of a new rule. For this, click on the Add New Rule button, input a rule’s name, the application that will receive the data, the type of operation, and the table that will store the data.
Figure 14: Create new rule screen
Once you have the data-source and the data-destination, you need to create a map. Click on the Map link, and you will see a screen containing the field from both apps.  You can now link the fields according to your needs.
Figure 15: Mapping

Step 8: Run the process

Now, that you have stored all the necessary information for your integration process, you can run the process by clicking on the Run Now button that appears next to each process included in the process list.
While running, DBSync will show you the executing steps on the console.
Figure 16: Console

Step 9: Check the logs

Once the process has been executed, you can see the results on the logs’ screen. If the run was successful, you will see a green icon with a check mark in the status field. If it was unsuccessful, you will see a red icon with an exclamation mark. You can click on the View button, in order to see the problems encountered.
Figure 17: Logs

Best integration practices

Decide on your data integration practice type

Data integration practices are usually divided into three main sectors: analytic data integration (AnDI), operational data integration (OpDI) and hybrid data integration (HyDI).
Analytic data integration is aimed at business intelligence or datawarehousing. On the other hand, operational data integration involves data integration among different apps and databases, which can be located within one organization or more.  In between them, hybrid data integration exists.
Your choice among them must be based on the technologies that you have available and your business initiatives.

Adopt an enterprise-based data integration initiative

Nowadays, in many organizations, data management is organized in isolated silos, by independent teams, using various and different data management tools for data integration, different database architectures and administration modes, etc.
Thus, a best practice for coordinating these diverse data management sources is to adopt an enterprise data management approach, where data integration supports enterprise wide goals. In this manner, all data management work is aligned to support data driven strategic business goals.

Design your data integration architecture with the long term goal of sustainable data management

An efficient data integration architecture should consolidate databases, reduce the number of required servers and other resources, and eliminate data redundancy.
This, in turn, results in cost reduction, and an increase in data accuracy and data use efficiency.

Useful links

These are some links with useful information on DBSync’s connectors:
DBSync’s Salesforce connector webpage: https://www.mydbsync.com/product/salesforce-crm-adapter
DBSync’s ChannelAdvisor connector webpage: https://www.mydbsync.com/product/channeladvisor

Final remarks

Data integration is about transforming the way we use and manage data. Its benefits are many. Amongst them, it is the capacity to consolidate order, customer and product management. This single view enables an efficient management of the full sale life-cycle.
DBSync is an app that lets you create a connectivity bus between Salesforce and ChannelAdvisor, which can be expanded to the integration of other systems.
This integration must follow an architecture based on a long-term enterprise view that eliminates redundancies and isolated silos.


Find this exciting? Want to try it? Go to our website now at http://www.mydbsync.com/ , and try DBSync for free. You will be amazed by the results.

Wednesday, August 8, 2018

Optimize your business by integrating Shopify and Quickbooks


There are a lot of questions about Shopify and QuickBooks integration.
What is it exactly? It is something that my business or organization needs to do? If so, how? What are the benefits? How do I get started?
Nowadays, there is a bit of a hype about integration. But be assured, it is a powerful, long-term approach that your business needs to leverage in order to prosper in the present competitive environment.
In this article, you will learn why and how to integrate two important apps: Shopify and QuickBooks. It won’t answer all your questions. But it will equip you with a solid foundation on the benefits and best ways to apply this approach.
Benefits
Benefit 1: synchronize your sales, product and customer data
QuickBooks and Shopify are two different apps, but they complement each other. For this, synchronization between both of them is key.
Imagine your online store, successfully selling your products, but totally disconnected from your accountancy. You will have to create the link via a human task, which is time-consuming, costly and prone to errors.
Now, you decide to integrate both of them. The human is replaced by automation. Now your invoices and payments keep pace with your orders. Your inventory management is updated in real time, based on your orders. Your product and customer data are organized in a complete manner, becoming useful information.
Benefit 2: keep your accounting always accurate and up to date
Good accountancy keeps friendships, says the old Spanish phrase. And, that is true: good friendly relationships ensure trust, avoid problems with authorities, help compliance, and more.
An accountancy that is coordinated with your online sales in an automated manner, gives you an accurate and up to date source of information, and reduces time and effort with reconciliations in QuickBooks.
Benefit 3: obtain a true view of your business
Accurate and updated information is foundational to good business decisions. How to plan sales or production if you cannot know how many product units you have in inventory? How to plan your taxes if your sales are not accurately and timely represented in your books?
An integrated source of data captures the wider canvas in which the totality of the reality of your business can be painted, giving you a true view of your business.
Even more, in this age of AI and powerful machine learning algorithms, a proper and complete source of data can become invaluable when considering using business intelligence tools.
How to integrate them
DBSync’s Shopify and QuickBooks Integration provides a simple and easy solution to synchronize order and fulfillment data from multiple channels with QuickBooks, optimizing your order-to-cash process.
Creating an integration process is easy with DBSync. Just follow these steps:
Step 1: Create a project
First of all, you need to create a new project that includes all the required process integration information. For this, click on the Create New Project button, and assign it a name.

Figure 1: Create new project screen
Step 2: Create a QuickBooks connector
Now, you need to create a connector to your online QuickBooks source. In order to do so, click on the Create New Connector button. You will see a screen asking for a name and a connector type. Input a relevant name of your choice, and select QuickBooks Online Rest Connector from the drop-down menu.


Figure 2: Create New Connector screen
The system will then ask for your QuickBooks credentials, and once accepted, the connection is established, and a confirmation screen appears.


Figure 3: Intuit connection page

Figure 4: Confirmation screen
Step 3: Create a Shopify connector
Similarly to the previous step, the creation of a Shopify connector only differs in the connector’s type choice: in this case, you need to select Shopify Connector from the drop-down menu. Then, you need to input your Shopify credentials.
 
Figure 5: Create New Connector screen


Figure 6: Shopify login screen
Step 4: Create a process
In order to create a new process, click on the Create New Process screen, give a name to your process and save it.


Figure 7: Create New Process screen
Step 5: Create a workflow
Processes are composed by a set of workflows. You can have several workflows in a process. In order to create a new workflow, click on the Create New Workflow button and assign a name to it.


Figure 8: Create New Workflow screen
Step 6: Create a trigger
Your next step is to define the data source from where the process will then read the data. This information is contained in a trigger; which, in order to create a query, requires a data source connector and a source table. This query can be manually modified by using the Advanced Query Builder.

Figure 9: Trigger’s parameters
Step 7: Create a rule
Now, you need to create one or more data destinations. This is done via the creation of rules. Each rule needs a data source connector, an operation (such as update or upsert), and a destination table.


Figure 10: Create a rule screen
Once you have defined your data destination, you need to create a map between the data source and data destination. This is easily done with DBSync. You simply need to map the fields between both data components.

Figure 11: Mapping of parameters
Step 8: Run the process
Now you have everything you need. You can run the process and obtain your results. While the process is running, the console will show you the results obtained step by step, until termination.


Figure 12: Console
Step 9: Check the logs
It is important that you check the logs. They are available through the main menu, and give you information on the number of records read and written, and in case of a failed run, information on errors encountered.


Figure 13: logs
Best integration practices
When integrating data, have a business goal in mind
Data integration is about transforming data. Now, this transformation must be based on a purpose, which in turn, it must be defined by a business goal.
So, when you begin thinking about integrating important apps such as QuickBooks and Shopify, start with this question in mind: what do I want to achieve with my business?
Business goals can be of many natures: speed up order-to-sales processing, reducing costs by replacing personnel with automation and therefore, decreasing the number of human errors, and many more. They are basically defined in the different benefits that you can obtain by integrating.
A data integration solution should have an architecture
Having an architecture simple means “think before you act”. Or, as carpenters say: measure twice before you cut.
Having an architecture is essential because it affects scalability, costs, the capacity to support real-time integration, and the interoperability with other tools.
Very important, your architecture must be based on your business goals. It must be an expression of them.
Data integration is a value-adding process
As you now know, integration is synonymous of data transformation with a purpose. In other words, it is adding value to your ecosystem, as the final result is a new “product” that is more valuable than the original “material” on which it is based.
And, the added value is the foundation of your profits!
Final words
In this article, you have learnt the value of integrating QuickBooks and Shopify. You have seen how to do it in practice by using DBSync. And finally, you have realized the importance of merging your business goals with your integration architecture.
Once you apply these principles, the added value will transform into profits up. Ready to start? Visit our page at http://www.mydbsync.com/

Monday, August 6, 2018

Swagger examined (part 3) How to create a connector to your app using DBSync



— Before proceeding I’d suggest you read Part 1 and Part 2 of this article. —

In this age of integration, you need an edge. The DBSync Swagger API connector is it. If you have a Swagger compliant JSON description of your app’s RESTful API, you can use this tool to create a connector to your app, which can then serve as a bus to connect to other apps, such as Salesforce or Quickbooks, via the DBSync app.

In this tutorial you will learn how to create this kind of connector, enabling you to up your success at creating a meaningful and efficient ecosystem for your business.

Creating a Swagger API connector

Creating a Swagger API connector is simple. You just need to follow these two easy steps:

Step 1: Create a new project.

This step is required only if you don’t already have a project where you want to add the connector. In order to do so, just go to the DBSync app’s menu on the left side, and click on the Projects item. The below figure shows the results screen. Now, click on the Create New Project button, enter the name of your project and press the Save button. Your project will appear on the project’s list on the screen.



Figure 1 – Create a new project

Step 2: Create a new Swagger API connector

Once you have your project ready, select it and go to the main menu item Connectors. Once there, click on the Create New Connector button. You will see a screen asking for a name and connector type. Type in the name of your connector, and select Swagger API Connector from the dropdown menu. Then, click on the Save button. A new screen asking for the connector’s information will appear.



Figure 2 – Connectors’ item in main menu


Figure 3 – Create a new connector


 The, in the next screen (figure 4) enter the following parameters: 
  • 1.      The username and password of your account in your app.
  • 2.      Authentication type: select from the dropdown menu, among the following values:

a.      NoAuth: when no authorization is required.
b.      BasicAuth: when you are using a basic access authentication.
c.      OAuth 2.0: when you need to use the OAuth protocol.
d.      ApiCodeAuth: when the authorization mechanism is defined in your code.
  • 3.      The URL to your RESTful API.
  • 4.      Copy and paste the JSON file that documents your API.



Figure 4 – Connector’s parameters

Once all the required inputs are completed, click on the Save button. You will then see the following screen:



Figure 5 – Connector successfully saved

That is it! Your connector is ready to do the work for you.

You can test the connection by pressing the Validate Connection button, just to be sure that all is working correctly.

Final Words

In these series of three articles on Swagger you have seen the importance of Swagger as a standard for creating APIs. You have also learnt how to create a JSON file that documents your app’s RESTful service. And finally, in this third part, you have understood how to create a Swagger API connector by using DBSync.

Ready to learn more? Check out our website and start your free trial now!

Saturday, August 4, 2018

Swagger examined (part 2): The DBSync’s Swagger API



— If you haven’t already read Part 1 of this article, I strongly recommend you to do it first. —

Have you ever run into difficulty when connecting RESTful services? You are not alone. Many junior developers, as well as seasoned professionals have struggled with this problem. The great news is that the unique challenges posed by these developments, can be lessened with the use of Swagger.

This article continues the previous one with a deeper description of this open source framework, which is a must choice for serious API (Application Programming Interface) developers. Then, it moves on to explaining the basic reasons why you should use it, and how it is employed by DBSync to help you create connectors to apps of your choice, in an easy-to-follow manner. At the end, it includes a link to the next article of this series that explains you how to create customized connectors for your apps.

What is Swagger

Swagger is an open source framework consisting of standards and tools, which help you to design, build, document and consume RESTful web services.

Started as a project by Tony Tam in 2011, it grew in size and importance. At present it is sponsored by SmartBear Software, and it has been eagerly accepted by the market.

Why use Swagger

Reason 1: Add value to your products by creating an ecosystem based on common knowledge

Swagger consists of a set of rules and tools for describing APIs. Its rules standardize practices in areas such as parameter definition, path, responses and more. These tools are language agnostic, meaning that you can choose the programming language you prefer.

Having a common way helps create a system that can be easily connected to others, and that can be updated and modified without difficulty by many developers.

An example is Netflix, which is based on a microservice architecture that provided an innovative and efficient way of delivering a service at scale and in real time. As a result, the company rose to become a market leader.

Reason 2: Gain efficiency through better communication

We all know how difficult it is to translate a business idea into a programming success. One of the main challenges is communication: business, analysts, product managers and users find it difficult to understand the techies’ language.

Swagger is great in this regard, as one of its characteristics is that it is easily comprehensible for developers and non-developers alike, creating a great communication channel.

Thus, for example, product managers, analysts and even users can easily give input about the design, and developers can then translate these ideas into software.

This communication is possible not only during development, but also during testing and documentation, helping create a system that is complete, easy-to-understand and customer oriented.

Reason 3: Use a widely proven tool

Yelp is a company that handles reviews and bookings for businesses. When a company like Yelp, which deals with thousands of people making reviews relies on Swagger, you can be assured that the effectiveness of the framework has been properly proven.

With many important players – such as Netflix, Akana and Yelp – relying on Swagger for their API developments, you should have no doubt about using it.

In addition Swagger has the support of several big companies, such as Microsoft, IBM and Google, through the Open API Initiative.

Reason 4:  Develop with an open source framework

By being open source, Swagger carries many of the benefits of crowd based development, such as cost savings, flexibility, and accountability.

Open source communities have a strong value sense, which results in responsible and efficient products. In addition, many volunteers test its usage, creating a safe option. Besides, you can also be a contributor and join the ranks with giants such as Microsoft and Google by supporting Swagger’s development.

Thus, whether you are a big player with a fat budget or not, you can always benefit by choosing Swagger.

How DBSync uses Swagger
DBSync Cloud uses the main advantages of Swagger to let you create the connector you need. The only thing that you actually need is a JSON file with all the information describing your app’s API.






Figure 1 – Creating a connector
Once you have your JSON file, DBSync helps you create a connector to your app that you can use to create data transfers to other apps, such as Salesforce, Quickbooks and many more. You can even create your customized connector to any two apps, and later on connect them both via DBSync. Once you have the two apps mapped to each other, your data transfer is straightforward.




Figure 2 – Integrating applications

Thus, you can design and build an integrated ecosystem that best fulfills the needs of your business. The possibilities are almost unlimited.

Conclusion

APIs are not new, and at present, they are increasingly used to integrate apps. Basically, when you create a Swagger compliant API, you are allowing others to make use of your app. This translates into more business opportunities, more customers and better profits. Swagger, is the right technology to achieve this.

In Part 3 of this article, we will learn how to create a connector to your app with DBSync, by using your API’s JSON.

Find this exciting? Go to our website and try any of our products for free. If you have any queries, contact us, and we will contact you as soon as possible.

Friday, August 3, 2018

Swagger examined (part 1) How to document an API with incredible simplicity


Do you know what Swagger’s main characteristic is? It is its incredible simplicity: its capacity to easily and utterly describe how an API works, where it resides, what inputs it needs, and what results it produces.

It is this simplicity that helped Swagger make itself one of the most successful developmental tools available on the market.

It is the same need for efficiency that makes Swagger compliant REST services so invaluable when a new API is created.

In this article you will learn the basics on how to create a Swagger RESTful documentation based on another popular technology known as JSON.

So let’s start by learning about a great tool: the Swagger Editor

Using Swagger
There are several editing tools that can help you to create Swagger compliant APIs. One of them is the Swagger Editor, which you can use to create your API documentation. It is an open source tool that you can download or use it online.


Figure 1 – Swagger Editor

Learning JSON

If you are looking for a good reference on JSON, you can consult the standard available here. Alternatively, you can also read the RFC 7159 that is available here. Both of them present a complete description of JSON, but they are very technical.

Alternatively, if you need a rookie’s site that will teach you JSON from scratch, you can go to W3SCHOOLS.

Document description

The Swagger standard defines the structure of the JSON file that describes a RESTful web service.
Here below is a simplified description of the main sections.

Document sections

The main sections that you need to understand are: the API declaration, the paths and the definitions.

API declaration

The API declaration section describes the main aspects of an API, such as its title, version, where it is hosted, the schemes that it uses, and the MIME types it consumes and produces.
The required parts are:

  • 1.      Swagger version:  specifies the Swagger Specification version being used.
  • 2.      basePath: the root URL serving theAPI.
  • 3.      The apis or paths section: a list of the APIs exposed on this resource. There must be no more than one APIS object per path.

The consumes and produces sections list the MIME types the resource consumes and produces.
Additional information shown in the figure below, which is optional, includes the license, the host and the x-parameters. The x-parameters, such as x-response-strategy, are pairs of keys and values defined by you.


Figure 2 – API declaration

MIME types
The MIME types that can be consumed or produced are summarized in the table below. In our example we use a JSON type, but XML and XHTML are also other possible options.


Table 1 – MIME types

Paths
The path describes the different operations. The required parameters are:
  • 1.      The method required to invoke the operation. The possible values are:  GET, POST, HEAD, PUT, PATCH, DELETE, OPTIONS and TRACE.
  • 2.      Parameters: are the inputs to the operation. Each parameter must include its name and type. Other characteristics are optional.

Additional parameters shown in the below figure, which are optional, are:
  • 1.      Produces: a list of MIME types produced. In this case JSON type.
  • 2.      Responses: a description of the responses available in this operation.
  • 3.      Path parameters: between curly brackets, they must be provided by the API call.




Figure 2: paths

Definitions
The definitions or data models section contains a list of data objects. Each data object can have several parameters.
The required parameters are:
  • 1.      Name: the name of the data object.
  • 2.      Properties: the fields that define the data object. Each property has a name and a type.



Figure 3 – definitions

Where to find more information
The best reference is the official Swagger page, which is available here.

Conclusion
The Swagger standard provides a great tool to document APIs. In this article you have learnt the main components of this documentation, namely API declaration, paths and definitions or data models.
In the next article of this series you will read about the general characteristics of Swagger, its core benefits and how DBSync uses it for your businesses.
If you want to learn more about this wonderful technology, consult the Swagger page. Even more, if you want to learn how we have applied Swagger to apps integration, visit our page.