Sage Accounting

Sage Accounting is a cloud-based accounting solution designed for small and medium-sized businesses. It offers features such as invoicing, expense tracking, cash flow management, and financial reporting.

Data integration: Skyvia supports importing data to and from Sage Accounting, exporting Sage Accounting data to CSV files, replicating Sage Accounting data to relational databases, and synchronizing Sage Accounting data with other cloud apps and relational databases.

Backup: Skyvia Backup does not support Sage Accounting.

Query: Skyvia Query supports Sage Accounting.

Establishing Connection

To create a connection to Sage Accounting, sign in with your Sage Accounting credentials.

Creating Connection

To connect to Sage Accounting, perform the following steps:

Sage Accounting connections

  1. Click Sign In with Sage Accounting in the Connection Editor.
  2. Enter your Sage Accounting credentials and click Log In.

    Sage Accounting credentials

Connector Specifics

Object Peculiarities

Attachments

The Attachments object contains a binary field named File. If an SQL query includes this binary field, Skyvia will make an extra API request to retrieve the binary contents for each record, which may slow down the data retrieval process.

Restrictions by Regions

Certain objects are region-specific and are accessible only in the following countries:

  • Spain: PurchaseCorrectiveInvoices, SalesCorrectiveInvoices, CorrectiveReasonCodes

  • France: JournalCodes, BusinessActivityTypes, LegalFormTypes

  • Germany: TaxOffices

Nested Objects

The connector includes objects with fields that store complex, structured data in JSON format. The Nested Objects mapping feature allows you to insert or update these nested values when configuring import.

To replicate nested data into separate tables with the new replication runtime, select the Separate Tables option for Unwind Nested Objects.

The table below lists objects with specific fields designed to store complex data structures:

Object Field Nested Object
AllocatedArtefactType ArtefactLinks LinkType
AllocatedPaymentArtefactType ArtefactLinks LinkType
AnalysisTypes ActiveAreas ValueType
  AnalysisTypeLevel AnalysisTypeLevelType
  AnalysisTypeCategories AnalysisTypeCategoryType
ComponentTaxRateType Percentages TaxRatePercentageType
ContactAllocations AllocatedArtefacts AllocatedArtefactType
  Links LinkType
ContactOpeningBalances TaxBreakdown TaxBreakdownType
  BaseCurrencyTaxBreakdown TaxBreakdownType
ContactPayments AllocatedArtefacts AllocatedPaymentArtefactType
  Links LinkType
ContactPersons ContactPersonTypes ContactPersonTypeType
Contacts ContactTypes BaseType
  MainContactPersonContactPersonTypes ContactPersonTypeType
  Links LinkType
JournalLineType AnalysisTypeCategories AnalysisTypeLineItemType
Journals JournalLines JournalLineType
LedgerAccounts VisibleScopes ValueType
OpeningBalanceJournals JournalLines BaseJournalLineType
OtherPaymentLineItemType AnalysisTypeCategories AnalysisTypeLineItemType
  TaxBreakdown TaxBreakdownType
OtherPayments PaymentLines OtherPaymentLineItemType
PaymentAllocationType Links LinkType
  ArtefactLinks LinkType
Products SalesPrices SalesPriceType
PurchaseCorrectiveInvoiceType Links LinkType
  InvoiceLines PurchaseInvoiceLineItemType
  TaxAnalysis ArtefactTaxAnalysisType
  PaymentsAllocations PaymentAllocationType
  OriginalInvoiceLinks LinkType
PurchaseCreditNoteLineItemType AnalysisTypeCategories AnalysisTypeLineItemType
  TaxBreakdown TaxBreakdownType
  BaseCurrencyTaxBreakdown TaxBreakdownType
PurchaseInvoiceLineItemType AnalysisTypeCategories AnalysisTypeLineItemType
  TaxBreakdown TaxBreakdownType
  BaseCurrencyTaxBreakdown TaxBreakdownType
PurchaseCreditNotes CreditNoteLines PurchaseCreditNoteLineItemType
  TaxAnalysis ArtefactTaxAnalysisType
  Links LinkType
  PaymentsAllocations PaymentAllocationType
PurchaseInvoices InvoiceLines PurchaseInvoiceLineItemType
  TaxAnalysis ArtefactTaxAnalysisType
  Links LinkType
  PaymentsAllocations PaymentAllocationType
  Corrections PurchaseCorrectiveInvoiceType
