×

Load Data

Load data from the Topal Server
The Topal Financial Accounting System uses only one Database for all clients. Therefore, after a connection to the Topal Server with a valid userid and password has
been established, a client list must be retrieved in order to find all available clients in the database, or a known client can be set directly.
Define the chosen client as current client and set the associated fiscal year for that particular client. In most cases, the ID properties will
be used to identify instances of any entities.
 
There exist various entities to retrieve data from Topal Server. All of those entities work the same way.
A load method is a simple http GET Request. Find some examples below:
 
 
Example Code
 
 
 
Load clients
Example Code in this section
clients()

    
    class Load
    {
        public static List<Client> clients(Manager manager)
        {
            List clients = null;

            string request = "clients";
            var response = manager.httpClient.GetAsync(string.Format(request)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                clients = JsonConvert.DeserializeObject<List<Client>>(response.Content.ReadAsStringAsync().Result);
            }

            return clients;
        }
    }
    
  
Load Clients
    
class Load:
  
    @staticmethod
    def clients(manager):
        
        url = '{0}clients'.format(manager.baseURL())
        response = requests.get(url, headers = manager.headers())

        return response.json()

    
  
Load Clients
    
    UNDER CONSTRUCTION
    
  
JSON representation of a client
    
{
	"id": 1,
	"guid": "3d5d8cd8-0443-4678-bb47-2f425eac4ce1",
	"fiscalYearFID": 55,
	"currencyFID": 19,
	"name": "Mon_Bijou_AG_API",
	"code": "T3000",
	"person": "",
	"city": "Bern",
	"street": "",
	"remarks": "",
	"telephone": "000 111 22 33",
	"zip": "3000",
	"vatNumber": "CHE-111.222.333 MWST",
	"backupTS": "2018-06-22T15:55:43.37",
	"lastTimestamp": "2019-06-07T16:15:03.81",
	"isDiscountSwissRounded": false,
	"isKCSwissRounded": false,
	"isTemplate": false,
	"isVATSwissRounded": false,
	"vatAgreed": true,
	"vatPaymentBased": false,
	"vatRequired": true,
	"vatSimplefied": false,
	"isCurrent": true,
	"currencyCode": "CHF",
	"fiscalYears": [
		{
			"id": 1,
			"name": "2014",
			"dateFrom": "2014-01-01T00:00:00",
			"dateUntil": "2014-12-31T00:00:00",
			"docDateFrom": "2014-01-01T00:00:00",
			"docDateUntil": "2014-12-31T00:00:00",
			"closed": true
		},
		{
			"id": 2,
			"name": "2015",
			"dateFrom": "2015-01-01T00:00:00",
			"dateUntil": "2015-12-31T00:00:00",
			"docDateFrom": "2015-01-01T00:00:00",
			"docDateUntil": "2015-12-31T00:00:00",
			"closed": false
		},
		{
			"id": 3,
			"name": "2016",
			"dateFrom": "2016-01-01T00:00:00",
			"dateUntil": "2016-12-31T00:00:00",
			"docDateFrom": "2016-01-01T00:00:00",
			"docDateUntil": "2016-12-31T00:00:00",
			"closed": false
		},
		{
			"id": 4,
			"name": "2017",
			"dateFrom": "2017-01-01T00:00:00",
			"dateUntil": "2017-12-31T00:00:00",
			"docDateFrom": "2017-01-01T00:00:00",
			"docDateUntil": "2017-12-31T00:00:00",
			"closed": false
		},
		{
			"id": 5,
			"name": "2018",
			"dateFrom": "2018-01-01T00:00:00",
			"dateUntil": "2018-12-31T00:00:00",
			"docDateFrom": "2018-01-01T00:00:00",
			"docDateUntil": "2018-12-31T00:00:00",
			"closed": false
		},
		{
			"id": 55,
			"name": "2019",
			"dateFrom": "2019-01-01T00:00:00",
			"dateUntil": "2019-12-31T00:00:00",
			"docDateFrom": "2019-01-01T00:00:00",
			"docDateUntil": "2019-12-31T00:00:00",
			"closed": false
		}
	],
	"vatPeriods": [
		{
			"id": 1,
			"dateFrom": "2011-01-01T00:00:00"
		},
		{
			"id": 2,
			"dateFrom": "2017-10-01T00:00:00"
		},
		{
			"id": 3,
			"dateFrom": "2018-01-01T00:00:00"
		}
	]
}
    
  
 
