Модули opencart по умолчанию не используют свои таблицы. Минимум -по 3 файла на frontend и backend: языковой, представление, контроллер. По умолчанию "модули, которые поставляются вместе со сборкой" сохраняются в json прям в контроллере и и отправляются на полочку строчку системной таблицы. Стандартная валидация у стандартного модуля сделана там-же - в контроллере.
Использовать в модуле вы можете любые модели, и которые уже есть и написать свои.
Все зависит от того, какой сложности модуль вы хотите реализовать.
Блок новостей?
Это вы про модуль или компонент?
Компонент пишется аналогично, не для всех компонентов нужны свои таблицы и модели.
Вызываетя по ссылке: index.php?route="папка контроллера/название контоллера/экшен
По умолчанию вызывается экшен'- index
Opencart - очень простая cms/