Get going quickly using Sage Intacct Web Services with the Sage Intacct SDK for .NET. The SDK allows you to work with pre-built objects instead of directly with the underlying XML API.

The Sage Intacct SDK for .NET is actively being developed. This is a developer preview that should not be used in a production environment.

The Sage Intacct SDK for .NET is licensed under Apache v2.0. Please read and accept this before using the SDK.

System Requirements

Quick Install

Install the SDK using NuGet:

PM> Install-Package Intacct.SDK

You can also visit the NuGet package page.

Quick Example

using Intacct.Sdk;
using Intacct.Sdk.Xml;
using Intacct.Sdk.Functions.Common;
using System;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                SdkConfig config = new SdkConfig()
                {
                    SenderId = "senderid",
                    SenderPassword = "senderpassword",
                    CompanyId = "company",
                    UserId = "user",
                    UserPassword = "pass",
                };
                IntacctClient client = new IntacctClient(config);

                Console.WriteLine("Current Company ID: " + client.SessionCreds.CurrentCompanyId);
                Console.WriteLine("Current User ID: " + client.SessionCreds.CurrentUserId);

                Read read = new Read()
                {
                    ObjectName = "VENDOR",
                };
                Content content = new Content();
                content.Add(read);

                Task<SynchronousResponse> response = client.Execute(content);

                response.Wait();

                Console.WriteLine("Read function control ID: " + response.Result.Control.ControlId);

                Console.WriteLine("Number of vendor objects read: " + response.Result.Operation.Results[0].Count);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception caught: " + ex.Message);
            }

            Console.ReadLine();
        }
    }
}

Provide feedback