Load accounts
Example Code in this section
accounts()
account_by_account_code()
account_id_by_account_code()
account_by_id()

    
    class Load
    {
        #region accounts

        public static List<Account> accounts(Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            var currentFiscalYear = manager.getCurrentFiscalYear();
            List accounts = null;

            string request = "clients/{0}/fiscalYears/{1}/accounts";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id, currentFiscalYear.id)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                accounts = JsonConvert.DeserializeObject<List<Account>>(response.Content.ReadAsStringAsync().Result);
            }

            return accounts;
        }

        public static Account account_by_account_code(string accountcode, Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            var currentFiscalYear = manager.getCurrentFiscalYear();
            int id = 0;
            List accounts = null;
            Account account = null;

            string request = "clients/{0}/fiscalYears/{1}/accounts";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id, currentFiscalYear.id)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                accounts = JsonConvert.DeserializeObject<List<Account>>(response.Content.ReadAsStringAsync().Result);
                foreach (Account acc in accounts)
                {

                    if (acc.code.Equals(accountcode))
                    {
                        id = acc.id;
                        break;
                    }
                }
            }

            request = "clients/{0}/fiscalYears/{1}/accounts/{2}";
            response = manager.httpClient.GetAsync(string.Format(request, currentClient.id, currentFiscalYear.id, id)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                account = JsonConvert.DeserializeObject<Account>(response.Content.ReadAsStringAsync().Result);
            }
            return account;
        }

        public static int account_id_by_account_code(string accountcode, Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            var currentFiscalYear = manager.getCurrentFiscalYear();
            int id = 0;
            List accounts = null;

            var response = manager.httpClient.GetAsync(string.Format("clients/{0}/fiscalYears/{1}/accounts", currentClient.id, currentFiscalYear.id)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                accounts = JsonConvert.DeserializeObject<List<Account>>(response.Content.ReadAsStringAsync().Result);

                foreach (Account account in accounts)
                {
                    if (account.code.Equals(accountcode))
                    {
                        id = account.id;
                    }
                }
            }

            return id;
        }

        public Account account_by_id(int id, Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            var currentFiscalYear = manager.getCurrentFiscalYear();
            Account account = null;

            string request = "clients/{0}/fiscalYears/{1}/accounts/{2}";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id, currentFiscalYear.id, id)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                account = JsonConvert.DeserializeObject<Account>(response.Content.ReadAsStringAsync().Result);
            }
            return account;
        }

        #endregion accounts
    }
    
  
Load Accounts
    
class Load:
  
    @staticmethod 
    def accounts(manager):
        
        _currentClient = manager.getCurrentClient()
        _currentFiscalyear = manager.getCurrentFiscalyear()
            
        url = '{0}clients/{1}/fiscalYears/{2}/accounts'.format(manager.baseURL(), _currentClient['guid'], _currentFiscalyear['id'])
        response = requests.get(url, headers = manager.headers())

        if response.status_code == 200:
            return response.json()
        else:
            return None

    
  
Load Accounts
    
    UNDER CONSTRUCTION
    
  
JSON representation of an account
    
