Ok, update_field() wasn’t working for me, even though I’m sure it was right. I am instead using $wpdb to update the field in the database, which is working. I’m not marking this as resolved as the issue with update_field() still remains. If anyone could shed any light on this please let me know.