PurchaseQuickEntries AnalysisTypeCategories AnalysisTypeLineItemType
  TaxBreakdown TaxBreakdownType
  BaseCurrencyTaxBreakdown TaxBreakdownType
  PaymentsAllocations PaymentAllocationType
PurchasesTaxDeterminations Percentages TaxRatePercentageType
  ComponentTaxRates ComponentTaxRateType
SalesCorrectiveInvoiceType Links LinkType
  ShippingTaxBreakdown TaxBreakdownType
  BaseCurrencyShippingTaxBreakdown TaxBreakdownType
  InvoiceLines SalesInvoiceLineItemType
  TaxAnalysis ArtefactTaxAnalysisType
  PaymentsAllocations PaymentAllocationType
  OriginalInvoiceLinks LinkType
SalesCreditNoteLineItemType AnalysisTypeCategories AnalysisTypeLineItemType
  TaxBreakdown TaxBreakdownType
  BaseCurrencyTaxBreakdown TaxBreakdownType
SalesCreditNotes CreditNoteLines SalesCreditNoteLineItemType
  TaxAnalysis ArtefactTaxAnalysisType
  Links LinkType
  ShippingTaxBreakdown TaxBreakdownType
  BaseCurrencyShippingTaxBreakdown TaxBreakdownType
  PaymentsAllocations PaymentAllocationType
SalesEstimates EstimateLines SalesQuoteLineItemType
  TaxAnalysis ArtefactTaxAnalysisType
  InvoiceLinks LinkType
  Links LinkType
  ShippingTaxBreakdown TaxBreakdownType
  BaseCurrencyShippingTaxBreakdown TaxBreakdownType
  ProfitAnalysisLineBreakdown ProfitBreakdownType
  BaseCurrencyShippingTaxBreakdown TaxBreakdownType
  ProfitAnalysisLineBreakdown ProfitBreakdownType
SalesInvoiceLineItemType AnalysisTypeCategories AnalysisTypeLineItemType
  TaxBreakdown TaxBreakdownType
  BaseCurrencyTaxBreakdown TaxBreakdownType
SalesInvoices InvoiceLines SalesInvoiceLineItemType
  TaxAnalysis ArtefactTaxAnalysisType
  RecurringInvoiceLinks LinkType
  OriginalQuoteEstimateLinks LinkType
  Links LinkType
  ShippingTaxBreakdown TaxBreakdownType
  BaseCurrencyShippingTaxBreakdown TaxBreakdownType
  PaymentsAllocations PaymentAllocationType
  Corrections SalesCorrectiveInvoiceType
SalesQuickEntries AnalysisTypeCategories AnalysisTypeLineItemType
  TaxBreakdown TaxBreakdownType
  BaseCurrencyTaxBreakdown TaxBreakdownType
  PaymentsAllocations PaymentAllocationType
SalesQuoteLineItemType AnalysisTypeCategories AnalysisTypeLineItemType
  TaxBreakdown TaxBreakdownType
  BaseCurrencyTaxBreakdown TaxBreakdownType
SalesQuotes QuoteLines SalesQuoteLineItemType
  TaxAnalysis ArtefactTaxAnalysisType
  InvoiceLinks LinkType
  Links LinkType
  ShippingTaxBreakdown TaxBreakdownType
  BaseCurrencyShippingTaxBreakdown TaxBreakdownType
  ProfitAnalysisLineBreakdown ProfitBreakdownType
SalesTaxDeterminations Percentages TaxRatePercentageType
  ComponentTaxRates ComponentTaxRateType
Services SalesRates RateType
StockItems SalesPrices SalesPriceType
StockMovements Links LinkType
TaxRates Percentages TaxRatePercentageType
  ComponentTaxRates ComponentTaxRateType
TaxTypes AddressRegions BaseType
  TaxRates BaseType
Transactions OriginLinks LinkType
UnallocatedArtefacts Links LinkType

Incremental Replication and Synchronization

Skyvia supports Replication with Incremental Updates only for objects that include either an UpdatedAt or CreatedAt field.