{
	"id": 159,
	"accTypeFID": 4,
	"currencyFID": 19,
	"vatFID": 35,
	"costCenterFID": -1,
	"code": "6530",
	"name": "Buchführung extern",
	"isMoneyAcc": false,
	"isCcRequired": false,
	"noDirectPosting": false,
	"noAccDetails": false,
	"inclInValuation": true,
	"isInactiv": false,
	"balance": 0.0,
	"balanceFC": 0.0,
	"balanceCF": 0.0,
	"balanceCFFC": 0.0,
	"accountTypeName": "Cost",
	"creditAmount": 0.0,
	"creditPostingsCount": 0,
	"debitAmount": 0.0,
	"debitPostingsCount": 0,
	"startingBalance": 0.0,
	"startingBalanceFC": 0.0
}    
  
 
Load invoices
Example Code in this section
payables_invoices_open()

    
    class Load
    {
        public static List<Invoice> payables_invoices_open(Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            var currentFiscalYear = manager.getCurrentFiscalYear();
            List invoices = null;

            string request = "clients/{0}/fiscalYears/{1}/payables/invoices/open";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id, currentFiscalYear.id)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                invoices = JsonConvert.DeserializeObject<List<Invoice>>(response.Content.ReadAsStringAsync().Result);
            }
 
            return invoices;
        }
    }
    
  
Load Invoices
    
class Load:
  
    @staticmethod
    def payablesInvoices(manager):
        
        _currentClient = manager.getCurrentClient()
        _currentFiscalyear = manager.getCurrentFiscalyear()
        
        url = '{0}clients/{1}/fiscalYears/{2}/payables/Invoices'.format(manager.baseURL(), 
                                                                        _currentClient['id'], 
                                                                        _currentFiscalyear['id'])

        url = url + '?onlyOpen=true'                                                                
        response = requests.get(url, headers = manager.headers())

        if response.status_code == 200:
            return response.json()
        else:
            print(response.content())
            return None

    
  
Load Invoices
    
  UNDER CONSTRUCTION
    
  
JSON representation of an invoice
    
{
	"id": "32e93480-5575-40c4-8093-54110312c082",
	"authorizerFID": 21,
	"partyFID": 1,
	"payMethodFID": 373,
	"payTermFID": 9,
	"vatFID": -1,
	"personRoleFID": 2,
	"invoiceDate": "2019-06-12T00:00:00",
	"dueDate": "2019-07-12T00:00:00",
	"modifyDate": "2019-06-12T09:02:07.31",
	"invoiceNum": 1109,
	"reminderLevel": 0,
	"freeInvoiceNum": "RI_3810",
	"text": "Recivables Invoice",
	"PayslipCode": "",
	"totalAmount": 4000.0,
	"totalAmountFC": 4000.0,
	"exchangeRate": 1.0,
	"IsAuthorized": true,
	"noReminders": false,
	"Remarks": "",
	"partyNum": 1019,
	"partyName": "Bucherer AG",
	"partyShortName": "BucLuz",
	"payTermCode": "30T",
	"accountCode": "1100",
	"currencyCode": "CHF",
	"balance": 4000.0,
	"balanceFC": 4000.0,
	"barCode": "",
	"currentReminderLevel": 0,
	"hasDocument": 0,
	"currentReminderDate": "1753-01-01T00:00:00",
	"paymentPostings": [],
	"transaction": {
		"id": "32e93480-5575-40c4-8093-54110312c082",
		"fiscalYearFID": 55,
		"userFID": 21,
		"transactionTypeFID": 3,
		"docType": "",
		"docNum": 582,
		"docDate": "2019-06-12T00:00:00",
		"modifyDate": "2019-06-12T09:02:06.903",
		"isConfirmed": true,
		"numRangeFID": 265,
		"postings": [
			{
				"id": "a351a126-f6e9-45ba-b981-d85e003d54be",
				"transactionFID": "32e93480-5575-40c4-8093-54110312c082",
				"invoiceFID": "32e93480-5575-40c4-8093-54110312c082",
				"accountFID": 20,
				"contraAccountFID": 71,
				"vatFID": -1,
				"vatAccountFID": -1,
				"costCenterFID": -1,
				"postingTypeFID": 2,
				"amount": 4000.0,
				"fcAmount": 4000.0,
				"exchangeRate": 1.0,
				"vatAmount": 0.0,
				"vatFcAmount": 0.0,
				"vatPercent": 0.0,
				"vatQuote": 0.0,
				"text": "Recivables Invoice Posting #1",
				"freeCode": "Posting Free",
				"isDebit": true,
				"isInclusive": false,
				"isInvisible": false,
				"postingIndex": 1,
				"partyNum": 0,
				"freepartyNum": null,
				"partyName": null,
				"invoiceNum": 0,
				"freeInvoiceNum": null,
				"invoiceDate": "0001-01-01T00:00:00"
			},
			{
				"id": "a3c9ad2a-c7df-4a50-98b5-5edb7d375031",
				"transactionFID": "32e93480-5575-40c4-8093-54110312c082",
				"invoiceFID": "32e93480-5575-40c4-8093-54110312c082",
				"accountFID": 71,
				"contraAccountFID": 20,
				"vatFID": 9,
				"vatAccountFID": 51,
				"costCenterFID": -1,
				"postingTypeFID": 2,
				"amount": 3714.02,
				"fcAmount": 3714.02,
				"exchangeRate": 1.0,
				"vatAmount": 285.98,
				"vatFcAmount": 285.98,
				"vatPercent": 7.7,
				"vatQuote": 100.0,
				"text": "Recivables Invoice Posting #2 (VAT posting)",
				"freeCode": "",
				"isDebit": false,
				"isInclusive": true,
				"isInvisible": false,
				"postingIndex": 2,
				"partyNum": 0,
				"freepartyNum": null,
				"partyName": null,
				"invoiceNum": 0,
				"freeInvoiceNum": null,
				"invoiceDate": "0001-01-01T00:00:00"
			}
		]
	}
}
    
  
 
