Алексей, позволь пару замечаний:
1. Если не получается подключить пакет, то почему не прерывается процесс? Это я про вот это:
echo "\naddPackage " . ($success? 'OK' : 'Failed'); $success = $modx->loadClass('Paysystem');
То есть если !$success, то и loadClass делать нет смысла. Это же касается и попытки подключения класса — если не удалось подключить класс, то и создавать новый объект нет смысла. К слову, $modx->newObject() и прочие методы в принципе включают в себя метод $modx->loadClass(), так что не надо специально его вызывать заранее.
2. Данный код крайне избыточный, особенно имея ввиду то, что пакет billing имеется в экспеншенах, и выполняется автоматически. Соответственно, его нет смысла подключать через $modx->addPackage(). В итоге, конечный работающий код будет выглядеть вот так:
if(!$object = $modx->newObject('Paysystem', array( "name" => "EdinayaKassa", "comment" => "Единая касса приема платежей", ))){ print "Не удалось создать новый объект платежной системы"; return; } // else if(!$object->save()){ print "Не удалось сохранить новый объект платежной системы"; return; } // else print "Был создан новый объект платежной системы с id ". $object->id;