Является ли добавочный идентификатор заказа уникальным для всех клиентов/заказов/веб-сайтов?

magento.stackexchange https://magento.stackexchange.com//questions/74480

Вопрос

Мой вопрос: насколько уникален идентификатор дополнительного заказа?Платежный шлюз, который я использую, требует уникальный идентификатор заказа для каждой попытки покупки.

Допустим, клиент А пытается совершить покупку, но его транзакция отклонена.

Order ID: 1, Increment Order ID: 100001

Когда он попытается совершить покупку снова, будет ли Increment Order Я бы стал 100002, или это все равно будет 100001?И если да, то как мне обновить/увеличить его?

Кроме того, будет ли оно уникальным для всех клиентов?Будет ли Order ID: 2 есть Increment Order ID: 100001?Или он будет уникальным для всех заказов?

Это было полезно?

Решение

Он уникален во всем мире, что подтверждается даже на уровне базы данных.

Это код из app/code/core/Mage/Sales/sql/sales_setup/install-1.6.0.0.php где создается таблица заказов:

->addIndex(
    $installer->getIdxName(
        'sales/order',
        array('increment_id'),
        Varien_Db_Adapter_Interface::INDEX_TYPE_UNIQUE
    ),
    array('increment_id'), array('type' => Varien_Db_Adapter_Interface::INDEX_TYPE_UNIQUE))

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

Другие советы

Номера заказов (а также счетов, отгрузок и кредит-нот) уникальны во всем приложении.
Но они могут быть не последовательными по разным причинам.
Например, идентификатор представления магазина используется в качестве префикса для номеров заказов.
Таким образом, если вы заказываете из представления магазина с идентификатором 1, вы получите номер 100001.
Тогда, если следующий заказ будет сделан из представления магазина с идентификатором 2, вы получите номер 200001.
Следующий заказ из представления магазина 1 может иметь номер 100002, но он может иметь и большее число, если в промежутке между заказами не удалось выполнить какие-либо платежи (или если некоторые корзины были брошены и соблюдены некоторые определенные условия).
Также у вас не может быть 2 заказов от разных клиентов с одним и тем же номером.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top