Load parties
Example Code in this section
parties()
party_by_number()
party_by_id()
party_by_name()

    
    class Load
    {
        #region party

        public static List<Party> parties(Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            List parties = null;

            string request = "clients/{0}/parties";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id)).Result;

            if (response.StatusCode == HttpStatusCode.OK) {
                parties = JsonConvert.DeserializeObject<List<Party>>(response.Content.ReadAsStringAsync().Result);
            }

            return parties;
        }

        public static Party party_by_number(int no, Manager manager)
        {
            var currentClient = manager.getCurrentClient();           
            Party party = null;

            //select parties
            string request = "clients/{0}/parties/bynumber/{1}";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id, no)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                party = JsonConvert.DeserializeObject<Party>(response.Content.ReadAsStringAsync().Result);
            }
                
            return party;
        }

        public static Party party_by_id(int no, Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            Party party = null;

            string request = "clients/{0}/parties/{1}";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id, no)).Result;

            if (response.StatusCode == HttpStatusCode.OK) {
                party = JsonConvert.DeserializeObject<Party>(response.Content.ReadAsStringAsync().Result);
            }
                
            return party;
        }

        public static Party party_by_name(string name, Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            Party party = null;
            List parties = null;

            string request = "clients/{0}/parties";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                parties = JsonConvert.DeserializeObject<List<Party>>(response.Content.ReadAsStringAsync().Result);

                foreach (Party _party in parties)
                {

                    if (_party.name.Equals(name))
                    {
                        party = _party;
                        break;
                    }
                }
            }

            return party;
        }

        #endregion party
    }
    
  
