# TransactionService
To use this service, you need to log in using the new Authenticate Service under the api.24sevenoffice.com domain.
This service is mainly used to retrieve a list of journal transactions by using the GetTransactions (opens new window) method. Please note that you need to set the end date time to 23:59:59:59 in order to include all transactions of the end date rather than setting the date time to 00:00:00.
TransactionService (opens new window)
TransactionService WSDL (opens new window)
# Guides
# Retrieve transactions
To retrieve transactions you will use the GetTransactions (opens new window) method.
The DateSearchParameters lets you choose if DateStart and DateEnd should use EntryDate or DateChangedUTC. EntryDate is the default value and returns all entries/transactions in the given date range, while DateChangedUTC gives you all transactions what have been updated. This means that you can search for all transactions that have been created or updated within a given date range.
The LinkId provides information on links between e.g. invoices, credit notes and payments. Please note that the LinkId is updated every time a new link is made between transactions. This means that you cannot rely on previously used LinkIds when searching for updates on invoice payments. (For example, an invoice is being linked with a part payment and gets LinkId 1. Another payment is made and all the linked transactions now have the LinkId 2).
This makes it easy to e.g. find new payments that are linked to a transactions within a given time frame by simply searching for any updated transactions and checking their LinkIds for payment details.
Example of a request:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetTransactions xmlns="http://24sevenoffice.com/webservices/economy/accounting/">
<searchParams>
<DateStart>2018-01-01</DateStart>
<DateEnd>2019-01-01</DateEnd>
</searchParams>
</GetTransactions>
</soap:Body>
</soap:Envelope>
# Checking if an invoice has been paid
This is a very typical action. Invoices have the SystemType InvoiceCustomer. A simple check is using the Open and LinkId properties on your invoice transaction:
Open | LinkId | Status |
---|---|---|
true | present | Invoice has been partially paid or credited |
true | not present | Invoice is not linked to payment or credit |
false | n/a | Invoice has been paid or credited |
You can use the ShowOpenEntries search parameter in combination with e.g. a date search, customer search or invoice search. If you wish to check for more details, you can perform a search with the LinkId to find payment or credit note transactions that are linked to your invoice. Here you can check the payment amounts and dates.
# Retrieve transaction types
To retrieve transaction types you need to use the GetTransactionTypes (opens new window) method. The transaction types returns an id that can be used in the GetTransactions (opens new window) method to find transactions of that type.
Example of a request:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetTransactionTypes xmlns="http://24sevenoffice.com/webservices/economy/accounting/" />
</soap:Body>
</soap:Envelope>
# Retrieve fiscal years
To retrieve fiscal years that are available use the GetFiscalYears (opens new window) method.
Returns a list of fiscal years and their boundaries. A fiscal year is starting at 'StartingDate' up to 'EndingDate', do not include the ending date (eg.: StartingDate >= [FiscalYear] < EndingDate).
Example of a request:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetFiscalYears xmlns="http://24sevenoffice.com/webservices/economy/accounting/" />
</soap:Body>
</soap:Envelope>
# Retrieve user defined dimensions
To retrieve all available user defined dimensions, you need to use the GetUserDefinedDimensions (opens new window) method.
Remember that only the user defined dimensions will be retrieved.
Example of a request:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetUserDefinedDimensions xmlns="http://24sevenoffice.com/webservices/economy/accounting/" />
</soap:Body>
</soap:Envelope>
# Retrieve values from a user defined dimension
The GetUserDefinedDimensionValues (opens new window) method retrieves the values of the different dimensions.
The retrieved list consists of dimensions. Please note that you will only retrieve the Name and Value of the dimension.
Example of a request:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetUserDefinedDimensionValues xmlns="http://24sevenoffice.com/webservices/economy/accounting/">
<DimensionType>100</DimensionType>
</GetUserDefinedDimensionValues>
</soap:Body>
</soap:Envelope>
# Using the GetAggregated method
The GetAggregated method returns aggregated data from the general ledger based on input parameters. The date range is from the specified start date until the end of that fiscal year. Dimensions are required, but account numbers are not. If you do not set the period type, balance and IB per period will not be returned. Incoming Balance is returned regardless of whether it has been specified in your request or not.
TIP
We recommend that the startDate parameter is set to the beginning of the fiscal year. In combination with setting periodType to Month you will get a good aggregated overview for you query selection. If startDate is set to a date in the current period (e.g. DateTime.Now) you will possibly get strange results, like only getting data from the first period of the fiscal year etc.
The GetAggregated response is cached for 60 minutes, so any aggregated data that has been requested within the last hour will receive a cached response.
# Methods
Method | Input type | Return type | Description |
---|---|---|---|
GetTransactionTypes (opens new window) | - | TransactionType[] | Returns a list of transaction types |
GetTransactions (opens new window) | TransactionSearchParameters | Transaction[] | Returns a list of transactions |
GetAggregated (opens new window) | DateTime, Dimension[], Int16[], PeriodType, Boolean | AggregatedData[] | Returns aggregated data based on input parameters. The date range is from the specified start date until the end of that fiscal year. If you do not set the period type, balance and IB per period will not be returned. |
GetFiscalYears (opens new window) | - | FiscalYear[] | Returns a list of fiscal years. Starting at StartingDate up to EndingDate, do not include the ending date (e.g.: StartingDate >= [FiscalYear] < EndingDate |
GetUserDefinedDimensions (opens new window) | - | Dimension[] | Returns an array of dimensions |
GetUserDefinedDimensionValues (opens new window) | DimensionType(Int) | Dimension[] | Returns an array of values of the specified dimension |