Custom Actions

This is experimental feature. I do not have complete understanding whether this is the correct way to approach the integration with 3rd-party services but it could be.

In the latest version (21.9.15), under Settings tab, there is new section called Custom Actions.

image

This allows to inject javascript code into various View screens. What could javascript do?

  • When invoice is issued, it could post the invoice data to tax authority
  • Figures from report transformations could be also electronically posted to tax authorities
  • It could pull banking data from external source and automatically create payment and receipt transactions. Some vendors call this bank feeds.
  • It could automatically pull and create exchange rates
  • It could send SMS message to recipient through some gateway

I’m sure there are a lot more use-cases.

Custom actions is a way how Manager could integrate with the outside world without hard-coding these integrations into the program and at the same time making these integrations work across all editions the same way.

When you create custom action, you define the name, placement and the script. For example, we can create custom action for sales invoices like this.

image

When viewing sales invoice, you will see button Do something in bottom-left corner

image

Clicking the button will trigger the script.

image

For security reasons, when on server/cloud edition, only administrators can define custom actions but any user with access to the screen can trigger them.

I do not expect individual businesses to be authoring custom actions. For example, country-specific integrations will be done once for everybody and part of Localizations.json project on GitHub.

This feature is not doing anything useful on its own. It’s just a building block to faciliate new features which cannot be hard-coded into the program for practical reasons.

8 Likes

I’m really excited about that.

Can’t wait to see some documentation.

Thanks Lubos.

I hope there is a section in the forum where users can share their integration use cases and how they did it. It will be helpful for many users with no coding experience.

I don know why this forum doesn’t allow sharing or asking for coding post especially when it is related to using Manager.

1 Like

Yep
For community code development, community coding discussions are essential.
Without it everyone will just keep their hard earned solutions to themselves.

The issue is not scaring of the non coding user base who just want to know how to use Manager is it is.

The solution imo is a sub forum, not prominent for non coding users.

1 Like

Thanks @Lubos, I would also recommend to make it optional through Customize, i.e. do not make it standard part of settings. This is a potential huge security risk as with all apps that allow injections of code.

Would this be why completion of the customer portal has been delayed? At the moment, client’s can’t really do anything on the portal such as download an invoice etc.

Oh by the way…I was also hoping Customer Portal would be more improved especially the way customers could use it

I was thinking about this. Stuff like Report Transformations and Custom Actions should be more tucked away. I consider it “internal plumbing” which I do not expect for end-users to use directly.

1 Like

Super excited about this feature!

Hi Lubos, great addition, I am looking forward to see it being implemented.

I would pursue Bank Feeds integration once this is considered a stable feature.

Please may I request that you consider an option to display the buttons not only on transactional view forms but also on menu forms, e.g. Bank and Cash Accounts. In the Bank Feeds scenario, it would not make sense to refresh banking transactions on a Payment or Receipt.

It may also be useful to have these action buttons centrally available, for example next to the History and Backup buttons.

This is great news!