Is there a way to make a detailed customer statements using API?

Hello

I have a big problem. I previously convinced my company to use this software and the biggest letdown was that the (customer statements transactions) report didn’t show everything in detail, which they wanted. Then it was solved for me with a custom report after that I migrated all our the data to this software. then I found out that the report only works with base currency (where the customer’s currency is the base currency), and where there aren’t any Journal entries involved.

Our customers are very primitive and want literally each and every invoice details in the statement report.

What are my options? I really don’t want to use another software.

Now my question:
I’m a programmer, can the API help me? does the API allow me to get all the information needed to construct the (customer statements transactions) report?

Thank you for you time

1 Like

Hello bro.

I told you at that time that it would not show Journal entries etc.

Btw this shouldnt be an issue can you explain in detail?

Yeah I was hoping that I will rarely use journal entries, but turns out that It’s very common for our business.

If a user’s currency was a foreign one, then In the custom report it shows the value of the transactions in the base currency.

I’m interested in the API … I saw this comment What I suggest is to create transaction in Manager, then look how it was saved in API. I’m trying to figure out how to do that to see if it helps… I cant find any documentation for the API

Try this. then let me know if it worked

P.S Recently i asked the developer about this feature and if it is implemented then this kind of report will be very easy.

Yes there is no documentation for API yet and it is not fully developed yet.

@hunar1997 this is not something that needs to be solved using API.

There is already feature request for this in ideas

2 Likes

New API does have documentation at https://manager.readme.io with full reference at https://manager.readme.io/reference

Thank you :slight_smile: that kind of solves the foreign currency but i actually need (TransactionAmountMultipliedByNegativeOne) and (TransactionAmountMultipliedByNegativeOne) which doesn’t exist

Thanks, I saw that page before but yesterday I search aloot in google but couldn’t find it.

but my question is, it is possible right? all the data needed to create the report can be obtained through the API?

No one can answer that. Just try.

Why not use Advance Queries. Go to Summary tab and at the bottom right click “Transactions” then create an advance query


And use this method until a proper solution is implemented.
But on customer statement only Sales invoices and credit notes are not shown on line level. Other than that it shows every transaction line. So why not just give them transaction detailed report along with regular statement. If they want to see details of an invoice they can look at the detail report.

1 Like

I didn’t know the Summary tab had Advanced Queries :slight_smile: that is useful … but I’m currently experimenting with the API and it looks very promising… but it’s quite slow … takes afew seconds per request, not sure why.

1 Like

This is too open a statement for anyone to comment but just sympathise. It is for you to figure out why you experience slowness. It depends on lots of factors and mostly related to your hardware and operating system, available bandwidth (& internet speed), how you retrieve the records, etc. We do not experience slowness with both API and API2 but decided to stop using them because of security risks (mainly API because API2 already uses tokens and not login) as posted elsewhere.

Except when we will be forced like quite a number of countries now do to use an e-invoicing system then we will use API2 to figure it out or change away from Manager when not feasible because there maybe better local solutions. As we operate in multiple countries we would be reluctant to change but complying with authorities is paramount given the types of investments and loans most of the youth businesses get. Financial discipline and auditable records are essential in our circumstances.

How to get the contents of a journal entry using the API? “api2/journal-entries” this gives me the key… And I can see the content in “api2/transactions?term=Journal%20Entry” but that doens’t contain anything that refers to which journal entry it’s coming from

In case my comment was confusing.
when I GET journal entries, I get (key, debit, credit) and some other stuff.
when i GET transactions, i get (date, transaction=Journal Entry, reference=null, account, debit, credit).

But using those information I cant relate them to each other. If the transaction’s reference was the journal’s key then everything would be good

@hunar1997 rather than talking about API endpoints, what specific screen in Manager you would like to access programatically. Is it the screen when you click on “View” button within “Journal Entries” screen?

That would be useful, can you show me some code to do that?
Ideally I want to do the equivalent of (click customers, search and find customer, click the money, loop though and click “view” on all of them)

I’m currently doing things like this in python (I’m showing it here because I think you guys aren’t doing it this way and hopefully redirect me to some code)

response = requests.get(f"http://localhost:55667/api2/sales-invoice-lines?term={name}", headers=headers)
r=response.json()
for l in r['salesInvoiceLines']:
    print( l['item'],l['qty'],l['amount']['value'],l['amount']['currency'] )

I did this for receipts too, but I also want journal entries to get all the data i need for constructing the report.

Can you add the affected account/customer/etc… of a journal entry to the result of api2 call? that would solve my problem
currently when showing a journal entry All you get is this

    {
      "key": "47822a16-7ccb-42d7-a1f4-f29636d1b6bc",
      "image": null,
      "attachment": "False",
      "edit": null,
      "view": null,
      "date": "2024-06-01",
      "narration": "the narration/comment",
      "debit": {
        "value": 10000,
        "currency": "USD"
      },
      "credit": {
        "value": 10000,
        "currency": "USD"
      },
      "status": "Balanced"
    },

in the “debit” and “credit” sections I want “accounts” because currently there is no way to know what was debited and credited.

while in API (not api2) it does show the account

{
  "Date": "2024-06-01",
  "Currency": "cdfa971e-230d-4bf6-b803-45de847f4ba9",
  "ExchangeRate": 1450,
  "Narration": "The narration",
  "Lines": [
    {
      "Account": "d1489e95-bb28-4f5d-b42e-67d3291b3893",
      "AccountsReceivableCustomer": "82bc314f-4cb1-46f1-890c-8a4248905715",
      "AccountsReceivableSalesInvoice": "d0a60062-128f-41f0-86d5-455edbb143cb",
      "CustomFields2": {},
      "Credit": 10000
    },
    {
      "Account": "dac7ba37-0ccd-45e5-906e-548e6c50df37",
      "AccountsPayableSupplier": "c9ba74ab-2d2b-4752-a411-1d42490b0025",
      "CustomFields2": {},
      "Debit": 10000
    }
  ],
  "CustomFields2": {}
}

For Api2, Get Key from /journal-entries path.
Then Get the complete transaction Json via /journal-entry-form/{key} path.

1 Like