PSC Register - can a record disappear?

Is the PSC Register available at Companies House “append/edit-only” in the sense that only new records can be added or existing records updated? Or is it possible that in some situations, existing records can be completely removed from the data file?

This is a complete dump every day at approximately 06:00hrs.
There is no concept of adding/appending/editing, it is just a complete dump.
This is a temporary solution until the Streaming API provides this information.

Thanks for the response Mark. I have probably expressed my question poorly. Let me show an example:

Let’s say that today, there are two PSCs in the underlying database (where the dump comes from):

company 12345678, Person A, notified_on 2015-01-01
company 12345678, Person B, notified_on 2016-01-01

In case the Person B will stop being a PSC for the company, I expect that the data will look like this:

company 12345678, Person A, notified_on 2015-01-01
company 12345678, Person B, notified_on 2016-01-01, ceased_on 2017-02-01

I.e. the record will be changed in the database to reflect that they are no longer a PSC for the company.

My question is: Are there any events when the whole record will be removed from the underlying database and will be no longer present at all in the dump?

The dump would look like this (no row for Person B at all):

company 12345678, Person A, notified_on 2015-01-01

The reason why I’m asking is that during processing, I currently build the PSC set for all companies to be able to mark records which disappear as invalid. However, this is quite memory-intensive. I could change the processing to simply process the records one by one but in this case, I wouldn’t be able to detect removed entries without additional processing.

Hi @MArkWilliams,

Could you please take a look at my explanation and try to share your knowledge of the data and processes in the PSC register to answer my question about possibilities of a record being removed from the register?

Thank you

I do not know the answer to this, so I will see if I can find someone who does and get back to you.

Thank you @MArkWilliams, this information is very important to be able to determine if the dumps can be processed sequentially, or if I need to group the PSCs by company first to detect records which would be removed (if this scenario is possible).

Right, it is as you already stated, the entry will not be deleted.
If a person is no longer a PSC, the entry will have a ceased on entry.
The only way a whole record can be removed is if it has been DELETED from the record as a correction for an entry that should NEVER have been created. This can happen due to court orders to remove data, customer complaints or police investigations.
Hope this helps
MArk

Thanks again, this information is very helpful for processing the data.

Hi @MArkWilliams and Companies House.
On the subject of whole record deletion, is there any way a post-mortem could be left in lieu of a full record? This would be so that we can differentiate between a voluntary deletion (for the reasons you mentioned previously, error, court/police order, complaint) and an involuntary one?

In fact, it would be of value to us to differentiate an error correction (internal trigger) from a customer request or a law enforcement request (external trigger), as the external trigger is extremely valuable in terms of relationship transparency (we could display 'linked to ‘unknown entry due to customer deletion request’ for example).

Sorry for the late reply.
No this is not possible.
This current product is simply a dump/snapshot of the current register.
There will be a streaming API in the near future which will allow the sort of functionality that you described.

Hi Mark! The CVR in Denmark recently faced legal challenge on the publication of beneficial ownership information about local church councils and was forced to remove the data from the register. Is Companies House prepared for such eventualities, or put in place a process to warn or flag large record deletions to API users? Failing to do so means information you (wrongly) published will continue to be accessible to a large audience through consumers of the API/Data snapshots, who will remain unaware of changes.

I would be keen to hear from either consumers of the PSC bulk downloads or even of the API whether they are DIFF-ing everything to try and work out what was deleted. This is costly is not justified, as legitimate removals would happen all the time (based on age of the record for example and archiving rules).