update_order_status


Questa chiamata aggiorna lo stato di un ordine.


E' possibile settare lo stato dell'ordine due modi:


Order_status = 0

  • L'ordine  è nello stato Nuovo.
  • La logistica non vede l'ordine.
  • E' possibile cambiare eventuali dati anagrafici prima di permettere alla logistica di elaborare l'ordine.


Order_status = 1

  • L'ordine  è nello stato Ready.
  • La logistica vede l'ordine.
  • E' possibile cambiare eventuali dati anagrafici ma è necessario prima accordarsi con la logistica per evitare problemi.


Order_status = 2

  • L'ordine  è nello stato Logistic Locked.
  • La logistica  ha il controllo esclusivo dell'ordine e lo mette in lavorazione.
  • Non sono più possibili modifiche anagrafiche da parte dell'operatore API


Order_status = 3

  • L'ordine  è nello stato Order Shipped
  • L'anagrafica non è più modificabile
  • Lo stato non è più modificabile
  • Vengono popolati i capi che contengono in nome del vettore con relativo tracking number


Order_status = 4

  • L'ordine  è nello stato Order Shipped with Zero Items
  • L'anagrafica non è più modificabile
  • Lo stato non è più modificabile
  • Questo stato indica che l'ordine non è evadibile




Lo stato dell'ordine su questa interfaccia non ha impatti lato store principale, quindi una volta finalizzato l'ordine con il checkout del basket, la logistica provvede a prendere in carico i prodotti richiesti ed attende che gli ordini appaiano nel gestore ordini per l'evasione. Anche la fatturazione dei prodotti acquistati procede indipendentemente dallo status dell'ordine.



Chiamata parametri:

Parametro

Obbligatorio

Note

uid

si

Id cliente

pid

si

Id Portale

lid

si

id Lingua

key

si

Codice di autenticazione

api_version  

si

Versione API.

request

si

Nome della funzione richiesta

id_order

si

id dell'ordine da modificare

order_status

si

nuovo stato da modificare

shipping_company

si: se order_status = 1 e non si ha un abbonamento chiavi in mano.

no: se order status = 0 o se si ha un abbonamento chiavi in mano


cod ottenuto dalla chiamata get_shipping_company

Corriere da utilizzare per l'invio dei prodotti.
E' obbligatorio definirlo se order_status viene messo ad 1 (Ready) e non si ha un abbonamento chiavi in mano



Risposta parametri:

Parametro

Sempre Presente

Note

success

si

true o false, indica se l'operazione ha avuto buon esito o meno

rc

si

return code.

message

si

Messaggio di errore


Questo  messaggio  può avere come errori di ritorno:

  • -2  Access Denied
  • -4  Fatal Error: There was an internal Error. Please retry or contact webmaster@wwt.it
  • -16 id_order {0} not found
  • -17 Order status > 1. Change is forbidden
  • -18 Allowed values are 0 and 1
  • -21 Order status can not be decremented
  • -22 Please select your Shipping Company
  • -28 Invalid Country. Call the message update_user_order and change the user_country field using one of the vaslues available into the field COD (int) of get_shipping_country message


Struttura Json di richiesta:


{

  "uid"               : "12345",

  "pid"               : "2",

  "lid"               : "1",

  "key”               : "VtKpudWnzRBioQeBKQXPBdSpamppUTw8",

  "api_version"       : "1.0.0",

  "request"           : "update_order_status",

  "id_order"          : 5,

  "order_status"      : 1,

  "shipping_company"  : "FEDEX"

}



Esempio di chiamata php:



$data = array(


               "uid"             => 12345,

               "pid"             => 2,

               "lid"             => 1,

               "key"             => "VtKpudWnzRBioQeBKQXPBdSpamppUTw8",

               "api_version"     => "1.0.0",

               "request"         => "update_order_status",

               "id_order"        => 5,

               'order_status'    => 1

               'shipping_company'=> "FEDEX"


);




$data = array('data' => json_encode($data));


$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://dev.dropshippingb2b.com/api/");

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,FALSE);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,2);

curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);


$ce = curl_exec($ch); // in $ce la risposta alla chiamata

echo $ce;

curl_close($ch);





Esempio di Risposta positiva


{

    "success": true,

    "rc": 0,

    "message": ""

}



Esempio di Risposta negativa


{

    "success": false,

    "rc": -16,

    "message": "id_order 500 not found"

}
























Created with the Personal Edition of HelpNDoc: Free iPhone documentation generator