Load Parties
    
    #region party

    @staticmethod
    def parties(manager):
        """
        Method docstring
        """

        _currentclient = manager.getcurrentclient()

        url = '{0}clients/{1}/parties'.format(manager.base_url(), _currentclient['id'])
        response = requests.get(url, headers=manager.headers())

        if response.status_code == 200:
            return_value = response.json()
        else:
            return_value = None

        return return_value
    @staticmethod
    def party_by_id(manager, _id):
        """
        read a party object by it's id

        para:    manager - management object
                 id      - party id
        return:  party   - object

        """
        _currentclient = manager.getcurrentclient()

        url = '{0}clients/{1}/parties/{2}'.format(manager.base_url(), _currentclient['id'], _id)
        response = requests.get(url, headers=manager.headers())

        if response.status_code == 200:
            return_value = response.json()
        else:
            return_value = None

        return return_value

    @staticmethod
    def party_by_name(manager, name):
        """
        read a party by it's name

        para:    manager - management object
                 name    - party name
        return:  party   - object
        """

        _currentclient = manager.getcurrentclient()

        url = '{0}clients/{1}/parties'.format(manager.base_url(), _currentclient['id'])
        response = requests.get(url, headers=manager.headers())
        json_response = response.json()

        _idx = None

        # for i in enumerate(json_response, start = 0):
        for i in range(len(json_response)):

            if name == json_response[i]['name']:
                _idx = i
                break

        if response.status_code == 200:
            return_value = json_response[_idx]
        else:
            return_value = None

        return return_value
    #endregion party
        
    
  
Load Parties
    
      UNDER CONSTRUCTION
    
  
JSON representation of a party
    
{
	"id": 12,
	"countryFID": 110,
	"languageFID": 1,
	"shortName": "SwaBie",
	"name": "THE SWATCH GROUP SA",
	"line1": "",
	"line2": "",
	"city": "Biel/Bienne",
	"address1": "Faubourg du Lac 6",
	"address2": "",
	"addressBlock": "",
	"email": "",
	"remarks": "",
	"telefax": "",
	"telephone": "",
	"web": "",
	"isPrivate": false,
	"partyNum": 1030,
	"freePartyNum": "",
	"isHaveDebtor": false,
	"isHaveCreditor": true,
	"countryCode": "CH",
	"languageCode": "DE",
	"zip": "2502",
	"person": {
		"partyFID": 12,
		"personRoleFID": 1,
		"firstName": "",
		"middleName": "",
		"lastName": "",
		"email": "",
		"jobTitle": "",
		"mobile": "",
		"salutation": "",
		"telephone": "",
		"title": "",
		"titleSuffix": "",
		"isMale": false
	},
	"debtor": {
		"partyFID": 12,
		"accountFID": -1,
		"payMethodFID": -1,
		"payTermFID": -1,
		"freeCode": "",
		"isInactiv": false,
		"noReminders": false,
		"noRemindersFee": false,
		"creditLine": 0.0,
		"maxReminderLevel": 0,
		"person": {
			"partyFID": 12,
			"personRoleFID": -1,
			"firstName": "",
			"middleName": "",
			"lastName": "",
			"email": "",
			"jobTitle": "",
			"mobile": "",
			"salutation": "",
			"telephone": "",
			"title": "",
			"titleSuffix": "",
			"isMale": false
		},
		"payMethods": []
	},
	"creditor": {
		"partyFID": 12,
		"accountFID": 102,
		"payMethodFID": 13,
		"payTermFID": 9,
		"freeCode": "",
		"ourCustomerNum": "",
		"isInactiv": false,
		"creditLine": 0.0,
		"person": {
			"partyFID": 12,
			"personRoleFID": 3,
			"firstName": "",
			"middleName": "",
			"lastName": "",
			"email": "",
			"jobTitle": "",
			"mobile": "",
			"salutation": "",
			"telephone": "",
			"title": "",
			"titleSuffix": "",
			"isMale": false
		},
		"payMethods": [
			{
				"id": 13,
				"partyFID": 12,
				"accountFID": 46,
				"bankAccountFID": 1,
				"bankFID": -1,
				"payTypeFID": 1,
				"accountNum": "010465708",
				"name": "ESR-CHF",
				"payslipCode": "010465708200085",
				"personRoleFID": 3
			}
		]
	}
}
    
  
 
