Тут, кажется, уже не раз об этом писалось... Ищите в разделе по киперу. Я вкратце повторю.
Итак, банкет с предоплатой.
Раз: при приеме предоплаты 16 мая на 18 мая бьем блюдо "предоплата", "банкет", "три корочки", "семь караваев" или пофиг что еще на сумму предоплаты. В хаусе делаем услугой и забываем.
Два: при проведении банкета 18 мая пробиваем все, как заказано нормальными блюдами на полную сумму банкета, закрываем на сумму предоплаты либо купоном, либо на неплательщика, остаток по сумме закрываем так, как платят.
Наслаждаемся.