Здравствуйте!
Вы абсолютно верно рассуждаете — при наличии оплаты на сайте между вами и клиентом действительно заключается договор публичной оферты, и именно те условия, которые указаны на момент оплаты, становятся обязательными. Поэтому заранее заложенные цены и порядок оформления должны быть юридически выверенными.
Если вы хотите сохранить гибкость — например, возможность отказать в заказе, изменить стоимость в зависимости от сложности гравировки, уточнить наличие заготовок или особенности доставки — правильным решением будет выстраивание процесса таким образом, чтобы заключение договора происходило не на этапе оформления заявки, а на этапе подтверждения условий и выставления счета.
В таком случае, оптимальный вариант: не использовать автоматическую корзину и не принимать оплату сразу на сайте, а оформить форму заявки (без автоматического заключения сделки), после чего уже вручную согласовывать детали с клиентом и направлять индивидуальную ссылку на оплату (например, через ЮKassa, Сбербанк Онлайн и др.). При этом текст публичной оферты должен быть размещён на сайте и в явном виде предусматривать, что договор считается заключённым только с момента оплаты по выставленному предложению — а не по отправке заявки. Это позволит вам оценивать каждый заказ индивидуально и корректно регулировать стоимость.
Также в форме, перед отправкой, клиент может ставить галочку: «Согласен с условиями оферты», что подтвердит юридически его согласие с правилами. При этом дата заключения договора всё равно будет считаться моментом оплаты, если это указано в оферте.
Таким образом, вы обеспечите себе юридическую защиту и гибкость, при этом не нарушая требований законодательства о публичной оферте и дистанционной продаже.
Если у вас возникнут дополнительные вопросы при подготовке текста оферты или структуре сайта — с радостью помогу.
С наилучшими пожеланиями,
Хабас Феликсович.
Для продажи услуг по гравировке нужно оформить публичную оферту, которая будет являться договором между вами и клиентом.