Domanda

La mia domanda è, quanto è unico l'ID ordine incrementale?Il gateway di pagamento sto usando richiede un ID ordine univoco per ogni tentativo di acquisto.

Quindi diciamo che il cliente si cerca di acquistare, ma la sua transazione è negata.

Order ID: 1, Increment Order ID: 100001

Quando cerca di acquistare ancora, l'ID Increment Order diventerà 100002, o sarà ancora 100001?E se sì, come faccio a rinfrescare / incrementarlo?

Inoltre, sarà unico in tutti i clienti?Un Order ID: 2 ha un Increment Order ID: 100001?O sarà unico in tutti gli ordini?

È stato utile?

Soluzione

È globalmente unico, che è persino assicurato a livello di database.

Questo è il codice da app/code/core/Mage/Sales/sql/sales_setup/install-1.6.0.0.php dove viene creata la tabella degli ordini:

->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))
.

Anche se un cliente tenta di ordinare di nuovo dopo un ordine interrotto che è già presente nel database, verrà creato un nuovo ordine.

Altri suggerimenti

I numeri dell'ordine (e della fattura, della spedizione, del CreditNote) sono unici in tutto l'applicazione.
Ma potrebbero non essere consecutivi per vari motivi.
Ad esempio, l'ID vista del negozio viene utilizzato come prefisso per i numeri dell'ordine.
Quindi se ordini dalla visualizzazione del negozio con ID 1 otterrai il numero 100001.
Quindi se il prossimo ordine proviene dalla visualizzazione del negozio con ID 2 otterrai il numero 200001.

Il prossimo ordine dalla vista del negozio 1 potrebbe avere il numero 100002 ma potrebbe avere un numero maggiore se alcuni pagamenti non sono riusciti tra (o se alcuni carrelli sono stati abbandonati e alcune condizioni sono soddisfatte).
Inoltre non puoi avere 2 ordini da diversi clienti con lo stesso numero.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top