30

I have recently been asked to develop an application that will have to integrate with Sage Line 50 financial software.
I've done some googling and I am surprised at the lack of info on interfacing with Sage from Java or .Net. Is Sage such a black box that you need to sign up to a Sage Developer program before you get any info?
Are there any open source options to allow apps to talk to Sage?

Any info appreciated.

Cheers

Paul

Gilles 'SO- stop being evil'
  • 104,111
  • 38
  • 209
  • 254
Paul
  • 2,543
  • 3
  • 26
  • 36
  • Really off-topic, but do you do freelancing? How did you end up working on this project? – core Mar 19 '09 at 09:04
  • 2
    It's a surprisingly common requirement for small businesses, particularly in the UK - a huge amount of the use Sage for their accounting and getting numbers in and out of it is a common request. – Matt Mar 27 '09 at 12:29

4 Answers4

22

Theres a new methodology Sage are moving to called SData. I think you can read about this at http://sdata.sage.com/

The long term aspiration is that SData will provide full CRUD facilities and simplify integration between different Sage programs (of which there are many!) and therefore provide a consistent web service that 3rd party applications can be integrated with too.

Paul
  • 2,543
  • 3
  • 26
  • 36
Atuitive
  • 273
  • 3
  • 7
  • 4
    If you're looking for accessing data from Sage financial products then SData is Sage's own open source method that doesn't require a developer licence. Heavy integration like modifying Sage forms etc then you'll need the developer licence (access to SDK). – user692942 Apr 25 '13 at 08:42
  • 1
    This appears to have since been replaced by https://developers.sageone.com/ -- now a free self-serve program apparently run out of the UK. Sadly, for my purposes, while it supports the US, it does not explicitly support Canada. :( – Louis St-Amour Mar 04 '16 at 05:22
  • Also, https://github.com/sage has examples, look for repos starting with "sageone". – Louis St-Amour Mar 04 '16 at 05:23
  • 1
    Sage 50 Canadian edition appears to be easy enough to integrate with -- it uses a MySQL database, e.g. https://github.com/sinergi/sage50/blob/master/config/doctrine.php – Louis St-Amour Mar 04 '16 at 05:28
  • 1
    There is also complementary access to the Sage 50 SDKs for Canada and the US (aka Simply Accounting) - see link under Program Levels: http://www.sage.com/ca/partners/development-partners-erp-crm-hrms – Louis St-Amour Mar 04 '16 at 16:04
  • Actually the more I look into Sage's development resources the more confused I get. At this point it still appears product-specific. :) – Louis St-Amour Mar 04 '16 at 16:34
  • @LouisSt-Amour I had the same issue as well...Sageone seems to have well defined api's. Not even sure if and how we could use SData to connect to Sage 50 (which is an on-premise app). – user275157 Apr 21 '16 at 09:25
  • Sage One is a completely different product and Sage 50 is a different in different countries... Sage has bought a number of companies and kept them as separate products with separate SDKs/APIs to add to confusion! This question was about Sage 50 and talking about Sage One may confuse others. – Wil Aug 01 '18 at 21:42
21

Looking on the Sage UK site I found the following Developer SDK.

Upshot is that you need to use .Net if you want to use the SDK.

Problem is that the SDK is only available under the Developer programme which starts at £1500: Here's the brochure.

However the developer programme does give you free copies of the Sage software for development purposes, so I can see the benefits if your business is Sage integration.

Another option is an addon for Sage which is sold by Sage for £299

http://shop.sage.co.uk/pdf/connect_for_Sage_50.pdf

This gives an XML import/export facility, this may be enough for my purposes.

David Tuite
  • 22,258
  • 25
  • 106
  • 176
Paul
  • 2,543
  • 3
  • 26
  • 36
  • 5
    This isn't your only option now Sage have an open source web service built into all there products it's called [SData](http://sdata.sage.com/) (Sage Data Service). – user692942 Apr 25 '13 at 08:44
  • 2
    New program is: https://developers.sageone.com/ Examples at: https://github.com/sage – Louis St-Amour Mar 04 '16 at 05:24
2

I've done quite a bit with Sage Line 50 V9 (a couple of versions old, I know). Sage provide an ODBC driver which you can happily talk to with ADO & ADO.NET. The driver is however read-only which may or may not be an issue to you. There do seem to be some limitations with SQL queries though - in particular, double joins don't work (a JOIN b JOIN c) & need to be flattened-out. Also, the DISTINCT keyword doesn't seem to be recognised. Hope this of some use.

MikeJ-UK
  • 620
  • 3
  • 10
1

Going back a few years, but Sage also used to provide a read-write API (not ODBC based) for accessing the data in their products.

I'm not surprised that you need to join the developer program - Sage is a traditional closed source commercial application - it's unlikly to have open source options available for it.

Joining the dev program used to be free for Sage customers, which the people you are working for should be, surely...?

EDIT - yikes, not free any more

hawbsl
  • 15,313
  • 25
  • 73
  • 114
Matt
  • 1,370
  • 2
  • 16
  • 40
  • 1
    For Sage Payroll, although they prefer you to use ther SDK, they do allow read/write access through an ODBC driver. However, you still have yo be on the Developer Program to get the annually changing password. – J__ Sep 22 '09 at 13:01
  • That's a damn expensive password alright. – ScottMcGready Oct 07 '17 at 01:28