Торговля без платежного адреса


Мы разрабатываем коммерческий веб-сайт Drupal 8, которому не нужно ничего делать с адресами

  • Все продукты являются виртуальными: членство и билеты на мероприятия.
  • Для выставления счетов используется PayPal express, который заботится об адресе выставления счетов.

Поэтому мы не хотим предлагать клиенту заполнить адрес, или сохранить адрес, или предоставить им вкладку "адреса" в своем профиле. Пожалуйста, кто-нибудь может посоветовать, как это настроить сценарий?

До сих пор мы рассматривали:

  1. Отредактируйте поток торговли. Панель "Информация о выставлении счетов" включается через "Информация об оплате". Если мы удалим платежную информацию, она подавит запрос на адрес и запретит создание профиля, но, к сожалению, это, похоже, не позволит этапу оплаты работать должным образом.

  2. Измените отображение формы профиля клиента, чтобы отключить поле адреса. Это действительно подавляет запрос адреса, но мы находим что для каждого заказа создается пустой профиль.

  3. Удалите тип профиля клиента. Мы еще не пробовали, потому что это, скорее всего, сломает сайт, поскольку в коде Commerce core есть различные жестко закодированные ссылки на этот тип профиля.

В качестве дополнительного вопроса мы также предпочли бы не вводить адрес магазина, поскольку у него нет физического адреса. Однако адрес, по-видимому, является обязательным и не допускает страны = нет. Мы ввели манекен значение, которое, кажется, работает, поскольку до сих пор мы не видели, чтобы оно использовалось. Можем ли мы быть уверены, что фиктивный адрес никогда не будет использоваться, и если да, было бы разумно сказать, что адрес должен быть необязательным полем?

 1
Author: AdamS, 2018-06-21

2 answers

Адрес магазина используется для расчета налогов. Это не обязательно должен быть физический адрес магазина, введите адрес, на который зарегистрирована организация.

В форме редактирования магазина выберите одну "Разрешенную страну выставления счетов". Это скроет селектор страны во всех ваших адресных полях.

Затем перейдите к admin/config/people/profiles/manage/customer/fields/profile.customer.address и в разделе "Переопределения полей" выберите "Скрытый" для каждого поля. Это скроет другие подполя адресов.

Вы должны быть в последней версии Commerce чтобы это сработало.

(И да, для каждого заказа будет создан пустой профиль только с кодом страны. В настоящее время это невозможно обойти)

 4
Author: Bojan Zivanovic, 2018-06-22 13:35:29

Кредит: большое спасибо @Bojan за информацию в его ответе, пожалуйста, присоединяйтесь ко мне в +1 к нему. Я создал этот новый ответ, чтобы более четко объяснить некоторые детали и добавить некоторые новые факторы, которые я обнаружил.

1) Чтобы избежать пустого профиля:

  • ЛИБО примените "высокоэкспериментальный" патч из этого выпуска
  • ИЛИ создайте свой собственный класс, который расширяет информацию о платежах и удаляет все, что связано с профилями. Однако в этом случае вы попадете этот вопрос.

2) Если существует только один способ оплаты, это приводит к нежелательной пустой панели "Информация об оплате". Один из способов исправить это - изменить панель оформления заказа и установить wrapper_element = "контейнер".

3) Если существует только один способ оплаты, то при входе в систему весь шаг "Информация о заказе" не требуется. Один из способов исправить это - отредактировать процесс оформления заказа и переместить "Платежную информацию" на этап проверки. Однако затем вы нажмете на это ошибка и необходимо применить исправление.

 2
Author: AdamS, 2018-06-28 20:12:38