The supported objects include: Addresses, AnalysisTypeCategories, AnalysisTypes, Attachments, BankAccounts, BankDeposits, BankOpeningBalances, BankReconciliations, BankTransfers, BusinessExchangeRates, CoaAccounts, CoaTemplates, ContactAllocations, ContactOpeningBalances, ContactPayments, ContactPersons, Contacts, ExchangeRates, Journals, LedgerAccountOpeningBalances, LedgerAccounts, LedgerEntries, LiveExchangeRates, OpeningBalanceJournals, OtherPayments, Products, ProductSalesPriceTypes, PurchaseCreditNotes, PurchaseInvoices, PurchaseQuickEntries, SalesCreditNotes, SalesEstimates, SalesInvoices, SalesQuickEntries, SalesQuotes, ServiceRateTypes, Services, StockItems, StockMovements, TaxProfiles, TaxRates, Transactions.

Synchronization is typically available for objects that allow Incremental Updates as well as INSERT and UPDATE operations.

Filtering Specifics

The Sage Accounting API supports the following native filters:

Object Fields and Operators
Addresses Id (=), BankAccountId (=), ContactId (=), UpdatedAt (>=, >)
Attachments Id (=), AttachmentContextTypeId (=), AttachmentContextId (=), UpdatedAt (>=, >)
BankDeposits Id (=), Date (=, <=, <, >=, >) UpdatedAt (>=, >)
BankOpeningBalances Id (=), BankAccountId (=) UpdatedAt (>=, >)
BankReconciliations Id (=), BankAccountId (=) UpdatedAt (>=, >)
BankTransfers Id (=), Date (=, <=, <, >=, >) UpdatedAt (>=, >)
BusinessExchangeRates CurrencyId (=)
ContactAllocations Id (=), TransactionTypeId (=), UpdatedAt (>=, >)
ContactOpeningBalances Id, (=), ContactId (=), UpdatedAt (>=, >)
ContactPayments Id (=), Date (=, <=, <, >=, >), TransactionTypeId (=), ContactId (=), BankAccountId (=), UpdatedAt (>=, >)
ContactPersons Id (=), AddressId (=), UpdatedAt (>=, >)
Contacts Id (=), Email (=), UpdatedAt (>=, >)
ExchangeRates CurrencyId (=)
HostedArtefactPaymentSettings Id (=), ObjectGuid (=)
LedgerAccounts Id (=), LedgerAccountTypeId (=), UpdatedAt (>=, >)
LedgerEntries Id (=), Date (=, <=, <, >=, >), LedgerAccountId (=), TransactionId (=), UpdatedAt (>=, >)
LiveExchangeRates CurrencyId (=)
OtherPayments Id (=), Date (=, <=, <, >=, >), TransactionTypeId (=), ContactId (=), BankAccountId (=), UpdatedAt (>=, >)
Products Id (=), Active (=), UpdatedAt (>=, >)
ProductSalesPriceTypes Id (=), Active (=)
SalesCreditNotes Id (=), Date (=, <=, <, >=, >), ContactId (=), StatusId (=), UpdatedAt (>=, >), DeletedAt (>, >=)
SalesInvoices Id (=), Date (=, <=, <, >=, >), ContactId (=), StatusId (=), UpdatedAt (>=, >), DeletedAt (>, >=)
ServiceRateTypes Id (=), Active (=), UpdatedAt (>=, >)
Services Id (=), Active (=), UpdatedAt (>=, >)
StockItems Id (=), Active (=), UpdatedAt (>=, >)
StockMovements Id (=), Date (=, <=, <, >=, >), StockItemId (=)
Transactions Id (=), Date (=, <=, <, >=, >), TransactionTypeId (=), UpdatedAt (>=, >)
AddressRegions, AddressTypes, ArtefactStatuses, AttachmentContextTypes, BankAccountTypes, BusinessTypes, CatalogItemTypes, CoaTemplates, ContactPersonTypes, ContactTypes, Countries, CountriesOfRegistration, CountryGroups, Currencies, EuGoodsServicesTypes, EuSalesDescriptions, JournalCodeTypes, LedgerAccountClassifications, LedgerAccountTypes, MigrationTaxReturns, OpeningBalanceJournals, PaymentMethods, QuickEntryTypes, TaxReturnFrequencies, TaxSchemes, TaxTypes, TransactionTypes, UnallocatedArtefacts Id (=)
AnalysisTypeCategories, AnalysisType, BankAccounts, CoaAccounts, Journals, LedgerAccountOpeningBalances, TaxProfiles, TaxRates Id (=), UpdatedAt (>=, >)
PurchaseCreditNotes, PurchaseQuickEntries, SalesEstimates, SalesQuickEntrie, SalesQuotes Id (=), Date (=, <=, <, >=, >), ContactId (=), StatusId (=), UpdatedAt (>=, >)