Load VAT
Example Code in this section
vat_by_vatcode()
vatPosting()

    
    class Load
    {
        public static VAT vat_by_vatcode(String vat_code, Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            var currentFiscalYear = manager.getCurrentFiscalYear();
            List vats = null;
            VAT vat = null;

            string request = "clients/{0}/fiscalYears/{1}/vats";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id, currentFiscalYear.id)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                vats = JsonConvert.DeserializeObject<List<VAT>>(response.Content.ReadAsStringAsync().Result);
                foreach (VAT _vat in vats)
                {

                    if (_vat.code.Equals(vat_code))
                    {
                        vat = _vat;
                        break;
                    }
                }
            }

            return vat;
        }

        public static Posting vatPosting(string vatcode, decimal grossAmount, decimal grossFcAmount, Boolean isInclusive, Manager manager) {
            var currentClient = manager.getCurrentClient();
            var currentFiscalYear = manager.getCurrentFiscalYear();

            VAT vat = Load.vatByVATCode(vatcode, manager);

            string param = "vatCode=" + vat.code + "&grossAmount=" + grossAmount + "&grossFcAmount=" + grossFcAmount + "&isInclusive=" + isInclusive;
            string request = string.Format("clients/{0}/fiscalYears/{1}/vatPosting", currentClient.id, currentFiscalYear.id);
            request = request + "?" + param;

            //calculate vat posting
            var vatPostingResponse = manager.httpClient.GetAsync(string.Format(request, currentClient.id, currentFiscalYear.id)).Result;
            var posting = JsonConvert.DeserializeObject<Posting>(vatPostingResponse.Content.ReadAsStringAsync().Result);

            return posting;
        }
    }
    
  
Load VAT
    
    UNDER CONSTRUCTION
        
    
  
Load VAT
    
      UNDER CONSTRUCTION
    
  
JSON representation of a vat
    
{
	"id": 11,
	"accountFID": 51,
	"code": "frei",
	"description": "Von der Steuer ausgenommene Umsätze",
	"isInclusive": true,
	"isInputTax": false,
	"quote": 100.0,
	"rate": 0.0
}
    
  
 
Load languages
Example Code in this section
languages()
language_by_code()

    
    class Load
    {
        public static List<Language> languages(Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            List languages = null;

            string request = "clients/{0}/languages";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                languages = JsonConvert.DeserializeObject<List<Language>>(response.Content.ReadAsStringAsync().Result);
            }

            return languages;
        }

        public static Language language_by_code(string code, Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            Language language = null;

            // load language by code
            string request = "clients/{0}/languages/bycode/{1}";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id, code)).Result;

            if (response.StatusCode == HttpStatusCode.OK) {
                language = JsonConvert.DeserializeObject<Language>(response.Content.ReadAsStringAsync().Result);
            }

            return language;
        }
    }
    
  
Load Language
    
    UNDER CONSTRUCTION
        
    
  
Load Language
    
      UNDER CONSTRUCTION
    
  
JSON representation of a language
    
{
	"id": 3,
	"code": "EN",
	"name": "English"
}
    
  
 
Load countries
Example Code in this section
countries()
country_by_code()

    
    class Load
    {
        public static List<Country> countries(Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            List countries = null;

            string request = "clients/{0}/countries";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                countries = JsonConvert.DeserializeObject<List<Country>>(response.Content.ReadAsStringAsync().Result);
            }

            return countries;
        }

        public static Country country_by_code(string code, Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            Country country = null;

            //load country by code 
            string request = "clients/{0}/countries/bycode/{1}";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id, code)).Result;
            if (response.StatusCode == HttpStatusCode.OK)
            {
                country = JsonConvert.DeserializeObject<Country>(response.Content.ReadAsStringAsync().Result);
            }

            return country;
        }
    }
    
  
Load Country
    
    UNDER CONSTRUCTION
        
    
  
Load Country
    
      UNDER CONSTRUCTION
    
  
JSON representation of a country
    
{
	"id": 110,
	"code": "CH",
	"name": "Schweiz"
}
    
  
 
