A data processing system for collecting billing data from distributed sources, comprises a plurality of remote customer service sites 1a - c, each remote site including a memory 3a for storing billing data associated with customer services provided thereby; a central batch processing center 13 for creating customer invoices from the billing data associated with all the sites; and a teleprocessing center 5 connected to each of the remote sites and the batch processing center by telecommunications links. The teleprocessing center comprises a computer 8 for polling each of the remote sites through a communications interface to retrieve selected billing data; a first memory 11 for storing for each remote site an index representing the most recent billing record retrieved from that site; and a second memory 10 for simultaneously storing the billing data retrieved from the plurality of remote sites. The computer 8 is programmed to retrieve periodically from the remote sites the most recent billing data as determined by the stored indices, update the stored indices to reflect the most recent retrieved data for each site, and make the data from the second memory 10 available on demand to the batch processing center 13 for processing into customer accounts. <IMAGE>