Краткое резюме
Одно правило, два вспомогательных глагола: ser и estar берут короткое причастие (foi pago, está aceito); ter и haver — длинное (tinha pagado, havia aceitado).
Короткое — это неправильная форма, она ведёт себя как прилагательное и поэтому согласуется: as contas foram pagas (счета были оплачены).
Длинное стоит после ter / haver и не изменяется: tinha pagado никогда не станет tinha pagada.
Ваша интуиция работает: «счёт оплачен / счета оплачены» — та же краткая форма с согласованием.
Стоит выучить наизусть: pagar (pagado/pago), aceitar (aceitado/aceito), entregar (entregado/entregue), imprimir (imprimido/impresso), prender (prendido/preso), acender (acendido/aceso), eleger (elegido/eleito), suspender (suspendido/suspenso).
Четыре глагола сдались: ganhar, gastar, pagar и pegar сегодня берут короткую форму с любым вспомогательным — tinha ganho, tinha pago это нормальный бразильский.
Пара есть не у всех: trazer, chegar и empregar имеют только правильное причастие, с любым вспомогательным.
Morto взято взаймы: это короткое причастие глагола matar (убить), а morrer (умереть) одалживает его для ser/estar, оставляя себе morrido для ter.