Load payterm
Example Code in this section
payterms()
payterm_by_code()
External references to methods used in examples
#Code reference - Load.account_id_by_account_code
#Code reference - Load.bankaccount_by_name
#Code reference - Load.bank_by_name
    
    class Load
    {
        public static List<PayTerm> payterms(Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            var currentFiscalYear = manager.getCurrentFiscalYear();

            List<PayTerm> payterms = null;
            string request = "clients/{0}/payterms";

            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id)).Result;
            if (response.StatusCode == HttpStatusCode.OK)
            {
                payterms = JsonConvert.DeserializeObject<List<PayTerm>>(response.Content.ReadAsStringAsync().Result);
            }
            return payterms;
        }

        public static PayTerm payterm_by_code(string code, Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            var currentFiscalYear = manager.getCurrentFiscalYear();

            PayTerm payterm = null;
            string request = "clients/{0}/payterms/bycode/{1}";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id, code)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                payterm = JsonConvert.DeserializeObject<PayTerm>(response.Content.ReadAsStringAsync().Result);
            }
            return payterm;
        }
    }
    
  
Load pay_term
    
    UNDER CONSTRUCTION
        
    
  
Load pay_term
    
      UNDER CONSTRUCTION
    
  
JSON representation of a pay_term
    
{
	"id": 17,
	"code": "BAR",
	"description": "Barzahlung",
	"dueDays": 0,
	"details": [
		{
			"id": 18,
			"payTermFID": 17,
			"withinDays": 0,
			"discount": 0.0
		}
	]
}
    
  
 
Load bank account
Example Code in this section
bankaccounts()
bankaccount_by_name()
    
    class Load
    {
        #region bank accounts
        public static List<BankAccount> bankaccounts(Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            List bank_accounts = null;

            //select bankaccounts
            string request = "clients/{0}/bankaccounts";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                bank_accounts = JsonConvert.DeserializeObject<List<BankAccount>>(response.Content.ReadAsStringAsync().Result);
            }
            return bank_accounts;
        }

        public static BankAccount bankaccount_by_name(String name, Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            BankAccount bank_account = null;

            string request = "clients/{0}/bankaccounts/byname/{1}";
            var response = manager.httpClient.GetAsync(string.Format(request, currentClient.id, name)).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                bank_account = JsonConvert.DeserializeObject<BankAccount>(response.Content.ReadAsStringAsync().Result);
            }
            return bank_account;
        }
        #endregion bank accounts
    }
    
  
Load bankaccount
    
    UNDER CONSTRUCTION
        
    
  
Load bankaccount
    
      UNDER CONSTRUCTION
    
  
JSON representation of a bankaccount
    
{
	"id": 3,
	"name": "UBS Euro",
	"iban": "CH550023223257288560Q",
	"accountNum": "80-2-2",
	"creditLine": 0.0,
	"accountFID": 13,
	"bankFID": 1134,
	"bankAccountTypeFID": 1,
	"accountCode": "1023",
	"bankCode": "232",
	"currencyCode": "EUR"
}
    
  
 
Load defaults
Example Code in this section
defaults()

    
    class Load
    {
        #region defaults
        public static Defaults defaults(Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            var currentFiscalYear = manager.getCurrentFiscalYear();

            //select defaults
            var defaultsResponse = manager.httpClient.GetAsync(string.Format("clients/{0}/fiscalYears/{1}/defaults", currentClient.id, currentFiscalYear.id)).Result;
            var defaults = JsonConvert.DeserializeObject(defaultsResponse.Content.ReadAsStringAsync().Result);

            return defaults;
        }
        #endregion defaults
    }
    
  
Load defaults
    
    UNDER CONSTRUCTION
        
    
  
Load defaults
    
      UNDER CONSTRUCTION
    
  
JSON representation of defaults
    
{
	"id": 3,
	"name": "UBS Euro",
	"iban": "CH550023223257288560Q",
	"accountNum": "80-2-2",
	"creditLine": 0.0,
	"accountFID": 13,
	"bankFID": 1134,
	"bankAccountTypeFID": 1,
	"accountCode": "1023",
	"bankCode": "232",
	"currencyCode": "EUR"
}