If that sounds arcane, consider that anyone who has ever played a music CD on their computer has probably unwittingly used a web service that supplied the artist, album and track listing information, or anyone who has ever purchased a book online has had the shipping cost calculated in real time by a web service. Web services represent the behind-the-scenes building blocks of the nascent semantic web. The Information Research community has already been alerted to web services "Watch This: Web Services" volume 8, number 1, that outlined the motivation to build web services and sketched a little of their technology.
The column suggested that web services would flourish in "communities of trust". At this moment on the Web, the major centers of trustworthy interconnectedness would be the web-based enterprises of Amazon. In short, right now Google provides us with a web service and invites us to stitch it into the applications we build.
Iverson's book is useful by showing us how to do exactly that. Iverson's ambition is to provide a highly conceptual approach to web services and their technologies. In the first several chapters he sketches how the basic client server paradigms evolved towards the web server model. Especially refreshing is his ironic detachment in pointing out all sorts of maintenance problems that may beleaguer distributed and interdependent systems such as error handling, protocol conflict, security, bandwidth and latency issues, and so on.
At the same time, he convinces that web services are indispensible to doing a high-volume business on the Web. Imagine receiving numerous PayPal alerts daily that each require a responding confirmation of sale by fax. He supplies an example of an application that automates this potentially time-consuming process. The key insight of the book is found in the early chapters that bridges from the Web of static pages to the Web of active streams of information:.
In a book designed to be a survey of current applications and potentialities, supplying the technological examples is always difficult. Web APIs generally allow remote computers on different platforms to talk to each other using methods that were previously very difficult.
They are also sometimes referred to as Web services. It is helpful to think of a Web API as a series of Web services, each of which has one or more procedures that can be called using the Internet. Although Web APIs and Web services are separate concepts, it is common and acceptable to refer to the two concepts interchangeably because they are so closely related. Chapter 1 In the most generic sense, a Web service is merely a function or procedure that can be called over the Internet. This generic definition includes Web services that can be called only from specific platforms, such as Windows, and only after installation of certain software on the client.
However, in the context of this book, the term Web service refers to services that are platform-neutral and so can be called from any platform capable of communicating using standard Internet protocols. XML is a text-based syntax that can be understood by various platforms, as I discuss in a later section. Despite common misconceptions, XML Web services can be called from applications that are not browser-based, such as traditional Windows applications. As long as the application can communicate using Internet protocols, non-Web—based applications can make use of the same functionality.
Despite the great value of Web services, their adoption industry-wide has been slow in coming. The great news is that, as of this writing, Web APIs and Web services have finally been adopted by big players in the industry. Industry leaders such as Google, Amazon, and eBay have embraced the Web services concept and have created Web APIs that enable you to implement their core features in your own applications. This recent movement toward Web APIs is my primary reason for writing this book. In it, you will, of course, explore several leading Web APIs to learn how you can use them in your applications.
As you will see in the following chapters, most of these leading Web APIs require you to obtain a developer token that must be included in each request. Most Web APIs have a free limited-use license or trial period, and some of them require payment for the service. Most of the Web services available today are based on XML and can, therefore, be called from various platforms. The focus of this book is primarily on XML Web services. What Is XML? A very simple example of an XML document is shown here.
For each contact, a contact type and a first and last name are specified. All these computers can read it because it is a text file. Invoking an XML Web Service A very important aspect of communicating with a Web service is how you can physically execute a specified function. Web service providers can enable all three methods, but they typically disable one or more that they decide are not appropriate or desirable for various reasons.
The fact that vendors support different methods is the subject of much debate. You should, however, understand how to use each method so you can work with the various Web APIs that are available. The methods are introduced here, but I will cover them in greater detail in the chapters that follow. It refers to invoking a Web service using parameters included in a URL. Next, you see the various parameters being passed.
These parameters are being passed to an Amazon API currently version 4. The URL includes a parameter for the service being called AWSProductData , the subscription ID your developer token , the operation to perform a search , the search index to use books , and the keywords to search on Denise Gosnell. You will see examples of this in action throughout the book. Pasting the URL listed previously into a Web browser returns results similar to those shown in Figure Identify the Web service you would like to call and the parameters it accepts. Formulate the URL containing the parameters.
Test the URL from a Web browser to ensure it works correctly. Despite the advantages of REST, it also has limitations. For example, you do not want to use REST when you need to transmit sensitive data because you do not want to include sensitive data in a text URL. It can still be used to update data as long as the values in the URL do not exceed the maximum allowed length.
Formulate an XML document containing the parameters. Dim web As New System. Thus, complex types such as datasets, structs, and classes can be used in SOAP communications. SOAP is the primary message format used by the. But there is good news. NET and the. NET or by using a compiler tool if you are using just the. Then, all you have to do is declare and call the Web service from your code just as you call other objects. WSDL is an XML-based language that was started as a joint effort by Microsoft and IBM as a way to document what messages the Web service accepts and generates in order to document what procedures you can call and what type of values they will return.
The elements that you see for these functions are the parameters that the functions can accept. NET include the following: 1. Using a text editor such as Notepad , create all or part of the. NET program where you want to use the Web service. EXE command line tool. Revise the. NET program to include the lines of code that call one or more functions of the Web service.
Create a new project in Visual Studio. Add a Web Reference to point to the Web service you wish to call. Add code in your program to create an instance of the class representing the Web service, and then call the appropriate methods in the Web service. In this example, you call the same Amazon Web service with the same search criteria that you saw in the REST examples earlier in this chapter.
Net, the steps are quite different to call that same Web service. Open Visual Studio. Specify TestAmazonWebService or another suitable name for the Name and change the project location if desired. Then click OK. A screen like the one shown in Figure is then displayed to allow you to specify the Web service to which you want to add a reference.
Alternatively, you can search for Web services using the links indicated. In this example, specify the location of the Amazon API version 4. A list of the methods available for that Web service is then displayed, as shown in Figure You will notice that multiple references are added to the project, as shown in Figure , along with a Web reference called Amazon. This name is the Web reference name that was specified on the Add Reference dialog box.
EventArgs Handles MyBase. ItemSearchRequest AmazonRequest 0. Items 0. You should see results similar to those shown in Figure Figure Also note that if you receive an error message when running the program stating that CustomerReviews1 cannot be reflected, please consult Chapter 4 for specific instructions on how to resolve the error. NET used the WSDL file to create the objects that enable you to use the IntelliSense feature as you type and to refer to the Web services in your code just as you do other objects.
Review the VB code in more detail to see exactly how that works. ItemSearch AmazonSearch Finally, you looped through the items in the response to build an output string for display to the user. Web services are growing in popularity every day. By using the Web service APIs of these leading vendors, you can enhance your own applications tremendously. The remaining chapters are dedicated to illustrating several different Web service APIs in detail and to providing you with some real-world examples of using those APIs alone and in combination from mobile devices, Microsoft Office, and in various other ways.
Google has made several of its popular features available in an API to developers to use in their own applications. You are no doubt already aware that Google is a search engine that enables you to retrieve a list of Web sites that match search criteria you enter. For example, if you navigate to www. An example of a search result in Google is shown in Figure Chapter 2 Figure In the example of Figure , the search returns pages that have content related to the search phrase learn Spanish. If you want to specify that either word is acceptable, you type the following: learn OR Spanish.
Because the Google search engine is free to Internet users, Google makes money by selling advertising. If you are like most people, you already know how to use Google to do simple searches such as the one shown in Figure However, what you may not know is that Google also allows a user to perform more advanced searching by limiting the search results in various ways.
Google has various search options that can be used to further limit the searching and it also offers features such as language translation, spell checking, and more. Google returns a copy of the page from the last time the page was indexed by Google. Note that this search is not based on when a page was created, but when it was indexed by Google. Unfortunately, daterange: works with Julian dates instead of the calendar dates, so you must use a Julian date conversion tool to calculate the Julian date. SAT daterange filetype: This option allows you to limit your search results to files of a particular type.
Suppose, for example, you want to limit your search results of learn Spanish to only those files that are in PDF format. You can use the following search: learn Spanish filetype:pdf Upon executing the previous search on www.
Figure 17 Chapter 2 Notice that the primary search results now include only links to PDF documents that match the search criteria. The descriptive text of a link is what gets displayed to the user, and it is often different from the underlying URL address to which the link points. After it executes the info: command, Google returns a page that allows you to select from multiple link categories to retrieve this additional information.
In other words, the URLs, titles, and links are ignored. This option is great for running searches that involve words that are common in titles or URLs. Allintitle: is a variation that finds Web pages where all the words specified make up the title of the Web page. This might be useful, for example, to find alternative sites to search in the same category. At the time of this writing, the Google API was in beta. Therefore, the examples in this chapter are written using the beta version. Although obtaining and using the developer key is free, Google currently enforces a limitation of 1, queries per developer per day.
To sign up to use the Google API and to obtain a developer registration key, go to www. When you click the link to download the Google API, you are presented with a license agreement similar to the one shown in Figure that you must accept before the file can be downloaded. You select the Agree option and then click the Download Now button to start the download. When you click the link to create a Google account, you see a screen similar to the one shown in Figure You are also prompted to type the word verification.
After clicking the button to proceed, you receive a confirmation screen similar to the one shown in Figure informing you that your key has been sent by e-mail to the address of your account. Open the e-mail and copy the developer key to a place where you can easily access it. Later, you will need the developer key for all calls to the Google API.
Search Requests In addition to simple keyword searches, the Google API supports the following search options: allintext: allinlinks: cache: daterange: filetype: info: intitle: inURL: link: related: site: 23 Chapter 2 Syntax of a Google Search Request The doGoogleSearch method enables you to execute a Google search request. You should use 0 if you want the first set of results. It can be a value from 1 to This field is usually left blank to leave the search unrestricted. You can leave this field blank.
Other result values are also included in the search response, but are used less frequently. Please consult the Google API documentation for a complete list. This method allows you to retrieve the cached version of a URL from the Google cache. The details of how to call each of these three methods are explained later in this chapter. NET as well as directly from the. Executing a Query Using Visual Studio. NET 1. You may recall from Chapter 1 that the WSDL file of a Web service explains the features that are available in the service.
A screen similar to that shown in Figure is displayed. For the project name, specify GoogleSearchConsole or another suitable name. For the path specify the location where you want the project to be created. Click OK to create the new project. Click the Add Reference button to add the reference to your project. In the Solution Explorer of the project, navigate to the Web references node and select the Google Web service that was added.
Modify the properties of the Folder Name for the Web service to Google so that you can use a shorter name in your code. The results of this modification are shown in Figure WriteLine Console. WriteLine result. URL Console. ReadLine Catch exception As System. SoapException MsgBox exception. Message End Try End Sub 7. You should see a console window similar to Figure that retrieves information from the Google API based on the criteria specified in your code.
Click Enter in the console window to end the application. First, you created a new Google Search Service. GoogleSearchService Next, you declared various variables to hold the parameters to pass to the search query. WriteLine Next You then specified a readline command so the screen would pause for user input. ReadLine An error handler is used to catch any errors during this process. Catch exception As System. Executing a Query Using the. Add the following code using Notepad or another text editor to a new file called GoogleSearchConsole.
Message End Try End Sub End Module This code is identical to the code you used in the prior example except that it also includes the Imports statement to use the System library. When you use Visual Studio. NET, this information is stored in a separate file and generated for you usually called AssemblyInfo. Next, you have to link the code to the Google WSDL file that is, you must perform the equivalent of adding a Web reference and generating the files necessary to communicate with the Web service. NET does this automatically, but to do so manually, you must open a command window and navigate to the directory where your code is located.
This step is easiest to perform if you open the command window using the Visual Studio. NET Command Prompt. Then, execute the following command. NET Command Prompt so that the proper path settings are included automatically. Another way is to specify the complete path to the WSDL.
One example of where you might find the WSDL. Alternatively, instead of specifying the long path to the WSDL file on the Google server, you can download a copy of the WSDL file to your working directory and then use a command such as this: wsdl. A new vb file is created in your directory after running the wsdl. You are now ready to compile the application using the vbc. Run the GoogleSearchConsole. There are fewer files to work with when you use the command line tools instead of the Visual Studio. The remaining examples in this chapter are implemented using Visual Studio.
NET so you can visually inspect the forms and features. Looping through Results Google returns only ten results per query. Other results are available to you, but you have to loop and query for the next set of ten. You can expand the prior console application to loop through multiple sets of ten results.
Because the intMaxResults value is set to 10, each time the intStart variable is incremented by 10, the next ten search results are returned. The previous example performs the same Google search three times so that it can receive the first set of ten results, the second set of ten results, and the third set of ten results. From Visual Studio. NET Web Application as the template. Use the toolbox to drag and drop a label, a text box, and a button control onto the Form.
Change the name of the Text property of the label to Search Google and that of the button to Search Now. The Form should now look similar to the one shown in Figure Figure 4. Change the Web Reference Name to Google so that you can use a shorter name in your project. Select the Add Reference button to add a reference to your project.
Note that by double-clicking on the button, you cause VS. NET to automatically generate an empty click event. EventArgs Handles btnSearch. Write result. Save and run the program. You should see a screen similar to that shown in Figure Figure 9. Type in your search command in the text box and click the Search Now button.
Figure 35 Chapter 2 2 — Return Random Pages In this next example, you retrieve a random Web page, such as one for expansion of knowledge.
Translation of «fedex» into 25 languages
If you want, you can modify the prior example instead of creating a new ASP. NET project from scratch. This example automatically navigates you to a random page selected from the keywords you specified. Use the toolbox to drag and drop a button control onto the form. The form should now look similar to the one shown in Figure Figure 36 4.
EventArgs Handles btnRetrieve. Redirect result. Message End Try End Sub 8. Click the Retrieve button and you will then be redirected to a random page. Take a minute to read something on the random page and learn something new. For the project name, specify GoogleExamples3and4 or another suitable name, and for the path specify the location where you want the project to be created.
Make sure to change the Web reference name to Google before clicking the Add Reference button. Drag and drop three labels, two text boxes, and one button to the form. Arrange the controls and change the Text properties of each control as shown in Figure Figure 5. Change the Name property of the top text box to txtSearch, and change the Name property of the bottom one to txtFileName.
Change the Name property of the button to btnSearch. Add the following imports statement to the top of the class module before all other declarations: Imports System. WriteLine streamWriter. URL streamWriter. Close Catch exception As System. Enter a search string as well as a text file where you want the search results stored. An example of a search is shown in Figure Figure Click the Perform Search button.
After waiting a few seconds, navigate on your hard drive and locate the new text file that was created with the results of the search. An example of text file output is shown in Figure Figure 4 — Use Google to Check Spelling In this example, you use the Google spell checking feature to suggest alternate spellings to the word or phrase specified. You can expand upon the project you created in the prior example. Rename the Text properties of the controls as shown in Figure Change the Name property of the text box to txtSpelling, change the Name property of the bottom label to lblSpelling, and change the Name property of the button to btnSpelling.
EventArgs Handles btnSpelling. Specify one or more terms in the spelling search field and click the Check Spelling button. The suggested spelling should be displayed, similar to the examples shown in Figure Create a new Web project as you did in Examples 1 and 2. Specify ASP. Change the Web reference name to Google so that you can use a shorter name in your project. Message End Try End Sub 5. Save and run the project. Specify a Web site to retrieve from cache, such as the one shown in Figure , and then click the Retrieve Page button.
Figure 7. Following are some additional examples of ways you might want to use the Google API. Additional examples of the Google API are also included in the later chapters and case studies at the end of this book. An example of this is illustrated in Case Study 1. Remember the old MadLibs stories? For example, Macromedia has a solution that allows for integrating Google results into Flash applications.
Then it returns the search results to you in an e-mail. Figure Within a short period of time after sending the e-mail, you will receive a response from the CapeMail service with the top ten results from Google that match the specified search criteria. An example of these results is shown in Figure This tool allows you to enter a domain, and it graphically charts all the pages related to the page you enter. An example of the pages that are related to microsoft.
This search engine tool runs a Google search with an additional random word to give you different results than you would otherwise get. If the 1, query maximum number of calls to the Google API is hit for the day, the tool just redirects you to Google. An example search on the site for google api is shown in Figure Notice how the word concert was randomly added to the search and the results and that the results vary from what you would have gotten without the word concert.
These are just some of the many ways that third parties are using the Google API. Summar y In this chapter, you looked at the popular Google search engine and how to make use of the Google API in your own programs. You now have enough information to be dangerous in using Google in your own applications. For more information about using the Google API, please consult the later chapters of this book that illustrate using Web APIs from Microsoft Office, from mobile devices, and in the comprehensive case studies.
Microsoft has made several of these location and mapping services available in a MapPoint API for use in your own applications. You can obtain a free trial account to use the MapPoint API; after the trial period, you pay a licensing fee. This chapter provides you an overview of how to get up and running with the API and some examples to get you started. Microsoft has a software package called MapPoint that you can purchase.
All these services use the same core MapPoint database for their information. Figure When you enter an address and click the Get Map button on Figure , you can retrieve a map of the specified location from the MapPoint database. An example of this is illustrated on Figure In this section, you look at the features supported by the MapPoint API, licensing options, as well as setting up an evaluation account. MapPoint supports various features such as finding addresses, finding non-addressable places, reverse geocoding, address parsing, finding nearby places, custom locations, routing, map rendering, and Points of Interest POI.
These features are described in detail throughout this book. Also like most Microsoft products, a free trial period is available. For details on licensing terms, contact Microsoft directly. This page is shown in Figure An example of the signup page is shown in Figure After completing the signup process online, you receive a detailed e-mail within approximately two business days. The e-mail contains various IDs that you need to complete the setup of your account.
The e-mail also contains detailed instructions on what to do to use the evaluation account.
Look at them again here. A screen similar to Figure is displayed explaining installation of Microsoft root certificates. Figure Click the First Visit button, and a screen as shown in Figure is displayed. After reviewing the information on the Welcome screen, click Next. A screen like the one shown in Figure is then displayed. Fill in the fields for log-on name, user access key, password, and password verification. The log-on name and access key are contained in the introductory e-mail mentioned previously. After filling in the required information, click Submit.
You are then prompted to type your name and accept the terms of the license agreement. After you click the Submit button, a success message is displayed to let you know your extranet portal account was set up correctly. Here, you are prompted to enter a username and password. For the password, type the password you just created during the extranet portal account setup process.
After you successfully log in to the site, a screen similar to that shown in Figure is displayed. You can also view the online documentation, retrieve the SDK, and so on. A screen similar to Figure is then displayed. The link from the MapPoint Customer Service site did not work for me because Microsoft was in the process of reorganizing several Web pages.
As a last resort, you can search the Microsoft site for the SDK. The download page for the MapPoint Web service looks similar to that shown in Figure After downloading the SDK file to your hard drive, you extract the contents of the zip file to a directory. You then run the setup program to install the examples on your computer.
Follow the prompts on the setup program to accept the terms of the license agreement and install the SDK. For instance, it shows you how to make the SDK examples work without major hassles. If you open Visual Studio. A screen similar to the one shown in Figure is displayed. Figure In order to get the code samples included in the SDK to work, you must make some modifications to the code.
The modifications depend on what code sample you are working with. You can see in Figure where to find the Sample Code topic in the Help system so you can locate information about the particular code sample of interest. A common error message you might receive when you try to run a program for communicating with the MapPoint API tells you that the operation is not authorized. This typically means that you did not specify a valid set of credentials to log into the MapPoint API.
The error dealing with improper credentials is explained in the Executing Query section of this chapter. Another common problem occurs if the API methods are not recognized in your project. You have to refresh the Web reference in your project in order for the methods to be recognized on your machine. You must exactly match the path indicated by the error message in order for the 58 Using the MapPoint API project to work. To avoid guessing, consult the online help documentation for the sample project to see exactly which modifications you must make.
Figure shows an example of a help topic that illustrates how to modify a particular code sample so that it runs on your machine. FindServiceSoap Service The FindServiceSoap service has several methods that deal with finding addresses and related information, as described briefly in the sections that follow.
Find Method This method can be used to locate places based on the Find options included in the specification. In other words, this method finds points of interest near to the geocode address you specify. ConvertToLatLong Method This method converts pixel coordinates of a specified map to latitude and longitude coordinates. CalculateRoute Method This method calculates a route based on a particular route specification. The CommonServiceSoap service can be used to look up details that you might use for working with the other MapPoint API methods, such as a list of data sources that can be used in your queries.
Much of the information provided by the CommonServiceSoap is also described under various topics in the Help documentation, so you need not use these methods if all you want to do is view the data values already displayed in the Help document. As you should recall from Chapter 1, the WSDL file of a Web service explains the features that are available in the service. These concepts are illustrated in more detail in following sections. In the information e-mail, the customer ID and password values are called web service soap account id and web service soap password.
Review: Real World Web Services.
You have multiple ways to specify your credentials. The first is to specify the credentials one time in a config file, such as a Web configuration file or appsettings configuration file. Doing so applies them to 63 Chapter 3 the entire application. I decided to explicitly include lines of code for each instance in this chapter to make the examples less dependent on other files.
However, if you want to learn how to modify a configuration file, consult the code samples that are included in the SDK and described in the Help documentation. A common error message that you see when credentials are not specified correctly tells you that the operation was not authorized. This error has other causes, as well, but the most common cause is improper credentials.
For the project name, specify MapPointSearch, or another suitable name; for the path specify the location where you want the project to be created. A screen similar to that shown in Figure should be displayed. Use the toolbox to drag and drop three labels, two text boxes, and one button control on the form. Change the Name property of the first text box to txtAddress, rename the Name property of the second text box txtCity, rename the Name property of the label lblCompleteAddress, and change the Name property of the button to btnGetAddress.
Modify the Text properties of each control as shown in Figure Figure 8. Add the following imports statement to the top of the Form1 code section of your project, prior to all other code: Imports MapPointSearch. MapPoint 9. EventArgs Handles btnGetAddress. Text myAddress. Results 0. Input your customer ID and password on the appropriate lines of code. As I mentioned previously, these values are provided in the information e-mail you receive when you set up your account. Very thorough! And good-looking, too! Thanks, Henneke — I wanted to do something no one else has done before.
Site performance is so critical with ecommerce. Hopefully this data helps some folks. Cost and feature set tend to take away the focus from these foundational elements. And although some parts can be corrected after, starting out well is a lot easier. Really cool infographic. I actually sell a product just using paypal since I thought it might be the easiest for me to set up and it is what I am most familiar with.
I guess really lots of ecommerce solutions even integrate with paypal however I do not run the sales of my products as a store just individual sales pages for a pay per product approach. This post is impressive! Great content!
The Anatomy of Shipping Labels
For my money though, comparing SaaS and deployed platforms is a bit too big of an ask. Comparing Apples with Apples is a good ambition but by their nature you have two very different types of fruit there. Magento site performance, for example, is almost entirely dependent on how well set up the store is. A good Magento developer can make it sing — but it takes time and expertise…. As a SasS solution the variance between Shopify sites should be much smaller.
I think you just saved me a week of research, and the results are much clearer than if I did it myself. Outstanding use of images showing all the ecommerce platforms. I am torn between using a free ecommerce platform which involves too many tweaking or just go for a hosted one. That is going to be a must for customers on mobile devices, and will definitely give a sales boost.
Counting the features seems boring, yet easier to do that speed tests, since to get reliable results you need to place the compared platforms into exactly the same conditions. Were all the platforms placed in equal conditions from the point of view of servers? If yes, what server was used? What was the PHP versions etc? What pages pf the websites were tested? What versions of the software were used?
Your performance metrics are much appreciated. One in particular is a standout, that being actual SEO performance. We have a tiny and ancient little niche business of selling genuine — unworn — vintage shoes from the 30s — 70s aVintageSole. Any update on this for ? I know this is rather a necessity. But as such, I might as well now compare to other platforms. So, in your evaluation of Volusion, were you basing the performance and SEO ratings on a newer, responsive site or everything on their platform?
I know I need to move to response. Any hints in that regard as we lean into migrating forward? This post is impressive… I am using Shopify and believe me I am very happy with it. And after reading your post. I think I took a very smart decision. Really, I like its features very much. Hey dude. You claimed there is no affiliate link, but here I extracted your website code..! Anyhow I think most of the stats are true..! The post didnt have any affiliate links for over a year after publishing.
It was only after a reader of mine suggested that I do it that I ended up adding some affiliate links. Im working on a site revamp and will add an affiliate disclosure. I work for an app developer company — so I may be subjective in that sense — but for me eCommerce apps add a lot of value on top of the standard offering of the platforms. For instance, we provide AI powered personalization for the eCommerce websites. Thank you for this report. It has saved me a lot of time and effort.
Amazon Logistics: Innovation or Exploitation?
I do however have one question. Have you heard anything good or bad about this? I am trying to find out if it has drop shipping integration. There is a charge for each transaction but I am looking for security, ease of use, the best customer service…. Time is money and I would like to use a company that will answer the phone and emails asap. Any help that you can provide would be great. Thank you!! Really good article! Tried other guides, same result. We had a similar issue. We switched to Magento which equally sucked.
My reply to you is to not give and just know there are better options now. Great post -extremely helpful for someone just starting out so thanks very much for sharing.
Would it be possible to get a copy of the full report? Do you have a view of good platforms for someone who will be using subcontractors to deliver part of the service and who wishes to on one side upload e. Excellent Post, Darren! Great information to share here. And really difficult to find right eCommerce platforms for our business. As you know, if choosing the wrong one can be a huge pain. Here you have included infographic and platforms are awesome. GREAT article! I am totally new to ecommerce.
Awesome Article. I played with most of them before settling in on Woocommerce. Fair to my budget and does the small business job nicely. I have been a many-many-years Wix user for my online business and I have been wanting to try a new platform. I found this article to be SO informative and I really appreciate your attention to detail. Very helpful to understand ecommerce. Now your product is just a one click away from you.
By Tochfeed you can discover watch and purchase. Toch — watch Discover Shop. I must say its a great list of e-commerce platforms for SMBs. I personally like Shopify the most due to following reasons — — Its affordable — Hosting is included in the plan — We can customize the storefronts without having much knowledge about web designing and development — Shopify has a great support — They have one of the biggest community on the web to help each others.
When I was looking for a new shopping cart I found it daunting, because there were so many products out there it was overwhelming. You look at the review websites, but it is hard to tell if the website has a dog in the fight. I was expecting a long list — instead I found one link — to BigCommerce. I changed immediately and loved the ease of switching over and also the wonderful features. A few months ago I was looking for some software reviews pertaining to some other need and wound up in a website called Capterra.
They have reviews for software of all kinds and I left a review of the BigCommerce platform on there today. In my review I said that these reviewers were probably shills working for a competitor, because the platform is fantastic. It is really a drag that people are able to bring down the rating on a great product like BigCommerce. I can only imagine how much work has gone into this. There are only few content creators that invest this much time into content creation.
I personally like using woocommerce to avoid any liability or for validating my niche idea before starting a full fledged store. I have an office supply and school supply store. Both sides have large catalogs. We stock and drop ship. We are also located in the Caribbean. We need integration with payment gateway that works here and another that works in the USA.
Thank you for this article. It was so informative to me. I sell Paparazzi jewelry usually through facebook live parties or out of a room in our house and I am interested in creating some sort of online store to post pictures and sell my jewelry. I have about pieces currently and not a lot of extra money. Do you have any advice or suggestions for me as to where to start? I already have a web host and a domain name. Which ecommerce platform will be good for my business? I need a site that enables short i. Which platforms can do this and is there a leading contender in your view?
You can build custom product pages in Elementor. You can attach videos to woocommerce product images. I cant reccomend a platform without knowing your business model, how you plan to fulfill products, what channels you plan to focus on, and how you will market the site. Typically WooCommerce and BigCommerce are great options for a content-driven site. If you have a small boutique, SEO isnt critical and you plan to drop ship, Shopify is good.
Really enjoyed your analysis of e-commerce platforms. There seems to be more and more popping up ever day. Seems a bit overwhelming for a newbie. Commerce HQ offers a platform with no credit card processing fees. How can this be. Just trying to make sense of it all.
Any insight would be greatly appreciated. Hey Sam — Commerce HQ seems to have a lot of great features out of the box, but I cant vouch for them as I did not test sites running on their platform. If you are processing a credit card payment online, you will pay a transaction fee to the credit card company that is unavoidable. Most platforms say no transaction fees meaning they dont charge an additional fee on top of credit card processing fees. I got a website a few weeks ago through godaddy. And I want to be seen with seo and be searchable in google and have my products on google shopping.
They said great you have unlimited amount of items you can post etc. I was thinking perfect! Then WHY is that up there! And he said we don submit to google anymore? I cried. So frustrated. Why in the world would I want to have a website that does not submit feeds to google??!! Nobody told me! They just wanted to make that sale!
I am irate!