Inofficial .NET API client for CashCtrl.
Note: Calls in current version are not async since the library was created for use in a non-async scenario. However, adding async method signatures analoguous to the sync methods is just routine work, there is nothing preventing that.
.NET Client for the CashCtrl REST API:
- Entities implemented as .NET objects
- Supports most of the API calls
- Supports multilanguage strings
- Entities can be assigned to ID properties
var invoices = cashctrl.OrderList(new () {
CategoryId = invoiceCategory,
Type = OrderType.Sales,
FiscalPeriodId = fiscalPeriod,
["associateId"] = customer,
["date"] = date.ToCashCtrlString(true)
});
// read existing journal entry (ID known, e.g. > 0) oder create a new one (ID unknown)
var journal = journalId > 0
? cashctrl.JournalRead(journalId)
: new Journal { // Prepare new journal entry
CreditId = accounts[2850],
DebitId = accounts[6200]
};
// Set properties
journal.DateAdded = date;
journal.Title = $"Private car {kilometer} km";
journal.Amount = kilometer * priceCarPerKm;
// Generic helper for entity upsert
journalId = cashctrl.UpdateOrCreate(journal, CashCtrlClientExtensions.JournalUpdate, CashCtrlClientExtensions.JournalCreate);
https://github.com/avonwyss/bsn.CashCtrl
- MIT license
- Copyright 2022 © Arsène von Wyss.