How much customization does p21 support?

I was wondering to what extent prophet 21 allows for customization.

For example, on prelude, you are able to integrate third party applications, and change/manipulate almost all aspects of the software to meet the customers needs.

Is p21 setup for this functionality?

I know the API allows for some customization, but would someone be able to implement a third party application into it? For example, a third party payment platform…

The middleware has a folder under /accessories/EpfPlugins and has CardConnect, CyberSource, EpicorPaymentPlugin, and FreedomPay in it. Would someone be able to add another folder and put the .dll file in there, or would p21 not be able to recognize it?

Also, is there somewhere I would be able to get the signatures needed to create the .dll file?

I know this post has a lot of questions, so the answer might not be a quick and simple one, but I’ve tried going through the documentation and haven’t seen much of anything on it.

Any help or anything that could point me in the right direction would be greatly appreciated!
Thanks in advance!