Не скажу про вендинговые, но банковские терминалы и терминалы по продаже билетов, с которыми я был знаком были написаны на C#. Во-первых, это связано с тем ,что все они работали на системе Windows. Во-вторых, с тем что привлекательный графический интерфейс создан при помощи WPF (Windows Presentation Foundation). Возможно, если "железо" позволяет, использовать UWP. Эти фреймворки дают вам возможность создать богатый UI (интерфейс пользователя).
Проблема Python в том, что приходится использовать сторонние кроссплатформенные графические библиотеки. Результат на экране может показаться большинству пользователей непривычным. Смортите какие виджеты вам может предоставить та или иная библиотека (PyQt, PyGTK, PyGObject, есть и другие). Если такие элементы UI вас устроят, то Python вам в руки. Но я бы смотрел в сторону связки Windows, .Net, C# (Visual Basic .Net).
Да, если ваш вендинговый аппарат предоставляет API или какой-то иной интерфейс управления - в этом случае вы сможете запрограммировать его на любом удобном вам языке.
Бывает, что вендинговые аппараты используют собственные встроенные языки. В таком случае придется программировать аппарат на нем.