add_items_to_basket
Questa chiamata inserisce i prodotti nel basket riservato WWT assieme ai dati del cliente finale.
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 |
items |
si |
Radice dell'albero che contiene le richieste |
id_product |
si |
Id del prodotto ottenuto dalla chiamata get_brand_items |
qty |
si |
quantità del prodotto richiesta |
user_id_order |
no |
id ordine utente finale |
user_id_user |
no |
id utente finale |
user_company_name |
no |
ragione sociale o titolo dell'utente finale (Mr., Ms., Sig. , Sig.ra, dott., etc... ) |
user_first_name |
no |
nome utente finale |
user_last_name |
no |
cognome utente finale |
user_address |
no |
indirizzo utente finale |
user_city |
no |
città utente finale |
user_country |
no |
nazione utente finale. E' possibile utilizzare soltanto i valori contenuti nel campo COD del messaggio get_shipping_country |
user_zipcode |
no |
cap utente finale |
user_state |
no |
provincia utente finale |
user_phone |
no |
telefono utente finale |
user_mobile |
no |
cellulare utente finale |
user_mail |
no |
indirizzo mail utente finale |
user_retail_price |
no |
prezzo retail utente finale |
user_discount |
no |
prezzo scontato utente finale |
user_price |
no |
prezzo finale utente finale |
user_cod |
no |
Pagamento in contrassegno (cod: Cache on Delivery ). Due soli valori ammessi:
Default : 0 |
user_note |
no |
note inserite dall'utente finale |
internal_note |
no |
note inserite dal partner per WWT |
I campi non obbligatori sono quelli riguardanti l'utente che ha eseguito l'ordine ed i campi di messaggistica.
Nel caso in cui il partner voglia utilizzare la nostra interfaccia di Dropshipping questi dati saranno necessari anche se restano comunque non obbligatori.
I campi di messaggistica devono essere inviati codificati in base64 onde prevenire problemi di interpretazione della struttura dati JSON.
Nel caso in cui non lo fossero, le API provvederanno a farlo.
Ad ogni modo questi campi ( user_note ed internal_note ) saranno diffusi in base64.
Risposta parametri:
Questa risposta è divisa in due parti.
- Parte generale che stabilisce se l'intero processo di inserimento dati nel basket è andato bene o meno.
- Parte dettagliata, che riporta per ogni singola richiesta l'esito dell'inserimento nel DB. Queste risposte sono incapsulate nel nodo padre "items"
Risposta Parte generale
Parametro |
Sempre Presente |
Note |
success |
si |
true o false, indica se tutte le operazioni eseguite hanno avuto buon esito o meno |
rc |
si |
return code. |
message |
si |
Messaggio di errore |
Questo parte del messaggio può avere come messaggi d'errore
- -2 Access Denied
- -4 Fatal Error: There was an internal Error. Please retry or contact webmaster@wwt.it
- -11 One or more errors occurred while processing your request.
- -14 Unable to proceed. User does not have permission to perform this action
- -20 user_cod must be 0 or 1
- -27 Invalid Country. Use one of the values available into the field COD (int) of get_shipping_country message
Nel caso di errori -2 o -4, non sarà presente il campo items e quindi neppure il dettaglio dei singoli messaggi.
Risposta Parte Dettagliata.
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 |
id_basket
|
si |
Indica l'id di riferimento nel basket WWT. E' valorizzato solo quando è stato possibile inserire almeno una referenza nel basket |
id_product |
si |
id del prodotto inserito nel basket |
qty_requested |
si |
quabtità richiesta |
qty_available |
si |
Nuova quantità disponibile nello store WWT dopo aver riservato la qty richiesta |
minimum_qty |
si |
Quantità minima necessaria per poter procedere all'inserimento del prodotto nel basket. Questo valore è possibile prenderlo dal campo "min_qty" della funzione get_brands. |
qty_reserved |
si |
Quantità riservata. Questo valore può essere inferiore alla qty_requested se:
|
retail_price |
si |
Prezzo a listino |
discount |
si |
sconto |
price |
si |
prezzo di vendita |
extra_discount |
si |
sconto percentuale extra nel caso sia stata raggiunta la soglia extra_discount_threshold_value |
net_price |
si |
Prezzo di vendita dopo l'extra sconto. Questo valore è almeno uguale a price, anche se extra_discount = 0 |
Struttura Json di richiesta:
{ "uid": 12345, "pid": 2, "lid": 1, "key": "VtKpudWnzRBioQeBKQXPBdSpamppUTw8", "api_version": "1.0.0", "request": "add_items_to_basket", "items": [{ "id_product": 110032, "qty": 1, "user_id_order": 22, "user_id_user": 33, "user_company_name": "Ms.", "user_first_name": "Matilda", "user_last_name": "Dale", "user_address": "10 Horner Street", "user_city": "Akron", "user_country": 1, "user_zipcode": "44307", "user_state": "MI", "user_phone": "330-977-0601", "user_mobile": "330-977-0602", "user_mail": "MatildaDale@rhyta.com", "user_retail_price": 1000, "user_discount": 50.3, "user_price": 497, "user_cod": 1, "user_note": "dGVzdG8gY2xpZW50ZQ==", "internal_note": "dGVzdG8gZXNlcmNlbnRl" }, { "id_product": 51788, "qty": 14, "user_id_order": 22, "user_id_user": 33, "user_company_name": "Mr.", "user_first_name": "Arabella", "user_last_name": "Palermo", "user_address": "Bayreuther Strasse 14", "user_city": "Offenbach", "user_country": 1, "user_zipcode": "63073", "user_state": "MI", "user_phone": "069 82 66 04", "user_mobile": "069 82 66 07", "user_mail": "ArabellaPalermo@dayrep.de", "user_retail_price": 1000, "user_discount": 50.3, "user_price": 497, "user_cod": 0, "user_note": "dGVzdG8gY2xpZW50ZQ==", "internal_note": "dGVzdG8gZXNlcmNlbnRl" }, { "id_product": 105108, "qty": 1, "user_id_order": 22, "user_id_user": 33, "user_company_name": "Intervals s.a.r.l.", "user_first_name": "Melvin", "user_last_name": "Jansson", "user_address": "Avda. Alameda Sundheim, 72", "user_city": "Binaced", "user_country": 1, "user_zipcode": "22510", "user_state": "MI", "user_phone": "974 313 352", "user_mobile": "974 313 687", "user_mail": "MelvinJansson@jourrapide.com", "user_retail_price": 1000, "user_discount": 50.3, "user_price": 497, "user_cod": 0, "user_note": "dGVzdG8gY2xpZW50ZQ==", "internal_note": "dGVzdG8gZXNlcmNlbnRl" }] } |
Esempio di chiamata php:
$data = array( "uid" => 12345, "pid" => 2, "lid" => 1, "key" => "VtKpudWnzRBioQeBKQXPBdSpamppUTw8", "api_version" => "1.0.0", "request" => "add_items_to_basket", "items" => array( array( 'id_product' => 110032, 'qty' => 1, 'user_id_order' => 22, 'user_id_user' => 33, 'user_company_name' => 'Ms', 'user_first_name' => 'Matilda', 'user_last_name' => 'Dale', 'user_address' => '10 Horner Street', 'user_city' => 'Akron', 'user_country' => 1, 'user_zipcode' => '44307', 'user_state' => 'MI', 'user_phone' => '330-977-0601', 'user_mobile' => '330-977-0602', 'user_mail' => 'MatildaDale@rhyta.com', 'user_retail_price' => 1000, 'user_discount' => 50.30, 'user_price' => 497, 'user_cod' => 1, 'user_note' => base64_encode('testo cliente'), 'internal_note' => base64_encode('testo esercente') ) , array( 'id_product' => 51788, 'qty' => 14, 'user_id_order' => 22, 'user_id_user' => 33, 'user_company_name' => 'Mr.', 'user_first_name' => 'Arabella', 'user_last_name' => 'Palermo', 'user_address' => 'Bayreuther Strasse 14', 'user_city' => 'Offenbach', 'user_country' => 1, 'user_zipcode' => '63073', 'user_state' => 'MI', 'user_phone' => '069 82 66 04', 'user_mobile' => '069 82 66 07', 'user_mail' => 'ArabellaPalermo@dayrep.de', 'user_retail_price' => 1000, 'user_discount' => 50.30, 'user_price' => 497, 'user_cod' => 0, 'user_note' => base64_encode('testo cliente'), 'internal_note' => base64_encode('testo esercente') ), array( 'id_product' => 105108, 'qty' => 1, 'user_id_order' => 22, 'user_id_user' => 33, 'user_company_name' => 'Intervals s.a.r.l.', 'user_first_name' => 'Melvin', 'user_last_name' => 'Jansson', 'user_address' => 'Avda. Alameda Sundheim, 72', 'user_city' => 'Binaced', 'user_country' => '', 'user_zipcode' => '22510', 'user_state' => 'Spain', 'user_phone' => '974 313 352', 'user_mobile' => '974 313 687', 'user_mail' => 'MelvinJansson@jourrapide.com', 'user_retail_price' => 1000, 'user_discount' => 50.30, 'user_price' => 497, 'user_cod' => 0, 'user_note' => base64_encode('testo cliente'), 'internal_note' => base64_encode('testo esercente') ) ) ); $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); echo $ce; curl_close($ch); |
Esempio di Risposta
{ "success": false, "rc": -11, "message": "One or more errors occurred while processing your request.", "items": [{ "success": true, "rc": 0, "message": "", "id_basket": 9, "id_product": 110032, "qty_requested": 1, "qty_available": 41, "minimum_qty": "0", "qty_reserved": 1, "retail_price": "39.00", "discount": "65.00", "price": "13.65", "extra_discount": "0", "net_price": "13.65" },{ "success": false, "rc": -10, "message": "The requested quantity is not available in stock. Only 10 item(s) was reserved.", "id_basket": 13, "id_product": 51788, "qty_requested": 14, "qty_available": 0, "minimum_qty": "0", "qty_reserved": 10, "retail_price": "190.00", "discount": "70.00", "price": "57.00", "extra_discount": "0", "net_price": "57.00" },{ "success": false, "rc": -7, "message": "It was not possible to reserve item(s). Item is out of stock", "id_basket": 0, "id_product": 105108, "qty_requested": 1, "qty_available": "0", "minimum_qty": "0", "qty_reserved": 0, "retail_price": "45.00", "discount": "48.91", "price": "22.99", "extra_discount": "0", "net_price": "22.99" }] } |
Una risposta Json negativa possibile:
{ "success": false, "rc": -4, "message”: "Fatal Error: There was an internal Error. Please retry or contact webmaster@wwt.it" } |
Questa parte del messaggio può avere come messaggi d'errore
- -2 Access Denied
- -4 Fatal Error: There was an internal Error. Please retry or contact webmaster@wwt.it
- -7 It was not possible to reserve item(s). Item is out of stock
- -8 It was not possible to reserve item(s). Minimum quantity is not reached
- -9 Minimum quantity not reached but {0} item(s) inserted for out of stock
- -10 The requested quantity is not available in stock. Only {0} item(s) was reserved.
Created with the Personal Edition of HelpNDoc: Free EBook and documentation generator