TLS-сервер должен отправить сначала свой конечный сертификат, а за ним промежуточные (RFC 9846, § 4.5.1 разрешает передавать остальные сертификаты в любом порядке, но старые клиенты ожидают, что за каждым сертификатом идёт сертификат его издателя). Корневой сертификат обычно не отправляют, потому что он у клиента уже есть. Отсутствующий промежуточный сертификат — классическая ошибка «в браузере работает, в curl нет»: браузеры могут загрузить его по URL caIssuers из расширения AIA или взять промежуточные сертификаты из кеша, а OpenSSL, Go, Java и большинство API-клиентов так не делают.
Клиенты не просто читают список, а строят путь: при перекрёстно подписанных промежуточных сертификатах возможны несколько действительных путей, и проверяющая сторона выбирает тот, что заканчивается доверенным для неё корневым сертификатом. Так Let's Encrypt до 2024 года сохранял работоспособность старых устройств на Android благодаря перекрёстной подписи DST Root CA X3, и поэтому порядок в файле важен меньше, чем наличие всех нужных сертификатов.
PEM-пакеты (fullchain.pem) содержат конечный и промежуточные сертификаты; их могут содержать и файлы PKCS #12. Сборщик цепочки сертификатов упорядочивает и дополняет цепочку, а разделитель PEM-пакетов разбивает пакет на отдельные сертификаты.