i think we're talking at cross purposes here.
when [in the uk] 'they' [they = third party networks] say they want extension billing - someone says 'yes i can do that'. but what 'they' really want is a form of dialling from the system as opposed to information from the system.
eg, what they want is an extension to go off hook and dial 9 + telephone number. what they want the switch to actually dial out is xxxx [access code which tells the pstn provider to give the call to a prticular third party network] + yyyy[extension dn number ie 2066] + a pause + full telephone number of called party.
this means that the network will produce bills for the customer under extension headings or department headings if yyyy = dept group.
systems like the panasonc kxtd have this as a built in s/w option which you just switch on. as the option uses ars only it needs the 'insert dn' into dialling stream ability together with an 'insert pause' ability - both of which can't be done.
The other way this 'can be done' [ie can't] is where the option provides a cli individual to the extn which the network 'reads' to produce a bill for that particular extn. However, I have spoken with network engineers who say they can't process this information anyway. Even if they could, the extn CAN send its own cli but what about all the extns with no o/g cli [ddi] assigned? To incorporate them you would have to give them pretend DDIs to allow them to give out an individual cli. However, if you say had 100 ddi's on a switch but 300 extns you would give a block of 200 ddis which could actually exist in the real world. ergo if you had some info on a customer you could make calls at his expense etc etc. the list is endless why this method does not work.
ie this is all about how the network produces a bill, ideally, at the exchange for the customer.
the only way the network can acheive this is by paying for cdr capture at the site and download the info via dial up etc and apply calculus to the cdrs - unless i'm wrong - which i'm not - or am i