Из этих трех таблиц, собирается одна, ... и вручную проставляются фактические даты и тип счета.
Не мешайте динамичские и статичные данные,
это плохая практика.
Или сделайте ID для каждой строки, отдельную таблицу сопоставлений ID и новых данных, и сборку всего в кучу в третьей таблице. Но это - не решение проблемы, а разбиение больших граблей на несколько мелких. Лучше изначально сделать всё по-другому, чтобы не быть китайским коммунистом, который содаёт себе проблем, а потом их героически решает.
Если собираете что-то ежедневно с нескольких пользователей - сделайте форму.
Если с нескольких таблиц (условно, по 100 строк в день), то делайте ID для каждой строки, хотя это не решение, как я писал выше