1. Нужна сплошная сортировка - чтобы как настраиваемые службы доставки, так и профили автоматизированных служб имели сплошную сортировку. Сейчас приходится пересортировывать их в шаблоне, меняя логику вывода, но это не удобно. Пример - есть настраиваемая служба "собственный курьер, самовывоз из магазина + автоматизированная с двумя профилями: курьерская служба, самовывоз из ПВЗ" - соответственно надо вывести сначала собств.курьер, потом курьерская служба, потом самовывоз из магазина, потом самовывоз из ПВЗ.
2. Как бы я в шаблоне не пересортировывал службы и профили - все равно по умолчанию ставится выбранной первая из автоматизированных служб. Это дико не удобно и поменять это кроме модификации компонента sale.order.ajax нельзя.
2.1 Для разных местоположений хочется ставить разную службу доставки "по умолчанию"
3. Это уже для разработчиков модулей и автоматизированных сл.доставки - мы делали модули для служб доставок IML, Мультишип и т.д. По логике Битрикс, в функции Compability нам надо отфильтровать какие профили подходят под наше местоположение, а в Calculate рассчитать уже по конкретной корзине стоимость для каждого профиля.
ОДНАКО, если мы работаем со сторонним API мы делаем только один запрос - кидаем службе доставки состав корзины, габариты, вес, местоположение и т.д. и получаем список вариантов доставки с ценами.
То есть для одного и того же местоположения в зависимости от параметров корзины могут быть доступны разные профили доставки. Приходится все делать в Compability - и слать запрос и расчитывать стоимость. При этом функция Calculateстановится бесполезной. Однако параметры корзины приходят только в Calculate, а в Compability нам приходится чесать затылок левой пяткой, чтобы вручную получить все параметры корзины. Это очень обидно, учитывая, что в следующей же функции они есть по умолчанию, но в Calculate они уже не актуальны.
4. Выбирая профиль доставки человеку может потребоваться выбрать доп.данные - например в профиле "ПВЗ" надо выбрать дополнительно пункт самовывоза.
а) Кнопку ПВЗ просто так не поставишь - приходится либо извращаться JS-кой, либо модифицировать шаблон. Нужен параметр, позволяющий профилю автоматизированной службы задать кусок HTML-я с собственной формой для собственных действий.
б) После выбора ПВЗ самый большой геморой - куда его сохранить? Сделать отдельное свойство заказа, ловить его JS-кой в форме оформления заказа.... Или создавать собственные инпуты и ловить их значение на событие оформления заказа. В общем тоже костыль. Нужно дать возможность сохранить собственные данные в выбранном профиле доставки, как это делает битрикс, когда выдает форму выбора ПВЗ по складам. То есть для собственных нужд Битркис это сделал, а для нужд автоматизированной службы доставки такой возможности нет...
5. И последнее - давайте писать в параметры заказа не просто ID выбранной доставки, а еще и ее название (как в корзину вы добавляете не просто id товара, а дубль всей информации). Вот например модуль Мультишип вместе с самим агрегатором прекратили свое существование. Модуль умер вместе с API и люди были вынуждены его удалить - одновременно с этим во всех заказах потерялась информация о том, какой службой доставки и профилем был отправлен заказа. Да, id-шник остался, но он теперь ни о чем не говорит...