Долго ржал....
1. Стандартные фермы не имеют полей referer_id2, referer_id3, referer_id4, referer_id5
2. Нет проверки имеется ли реферер определенного уровня... т.е. если нет достаточного количества уровней (указано 5), то мерчант не будет работать и выдаст ошибку, что приведет к ошибке оплаты... и будут потом стучаться бедные в тикет "заплатил, а серебра нет";
3. Дальше не смог смотреть... можно сдохнуть со смеху...
Напишу сколько угодно уровневую рефералку: добавлю класс функций, а не как все быдлокод в мерчант, могу и админку сделать, чтобы определять уровни