DML Operations

Operation Object
INSERT, UPDATE, DELETE Addresses, AnalysisTypeCategories, Attachments, BankAccounts, BankOpeningBalances, BankTransfers, BusinessExchangeRates, ContactAllocations, ContactOpeningBalances, ContactPayments, ContactPersons, Contacts, LedgerAccountOpeningBalances, OtherPayments, Products, ProductSalesPriceTypes, PurchaseCreditNotes, PurchaseInvoices, PurchaseQuickEntries, SalesEstimates, SalesQuickEntries, SalesQuotes, ServiceRateTypes, Services, StockItems, StockMovements, TaxRates
INSERT, DELETE BankDeposits, HostedArtefactPaymentSettings, Journals, OpeningBalanceJournals
INSERT, UPDATE BankReconciliations, LedgerAccounts, SalesCreditNotes, SalesInvoices
UPDATE AnalysisTypes, TaxProfiles
INSERT MigrationTaxReturns

The Returning feature in INSERT and UPDATE operations is supported for all tables, including cases where Bulk Update is used.

Stored Procedures

Skyvia represents part of the supported Sage Accounting features as stored procedures. For example, you can call a stored procedure by specifying it as the command text in the ExecuteCommand action of a Target component in a Data Flow or in a Query.

VoidSalesInvoice

To nullify or cancel an existing sales invoice within the Sage Accounting system, run the command:

call VoidSalesInvoice('dd55314c-e3ba-453e-907b-947d0ec6f37a', 'some void reason')

Accepted parameters:

PARAMETER NAME DESCRIPTION
ID ID of the SalesInvoice object. Required parameter
Void reason Required if the status is not DRAFT

If an object with the specified ID doesn’t exist, the procedure returns an error.

VoidSalesCreditNote

To nullify or cancel an existing sales credit note within the Sage Accounting system, run the command:

call VoidSalesCreditNote('dd55314c-e3ba-453e-907b-947d0ec6f37a', 'some void reason')

Accepted parameters:

PARAMETER NAME DESCRIPTION
ID ID of the SalesCreditNote object. Required parameter
Void reason Required if the status is not DRAFT

If an object with the specified ID doesn’t exist, the procedure returns an error.

ReleaseSalesInvoice

The procedure is used to finalize or post a sales invoice that has been created but is currently in a draft or unposted state. Executing this procedure moves the invoice from draft status to an active state, updating the accounting records to reflect the transaction.

To call the procedure, run the command:

call ReleaseSalesInvoice('dd55314c-e3ba-453e-907b-947d0ec6f37a')

The procedure requires the ID of the SalesInvoice object as a parameter. If an object with the specified ID doesn’t exist, the procedure returns an error.

ReleaseSalesCreditNote

The procedure is used to finalize or post a sales credit note that is currently in a draft or unposted state. Executing this procedure transitions the credit note to an active status, updating the accounting records to reflect the credit transaction.

To call the procedure, run the command:

call ReleaseSalesCreditNote('dd55314c-e3ba-453e-907b-947d0ec6f37a')

The procedure requires the ID of the SalesCreditNote object as a parameter. If an object with the specified ID doesn’t exist, the procedure returns an error.

ReleasePurchaseInvoice

The procedure is used to finalize or post a purchase invoice that is currently in a draft or unposted state. Executing this procedure transitions the purchase invoice to an active status, updating the accounting records to reflect the liability.

To call the procedure, run the command:

call ReleasePurchaseInvoice('dd55314c-e3ba-453e-907b-947d0ec6f37a')

The procedure requires the ID of the PurchaseInvoice object as a parameter. If an object with the specified ID doesn’t exist, the procedure returns an error.

ReleasePurchaseCreditNote

The procedure is used to finalize or post a purchase credit note that is currently in a draft or unposted state. Executing this procedure transitions the purchase credit note to an active status, updating the accounting records to reflect the reduction in liability to a supplier.

To call the procedure, run the command:

call ReleasePurchaseCreditNote('dd55314c-e3ba-453e-907b-947d0ec6f37a')

The procedure requires the ID of the PurchaseCreditNote object as a parameter. If an object with the specified ID doesn’t exist, the procedure returns an error.

Supported Actions

Skyvia supports all the common actions for Sage Accounting.