Well it is another Asterisk server that has to handle the call so that means there are 4 legs to this single call vs the standard 2 legs that would be there. So there is that. There is also the issue that A2Billing died about 5 years ago. Which the changes introduced in Asterisk 12 with the CDR changes, PJSIP, etc. they just gave up and turned it over to the community. Since then the only changes/updates made to the project was updating PHP support last year which appear to have been made by you, so that supports my point more.
To recap the Asterisk based billing software hasn’t updated to match any of the changes in Asterisk since early 2015. The code still uses things like DeadAgi() which has been deprecated since Asterisk 12/13 and is pretty much eligible for removal from Asterisk in any new releases at this point. It supports only IAX and Chan_SIP both of which is community only support in Asterisk and well Chan_SIP is also marked now as deprecated and can be removed within the next 4 years.
So that would mean that there is no actual support for Asterisk 12, 13, 14, 15, 16 and 17 in the code of A2Billing. If it works, it works. If it doesn’t then it’s on you and the community to figure out why it’s not working and fix it.
I’m sure at some point people are going to realize that these old “go-to” third party projects that stopped making updates around Asterisk 12 (so in the last 5-6 years) are dead and while they still may work in current versions of Asterisk it means they aren’t up to date and lack knowledge of the new things added, changed or removed from Asterisk. They will continue to depend on things like DeadAGI, Macro(), Chan_SIP, etc that are no longer supported by Asterisk devs and are deprecated.
As of Asterisk 17 Chan_SIP is noload which means it requires you to tell Asterisk to use Chan_SIP when you compile it and configure it. That would mean if A2Billing worked in Asterisk 16 it won’t work in Asterisk 17 unless you enable Chan_SIP or modify the code of A2Billing to use PJSIP.
Now that being said, you are in a different position than most as you already updated the code to support PHP7 which means you have the knowledge and skillset to deal with the gaps in A2Billing but unless you or someone like you is going to overhaul the project and keep it updated, A2Billing is essentially dead in the water.