Какова общая практика обработки внутренних данных на странице подтверждения заказа электронной коммерции? - PullRequest
1 голос
/ 17 сентября 2011

Мне нужны советы от людей, имеющих опыт создания сайтов электронной коммерции.На самом деле это моя первая интеграция с платежным шлюзом.

Моя реализация на самом деле является очень простой системой бронирования, где пользователь выбирает дату и количество билетов для бронирования, нажимает кнопку оплаты и выходит на экран подтверждения заказа.и затем при повторном нажатии кнопки «Отправить» пользователь переходит на сторонний платежный шлюз.

URL-адрес стороннего платежного шлюза ожидает отправку после отправки, содержащую несколько обязательных полей для их API, одним из которых является orderID дляопределить заказ.

Вот что я делаю:

  1. Уникальный заказ создается при загрузке страницы бронирования билета.

  2. Пользователь выбирает, какую дату он хочет, количество билетов и клики отправлять.

  3. Данные проверяются, а затем сохраняются в таблице заказов в дБ, а пользователь переносится на страницу подтверждения, представляя ему / ей детали, которые он выбрал, и цену.

  4. Пользователь нажимает кнопку оформления заказа, и форма отправляется на URL-адрес стороннего шлюза оплаты, пользователь также попадает на свою страницу для завершения платежа.

  5. Оплата завершена, пользователь попадает на нашу страницу успеха, платежный шлюз также публикует сведения о транзакции по нашему выбору, который фиксирует детали транзакции и сохраняет ее в базе данных заказов.

Так это возможно?Мои вопросы:

  1. Должен ли уникальный идентификатор заказа генерироваться сразу после загрузки страницы бронирования билетов?

  2. Должен ли я иметьбаза данных бронирования, которая сохраняет заказы на странице подтверждения?Что означает, что пользователь никогда не нажимает кнопку "Отправить", тогда у меня будет длинный список записей ... конечно, мы можем создать некоторые функции для очистки таблицы, но это обычная практика?

  3. Должна ли я иметь временную базу данных бронирования, как упомянуто выше, а также полную базу данных транзакций, которая собирает только детали транзакции из платежного шлюза?(Независимо от успеха / неудачи)

1 Ответ

1 голос
/ 17 сентября 2011

Q1. Должен ли уникальный идентификатор заказа генерироваться сразу после загрузки страницы бронирования билетов?

Ответ: Нет, вы не должны делать это во время загрузки. Скорее, это следует делать при окончательном представлении для стороннего платежного шлюза.

Q2. Нужно ли мне иметь базу данных бронирования, которая сохраняет заказы на странице подтверждения? Что означает, что пользователь никогда не нажимает кнопку "Отправить", тогда у меня будет длинный список записей ... конечно, мы могли бы создать некоторые функции для очистки таблицы, но это обычная практика?

Ответ. Отправьте форму в свой php-скрипт и сделайте запись в базе данных только после нажатия кнопки «Отправить». Затем вы можете отправить форму третьему лицу из вашего PHP-скрипта, как только запись будет внесена в вашу базу данных.

Q3. Должна ли я иметь временную базу данных бронирования, как упомянуто выше, а также заполненную базу данных транзакций, которая собирает только детали транзакции со шлюза оплаты? (Независимо от успеха / неудачи)

Ответ: Не требуется, если следовать тому, что упоминалось в ответе для q2 выше.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...