Custom Integrations for Cloud APIs
About Integrations and Cloud apps
Large business systems are built from modules. This is very ancient tradition of accounting: way, way back in the day, accounting was run with different ledgers, such as the sales ledger or the stock ledger, and periodically summaries were copied to the general ledger. When you implement a system, you choose a provider of these modules. If you choose different providers for different modules, you need to understand how they integrate, which means how they exchange information.
When functionality is very generic, it's common to find a single solution with a core set of modules which integrate. It is very rare to find an accounting system which does not provide ledgers such as sales, bank, AP and AR, and you don't need to worry about the integration. Not so long ago, accounting applications still required you to post transactions from one module to another, but this vestige of the middle ages is gone in Xero.
But as requirements get more specific, it's harder to find satisfactory one-size-fits-all solutions, because the compromises between what you need and what a vendor sees as common requirements start to diverge.
This becomes really clear as you move closer to what makes your business different to its competitors. For example, the sales process and the customer relationship can be quite specific to a business, so generic CRM packages often don't fit well. There are a lot more CRM web apps than accounting apps.
Eventually, you will need to integrate something with your core systems, such as a B2C website.
Out of the box integrations
Cloud apps have taken-off due to simplicity and price. And a reason for that is that they focus on doing a focused set of things quite well, rather than trying to many things less well. They can afford to ignore some important functionality because integrating with other cloud apps is so easy. So integrating with an "ecosystem" has become a selling point. Most apps come with a core set of integrations bundled with the package. ERP apps, such as Dear and Cin7, include integrations with Xero and Quickbooks Online, for instance, and also with Shopify, WooCommerce, eBay etc.
We call these "out of the box integrations". The advantages of these integrations are they are cheap (often bundled for free) and supported by the ERP vendor.
However, there will be gaps. There are so many CRMs, for instance, that ERP vendors would be exhausted providing their own integrations.
You may also find that even when an out of the box integration exists, it isn't good enough
Bridges such as Zapier and OneSaas
There are services which let you build connections between apps with no coding. These work by distilling certain core functions. For example, a CRM app always lets you define a new contact. Likewise, every CRM lets you define a new contact. So if Zapier knows how to detect a new contact created in five ERPs and if it knows how to create new contact in 50 CRMs, then with a few clicks, it offers 250 new connections.
These services are convenient, but not very powerful, since they exploit "lowest common denominator" features. They can be expensive too, in the long run.
Custom Integrations and Workflow Customisations
The most expensive but most powerful integration is coded specifically for your requirements. This has higher upfront costs, but lower ongoing costs, and on this basis alone it may be a good choice, althouth compared with Zapier, you would see payback untl between three to five years, typically. The business case for custom integrations must be based on the advantage of an integration which does exactly what you want.
Integration between software applications is not new: an entire layer of enterprise software called Middleware is well know to IT managers in large firms. But the way you built such integrations was not standardised. Integrations required a huge mix of proprietary technologies, and simply accessing interface documentation required large licence fees.
Cloud apps are radically different. Documentation is free, and the interfaces are defined with open source technologies. Most cloud apps allow free access, or cheap access, to their interfaces.
As part of our integration work, GrowthPath has written a number of advanced integrations using cloud APIs.
In some cases there are solutions in the market, but our clients wanted a more specific solution that provided better value and automation.
Cloud software is largely 'what is see is what you get'. Vendors don't do customisations per client (except Cin7). New features and improvements are frequently rolled out, but you don't have much influence is setting development priorities.
However, the APIs allow automation to be built.
Here are some examples:
- Reordering based on sales history and custom forecast logic
- Integration with global corporate procurement systems
- Advanced customer service forecasting of order completion dates
Also, integrations can include business logic, not just information exchange. For example, data can be transformed before being sent to a data warehouse for advanced reporting.
Integrations and customisations typically cost AUD $3000 - $5000. We treat them like fixed price projects, so there is no monthly fee, although there are some annual costs to pay for a dedicated cloud server, which can be up to $300 a year.
Some GrowthPath Integrations
Dear Inventory Capsule CRM: Dear to Capsule sync
More advanced than Dear's solution
Dear Inventory - Zoho CRM: Sync of customers, contacts and quotes
Dear Inventory -> Zoho Reports: feed of transactional data for advanced reporting
Dear Inventory -> internal global procurement system
Unleashed -> Zoho Reports: feed of transactional data for advanced reporting
Accpac ERP -> Shopify Take orders and payments from Shopify and integrate to Accpac. Send stock levels back to Shopify
MYOB to Zoho Reports
- take data daily from MYOB Account Right desktop and send it to Zoho Reports.
- Can consolidate multiple MYOB instances into one pool of data
Dear Inventory <-> Pepperi: Contacts, Product and Orders
On July 1, 2018, the ATO requires all Australian businesses with more than 20 employees to use Single Touch Payroll. The census date is actually in April 2018. Users of MYOB Account Right Premier face an interesting problem. They are using software which doesn't really get feature updates because MYOB is encouraging subscribers to move to Account Right Live, a monthly-subscription product. This product was called Account Right Live for a few years. I will refer to it as Account Right Live.
Account Right Live doesn't support foreign currency and does not have multi-location inventory, and is unattractive for other reasons (it requires a Windows computer. It can store data in the "cloud", but it's is often too slow and larger businesses are most likely going to revert to local data, which means you basically have your old MYOB, but without foreign currency). Many businesses have stayed with legacy MYOB because they can't use Account Right Live or don't find it worth the effort of changing.
A solution which means you can stay with Account Right Premier would be attractive, but does this exist? MYOB seems to have little incentive to retrofit such advanced functionality to a product it doesn't really sell any more.
Easier access to Dear Inventory advanced pricing
Dear Inventory has a powerful advanced pricing module in addition to the standard ten price lists and customer-level discounts. Not many clients use the advanced features because it's hard to understand and hard to set up; for example, the second step requires a CSV upload in many cases.
Dear has now put a graphical front end to advanced pricing, making it easier to use. Advanced pricing is the place to add quantity breaks and free shipping rules, as well as much more.
What is 'advanced pricing'?
The advanced pricing rules can either provide over-riding prices, that is, the rules acts like a new price list, or they can merely modify the price the customer was going to receive anyway (discounts for higher order quantities, for example).
Advanced pricing is also the only way you can make special pricing for some but not all products for some but not all customers. Finally, the rules can have start and end dates, something else you can't do with standard price lists.
The spur for this has been the drive to add B2B and later B2C portals to Dear, and there are some features added to the advanced pricing module which are only for these new sales channels.
There are two concepts: Discounts and Deals.
The 'Discount' says what will happen, and the Deal defines when it happens, based on the date, the customer and the product.
The rules have start and end times (for promotions) and can trigger on products based on SKU, tag, brand or category, and on customer code, customer type or tag. That's very powerful.
You can access it via Settings -> Reference Books -> Product Deals. Although first, you need to define a Discount rule to add to the Deal.
To use it:
The new form lets you apply a discount to some customers for some products, over some period.
You need to create the "discount" first, though.
Also, you must click the "Apply Discounts" button in order entry. I don't know why. I guess this is a transitional setting.
Step 1: Create discount rules
Creating discounts is done in Settings -> Reference Books -> Stock -> Product Discounts
There are three types of discounts, but 'Free Shipping' and 'Order Level' are only applicable to the Dear B2B portal.
So for the usual Dear order flow, you consider "simple discount" and "volume discounts". Volume discounts are commonly known as quantity breaks. The "volume" refers to the quantity sold on the order line.
The Dear support article is: http://dearsystems.freshdesk.com/support/solutions/articles/1000132666
"Discounts" are the "what happens" part.
Simple discounts are the most common. They include quantity breaks,
The discount and markup rules apply to the price the customer would get if the discount rule were not applied.
From the Dear article:
Types of Discount values:
- Discount amount – all prices will be reduced by this Amount, e.g. ‘$10 off all stock’ campaign. That is, the change modifies the price calculated by the standard pricing (based on the price list and any customer or product discounts).
- % Discount– all prices will be reduced by the percent specified, e.g. ‘10% off all stock’ campaign.
- Markup Amount – all prices will be increased by this Amount.
- % Markup – all prices will be increased by the percent specified.
- Price Override –this Amount is new price for the product, with no reference to what was there before.
- Flat Amount – total line cost will be this Amount.
Note that Flat Amount caps the line price, completely regardless of quantity ordered.
Step 2: Create Deals
A Deal lets you choose when a discount rule is triggered. The selections include a date range, specific or groups of tagged customers, products specified by SKU, category or brand.
Deals also offer "order-level" discounts. A pre-configured example is free-shipping once an order reaches a value threshold.
Allocation Logic in Dear Inventory, explained
Dear Inventory has two order flows, Standard and Advanced. They both let you prioritise stock with soft and hard allocations if you use manual picking. The Advanced module has another option: authorised orders with no allocation at all. In this article, we see the differences between soft and hard allocations, and how to override soft allocations to prioritise which customers get scarce stock.
You can swap a Standard order to Advanced. An order created in the standard process can move to the Advanced process via the Convert button. See the picture below.
Some tips on getting per-location costing in Dear Inventory for more accurate margins.
Dear Inventory is a cloud-based inventory system which is currently GrowthPath's default recommendation for general purpose cloud ERP systems.
Dear has a well-thought approach to stock valuation. From the beginning Dear was designed to give users the chance of activate batch and serial number tracking for receipts, and Dear decided to fully support this with FIFO product costing per batch or serial. In fact, Dear users FIFO costing as its costing method for standard stock as well; the common choice is weighted average. FIFO and weighted average are the same over time.
Like its competitors, such as Unleashed, Trade Gecko and Cin7, Dear allows multiple locations, but it does not keep costs per location.
Imagine that you are receiving stock into an Australian warehouse and a New Zealand warehouse from a Chinese supplier. You may have the same FOB price, but different landed costs. Dear handles landed costs very well and they are practical to use, so you would like to see different costs at the two different sites. However, if you have a standard product without batch or serial, the FIFO calculation is maintained across all locations: the next item you sell with have the same cost price regardless of the warehouse it is shipped from. Not what we want.
But if you activate batch costing for this product, you can solve the problem. When you receive goods, you provide a batch number. You can leave it blank, and Dear will create a batch code based on the PO number. If you apply landed costs to the order, they are also tracked against the batch. Because the batches are stored by location, shipments from the NZ warehouse will only involve batches received there. Auto-pick is smart enough to manage that if you don't want to manually choose batches.
With this approach, costing per warehouse is quite easy, and you will have more meaningful margins. The one thing we can't do with this is keep NZ stock in NZD: if AUD is the base currency of the system, stock with supplier and third party costs in non-AUD is converted to AUD and only AUD. There is no solution.
A note about Dear's landed costs: costing is updated retrospectively, so with Dear, you can receive and ship goods without waiting for supplier and third-party invoices, and still get the benefit of landed costing.
Applying relevant information to make better decisions is a very important outcome of a medium-term IT plan. Cloud solutions are really good at enabling this, even if the first phase focuses more on the operational foundations. There are many options available for cost-effective business intelligence solutions in the cloud. Amazon, for example, has developed a rich layer which has stimulated many offers: Google for “Amazon Redshift marketplace”.
Advanced reporting, or business intelligence, has three components. It has a reporting or data visualisation front end (graphs, dashboards, reports etc). It has a data store and analytical logic layer, which imports data from different sources and allows us to group and relate the data to support the visualisation layer. Business Intelligence products always include these two layers. Many of the cheaper cloud solutions, such as Zoho Reports, effectively stop with these two layers.
The third layer is very important. Technically it is know as Extract and Load, (or data transformation). This retrieves the data and processes it ready for import. It would certainly include sales data at the invoice line level, but may include other data such as Google Analytics, Facebook analytics, marketing spend, out-of-stock scores, inventory aging KPIs etc. Extracting that data is some times not simple. Possibly you have sales data coming from different systems (perhaps due to an acquisition): this extract and load layer needs to standardise the data into a common format.
The benefits from this phase really leverages the investment in the cloud-based foundation layer; it taps the potential of cloud-based systems … for a fairly small incremental cost, there is a lot of value.
A hidden gem: Neto/Saasu Integration
Neto is an excellent hosted online store. It handles wholesale and retail very well (simultaneously), and has the best-on-the-market integration with Australian shippers, anywhere. Better than Unleashed, Dear Inventory, Shopify ...
On top of that, Neto looks after multiple price lists, variations, multiple stock locations,has a decent template engine, a fast backend, good ebay integration. It does backorders like MYOB, which is actually much more suited for smaller wholesalers than the current approach of Dear and Unleashed. A startup from Queensland with Telstra as a significant shareholder. It's not perfect: It doesn't do multi-currency, its reporting is average. And it has no purchasing module. It doesn't do supplier invoices, receipts and costing. For this, is expects you to integrate it with something else. A Neto / Saasu integration offers a lot for the money.
Common questions about cloud ERP
Cloud ERP (Dear Inventory, Unleashed, CIN-7, Trade Gecko, Stitch...) has huge advantages: fast to deploy, easy to learn and with much better reporting and insights that traditional ERP software. Above all, these packages integrate so easily with CRMs, accounting, online stores, third-party fulfilment, shippers. The business model is different: you pay per month, you no longer host the data. Here we quickly cover the main questions, advantages and disadvantages of cloud ERP for SMEs.
We have a much more in-depth review of common cloud ERP solutions here: A review of cloud ERP for Australian SMEs
Here is the IT in use at GrowthPath.
Since our foundation, GrowthPath has used cloud accounting. Initially we used MYOB Essentials, then Saasu, and as of 2016 we are on Xero.
CRM and Project Management
We use Pipedrive. Pipedrive is an excellent CRM for deal-based businesses.
We have become big fans of Trello.
Quotes are prepared with Nifty Quoter.
Email & Cloud Apps, Client OS
We use Google Apps/Google Drive. Desktop OS is a mix: OS X preferred, Chrome OS and Windows get some use. Mobile devices are now mostly Android.
Web services, Analytics
We have servers, and client servers, hosted with AWS and Digital Ocean. We use Ubuntu as the platform of choice. We use namecheap for SSL certificates, and a variety of registrars for domain names. Analytics is 100% Google.
GrowthPath uses Joomla, self-hosted, although we have good Wordpress skills.
GrowthPath does not currently use any paid traffic generation techniques. Our SEO is good and organic traffic is sufficient.
Business risks of cloud software
Cloud software has security risks, data-lock-out risks and connectivity risks. These risks can be avoided, and cloud software eliminates other major IT risks. Overall, moving to cloud apps such as Xero probably increases overall security and lowers data risk if sensible policies are in place. Before moving to cloud accounting such as Xero, or to a cloud ERP system, it's worth reviewing these risks.
Xero Transaction Limits and larger businesses: Nov 2018 update
There are questions about how well Xero performs under "higher loads". Our first concern was for medium-sized wholesalers. Xero talks about limits as low as 1000 'transactions' a month. Our testing shows that Xero performs well at much higher transaction volumes. The first test results are based on 3 years of 2500 transaction rows per month (and then matching payments uploaded via a bank CSV). The second test run was much larger.
Note that after some discussions with Xero and based on our own experience, we (GrowthPath) believe that businesses can interpret the 'limit' of 1000 invoices a month as advisory. This limit does not form part of the terms of service. In Jan 2017 Xero published some small changes to the API limit, and these limits, which are enforced, allow a much, much higher load than Xero's advisory limits. Hence, stress testing is relevant because you will reach the practical limits of Xero before you exceed API limits. Exactly what are those practical limits? That's the point of this article.
For a medium sized wholesaler, we assume that Xero is the backend to a cloud-based inventory package, such as Unleashed or Trade Gecko, so we did not use Xero's inventory module.
Compared with a B2C (retail) business, a wholesaler has fewer customers, fewer invoices but invoices which have many more lines. Most sales are on credit, so reconciliation of bank feeds is important.
Testing was initially carried out in June 2015 with a standard Xero trial account and then updated in November 2018 with much higher loads, in preparation for a talk at Melbourne AccountTech 2018. The browser used was Firefox on a fast Linux notebook. The testing environment ranged from an office 100 Mb/s connection (at the computer) to 5 Mb/s Indonesian hotel wifi.
Data was created with python scripts and automatically imported with CSV files, and browser automation was used for bank recs, document approvals and simultaneous invoice entry, using Python & Splinter. We also did some uploads via the API mainly to load Xero for testing. GrowthPath can perform custom load testing as a consulting assignment if these results do not provide the required insight.
Cloud ERP inventory for wholesalers, manufacturers and importers
Unleashed, Dear Inventory, Cin7, Neto and Trade Gecko compared and reviewed, in a nutshell
GrowthPath has migrated clients in Malaysia, Singapore, New Zealand, the UK, PNG and around Australia to cloud ERP solutions. The clients left desktop solutions sch as MYOB and SQL Server-based legacy systems for cloud-based accounting and supply chain solution (ERP). We have success with Xero + Unleashed, Xero + Dear Inventory and Xero + Cin7. At the moment, we recommend Dear Inventory for most clients needing a supply chain solution, and Cin7 for more advanced requirements including POS, an integrated B2B portal and better logistics and market-place integrations. We see the competitive pool also including Unleashed and Trade Gecko, but at this stage Dear and Cin7 are our recommended solutions.
Broadly, Unleashed, Dear Inventory and Trade Gecko are competing for the same target market. They are good general purpose supply chain solutions for wholesalers, and they provide a number of integrations for e-commerce sales channels and cloud CRMs.
The traditional server-based monolithic 'do-everything' systems are dying, but some have emerged as hosted solutions. This article doesn't consider these systems, such as MYOB Advanced or the Microsoft ports which come under different names. These systems generally offer a more sophisticated accounting solution, but they have a much smaller base of connectivity with e-commerce, CRM and other cloud-solutions. GrowthPath emphasises software solutions which are built from the ground-up to integrate with other cloud apps: this does mean complexity with synchronising apps, but it offers much more flexibility and innovation. When we talk of "pure cloud ERP", we mean those systems which have open APIs and a deep ecosystem of connected apps. In the second half of 2018, both Dear and Cin7 are rolling out new tools to make the accounting integration better, which addresses one of the perceived weaknesses of the non-monolithic pure-cloud approach.
A note: this is a very competitive market. Features are being added quickly. Dear Inventory spent the second half of 2017 building a new interface and rebuilding their API into the best on the market, and in 2018 has resumed feature rollouts, and there are many coming. Cin7, Unleashed and Trade Gecko are also adding features consistently.
Cin7, in my opinion, targets more complex businesses. It is considerably more expensive, but it has features not found elsewhere, such as some multi-entity support, EDI and forecasting, and the best POS and B2B portal, a mobile-friendly Pick & Pack module and more rigorous accounting integration tools. Cin7 currently prices by turnover and users, unlike its competitors, which price purely by users. Cin7 offers both deeper ERP functionality and much broader functionality. It is the only option if you want to weight landed costs by dimensions (weight and volume), for example. It has better multi-entity support. In terms of broader functionality, it offers EDI and forecasting, includes goods POS and B2B portals, a mobile-friendly Pick & Pack module, a basic CRM and rigorous accounting integration tools. Cin 7 is more open to customising functionality.
Unleashed has the best user interface. But Dear radically overhauled its interface in the second half of 2017. The first phase of this was the introduction of an advanced sales module which enabled a more sophisticated multiple-fulfilment workflow and some faster processing of orders, but at the cost of losing bulk actions, so I think Dear users are looking forward to this being completed (and bulk actions coming back).. Trade Gecko's interface is quite nice, no complaints.
Cin7 has a complicated and information-dense user-interface, which is overwhelming but rewards those of us who take time to read the documentation. I suspect the developers have been the most influential rather the UI experts.
Neto is an odd fish. Mostly known in Australia, it was originally an online shopping product similar to Shopify (but more capable and better designed). It was able to serve both consumer and small-scale wholesale channels. Over time the product expanded to have a pick-pack module, beating every ERP except Cin7, and it has a POS option. Its once-rudimentary inventory management features have grown to include an attempt at purchasing and costing. Most businesses of any scale won't find it good enough yet: it is crippled by no real multi-currency, and it still lacks depth in its stock management. The 'pure-play' ERP vendors still have a large advantage in supply chain management, and at the same time they are all adding POS and B2B portals, although they are leaving B2B e-commerce to the specialists. I am not yet ready to group Neto with the genuine ERP products but it's one to watch. In its original role as a frontend for online commerce, it's a good choice, although Dear no longer integrates with it (Cin7 has a good integration).
Who is moving to Cloud ERP? Not just MYOB upgraders.
It's not just a question of upgrading from MYOB. GrowthPath implements cloud ERP for businesses leaving SQL Server-based mid-tier packages such as SAP Business One, MYOB Exo, Prism and Attache. Integrated cloud ERP can't match the core accounting power of mid-tier systems such as multiple legal entities, but they have advantages in cost, speed of deployment and vastly superior integration with CRM and online commerce. They remove the need for servers and remote access, which are both expensive and security risks. Cloud ERP systems are much easier to use. Clients see a much greater use of features among staff because these systems are simpler to understand. New hires get up to speed faster, and existing staff get more information more quickly.
The heavy lifting is done by the cloud accounting and supply chain combination (the traditional ERP scope), commonly Xero + Unleashed, or Xero + Dear Inventory. The loosely coupled nature of the systems is not all positive, but as a business looks to add more automation and business intelligence to the way it works, the plug-and-play approach becomes vastly superior. SMEs can access IT as good or better than anyone had five years ago. This is an incredible levelling of the playing field between medium sized SMEs and large businesses. It's bad news for traditional ERP vendors. The functionality gaps are closing fast and in core ERP and fulfilment, there are already clients leaving legacy ERP who don't find any backwards steps. The rate of innovation in the cloud ERP is concentrated among a small number of products, unlike the hundreds of SQL Server-based ERP choices, which means potential clients are getting a lot more innovation bang-for-buck.
It's great to have a well used accounting system quietly gathering thousands of data points about your business. Your bank transactions. Your invoice detail lines. Your purchases. Your stock movements. Your postage and electricity costs. The location of your customers. Their history with you. And so on.
But how to turn it into profitable insights?