Exportação das encomendas

URL do Webservice : https://sws.spartoo.pt/mp/xml_export_orders.php

Este webservice permite recuperar as informações das encomendas através de uma data ou através da identificação.
As encomendas podem ser filtradas por estatuto.

Lista dos parâmetros

Os parâmetros deste webservice devem passar obrigatoriamente em POST

Parâmetro Descrição
partenaire Deve conter a sua identificação única:
date Data a partir da qual deseja selecionar as encomendas. Formato: AAAA-MM-DD:hh:mm:ss (exemplo: 2011-11-27:03:00:00)
oID Identificação da encomenda
statut Estatuto das encomendas a visualizar. Se este parâmetro não for indicado, serão selecionadas todas as encomendas.
> Ver a lista dos estatutos

O parâmetro do parceiro é obrigatório e um dos parâmetros date ou oID também. O parâmetro statut é facultativo.

Formato do XML devolvido


<root>
	<orders>
		<order>
			<orders_id>string</orders_id>
			<customers>
				<customers_firstname>string</customers_firstname>
				<customers_lastname>string</customers_lastname>
				<customers_company>string</customers_company>
				<customers_street_address>string</customers_street_address>
				<customers_suburb>string</customers_suburb>
				<customers_city>string</customers_city>
				<customers_postcode>string</customers_postcode>
				<customers_state>string</customers_state>
				<customers_country>string</customers_country>
				<customers_email_address>string</customers_email_address>
				<customers_telephone>string</customers_telephone>
			</customers>
			<delivery>
				<delivery_firstname>string</delivery_firstname>
				<delivery_lastname>string</delivery_lastname>
				<!-- ... O tag "relay_info" está presente apenas para uma encomenda enviada para um ponto de entrega ... -->
				<relay_info>
					<relay_id>int</relay_id>
					<relay_type>string</relay_type>
					<relay_name>string</relay_name>
					<relay_address>string</relay_address>
					<relay_city>string</relay_city>
					<relay_postcode>string</relay_postcode>
					<relay_country_iso>string</relay_country_iso>
				</relay_info>
				<!-- ... Os tags "delivery_*" abaixo são apenas para encomendas que não são enviadas para pontos de entrega ... -->
				<delivery_company>string</delivery_companyy>
				<delivery_suburb>string</delivery_suburb>
				<delivery_street_address>string</delivery_street_address>
				<delivery_city>string</delivery_city>
				<delivery_postcode>string</delivery_postcode>
				<delivery_state>string</delivery_state>
				<delivery_country>string</delivery_country>
			</delivery>
			<payment_method>string</payment_method>
			<payment_price>float</payment_price>
			<shipping_price>float</shipping_price>
			<shipping_name>string</shipping_name>
			<order_total>float</order_total>
			<orders_status_name>string</orders_status_name>
			<orders_status_id>int</orders_status_id>
			<date_purchased>[DATE]</date_purchased>
			<last_modified>[DATE]</last_modified>
			<products>
				<product>
					<products_reference>string</products_reference>
					<products_name>string</products_name>
					<products_qty>int</products_qty>
					<products_spartoo>int</products_spartoo>
					<products_manufacturers>string</products_manufacturers>
					<products_size>string</products_size>
					<products_size_reference>string</products_size_reference>
					<products_color>string</products_color>
					<products_price_unit>float</products_price_unit>
					<products_price_unit_with_reduce>float</products_price_unit_with_reduce>
					<products_final_price>float</products_final_price>
				</product>
				<!-- ... Várias balizas "product" possíveis ... -->
			</products>
			<errors>
				<error>
					<id>int</id>
					<description>string</description>
				</error>
			</errors>
		</order>
		<!-- ... Várias balizas "order" possíveis ... -->
	</orders>
	<statut>
		<id>int</id>
		<description>string</description>
	</statut>
</root>

Tag opcional

No caso de uma encomenda enviada para um ponto de entrega acrescente um tag "relay_info" e suprime os tags "delivery_*" com exceção do nome e do apelido.
Se não for uma encomenda enviada para um ponto de entrega suprime o tag relay_info e adiciona todos os tags "delivery_*.

Lista dos códigos de erros do webservice


Código Descrição
1 Sem erros nos parâmetros
-1 O parâmetro partenaire não passou no parâmetro ou está vazio
-2 O parâmetro do parceiro não existe
-3 Falta um parâmetro obrigatório ( date ou oID/rID )
-4 Formato da data inválido
-428 A sua conta foi desativada. Não pode mais efetuar chamadas ao webservice
-429 Efetuou demasiado chamadas para o Webservice nesta hora corrida

Descrição dos campos da resposta XML


Balise Descrição
orders_id Identificação da encomenda
customers Informações sobre o cliente para a faturação
delivery Informações sobre o cliente para a entrega
customers_firstname / delivery_firstname Nome do cliente
customers_lastname / delivery_lastname Apelido do cliente
customers_company / delivery_company Empresa do cliente
customers_street_address / delivery_street_address Morada do cliente
customers_suburb / delivery_suburb Complemento de morada do cliente
customers_city / delivery_city Localidade do cliente
customers_postcode / delivery_postcode Código postal do cliente
customers_country / delivery_country País do cliente
customers_telephone Telefone do cliente
relay_info Informações ponto de entrega
relay_id Identificação do ponto de entrega
relay_type Tipo do ponto de entrega
relay_name nome do ponto de entrega
relay_address Endereço do ponto de entrega
relay_city Cidade do ponto de entrega
relay_postcode Código postal do ponto de entrega
relay_country País do ponto de entrega
payment_method Forma de pagamento
payment_price Custo do pagamento ( atualmente, sempre 0 )
order_total Total da encomenda
orders_status_name Nome do estatuto atual da encomenda
orders_status_id Id do estatuto atual da encomenda
date_purchased Data da encomenda
last_modified Data última modificação da encomenda
products Lista dos produtos
products_reference Referência do produto no parceiro
products_spartoo Referência do produto na Spartoo
products_name Nome do modelo
products_qty Quantidade encomendada
products_manufacturers Nome da marca
products_size Tamanho encomendado
products_color Cor do produto
products_price_unit Preço unitário
products_price_unit_with_reduce Preço com desconto
products_final_price products_price_unit_with_reduce x products_qty


Exemplos de devolução XML




Exemplo de resposta a uma chamada web serviço KO :

<root>
	<orders>
		<order>
			<orders_id>90D813EA1A2365A8</orders_id>
			<customers>	</customers>
			<delivery>
				<delivery_firstname><![CDATA[Robert]]></delivery_firstname>
				<delivery_lastname><![CDATA[Durand]]></delivery_lastname>
				<relay_info>
					<relay_id>1505</relay_id>
					<relay_type><![CDATA[kiala]]></relay_type>
					<relay_name><![CDATA[(NP)LE PAPYRUS]]></relay_name>
					<relay_address><![CDATA[Boulevard Gambetta]]></relay_address>
					<relay_city><![CDATA[Grenoble]]></relay_city>
					<relay_postcode><![CDATA[38000]]></relay_postcode>
					<relay_country_iso><![CDATA[FR]]></relay_country_iso>
				</relay_info>
				<delivery_company><![CDATA[Spartoo]]></delivery_company>
				<delivery_suburb><![CDATA[16 rue Henri Barbusse]]></delivery_suburb>
				<delivery_street_address><![CDATA[16 rue Henri Barbusse]]></delivery_street_address>
				<delivery_city><![CDATA[Grenoble]]></delivery_city>
				<delivery_postcode><![CDATA[38100]]></delivery_postcode>
				<delivery_state></delivery_state>
				<delivery_country><![CDATA[France]]></delivery_country>
			</delivery>
			<payment_method><![CDATA[Paiement par carte bancaire]]></payment_method>
			<payment_price>0</payment_price>
			<order_total>120.0000</order_total>
			<orders_status_name><![CDATA[Commande Vérifiée]]></orders_status_name>
			<orders_status_id>11</orders_status_id>
			<date_purchased>2013-02-12 14:00:00</date_purchased>
			<last_modified>2013-02-12 14:00:00</last_modified>
			<products>
				<product>
					<products_reference><![CDATA[ABCD]]></products_reference>
					<products_name><![CDATA[ALL STAR HI]]></products_name>
					<products_qty>2</products_qty>
					<products_spartoo>123456</products_spartoo>
					<products_manufacturers><![CDATA[Converse]]></products_manufacturers>
					<products_size>42</products_size>
					<products_size_reference><![CDATA[AAAAAA]]></products_size_reference>
					<products_color><![CDATA[Blanc]]></products_color>
					<products_price_unit>60.00</products_price_unit>
					<products_price_unit_with_reduce>200.00</products_price_unit_with_reduce>
					<products_final_price>120.00</products_final_price>
				</product>
			</products>
			<errors>
				<error>
					<id>-1</id>
					<description>Le paramètre partenaire n'est passé ou est vide</description>
				</error>
			</errors>
		</order>
	</orders>
	<statut>
		<id>41</id>
		<description>Annulation commande</description>
	</statut>
</root>

Exemplo de resposta a uma chamada web serviço OK :

<root>
	<orders>
		<order>
			<orders_id>90D813EA1A2365A8</orders_id>
			<customers>
				<customers_firstname><![CDATA[Robert]]></customers_firstname>
				<customers_lastname><![CDATA[Durand]]></customers_lastname>
				<customers_company><![CDATA[Spartoo]]></customers_company>
				<customers_street_address><![CDATA[16 rue Henri Barbusse]]></customers_street_address>
				<customers_suburb><![CDATA[2eme Etage]]></customers_suburb>
				<customers_city><![CDATA[Grenoble]]></customers_city>
				<customers_postcode><![CDATA[38100]]></customers_postcode>
				<customers_state></customers_state>
				<customers_country><![CDATA[France]]></customers_country>
				<customers_telephone><![CDATA[0612345678]]></customers_telephone>
			</customers>
			<delivery>
				<delivery_firstname><![CDATA[Robert]]></delivery_firstname>
				<delivery_lastname><![CDATA[Durand]]></delivery_lastname>
				<relay_info>
					<relay_id>1505</relay_id>
					<relay_type><![CDATA[kiala]]></relay_type>
					<relay_name><![CDATA[(NP)LE PAPYRUS]]></relay_name>
					<relay_address><![CDATA[Boulevard Gambetta]]></relay_address>
					<relay_city><![CDATA[Grenoble]]></relay_city>
					<relay_postcode><![CDATA[38000]]></relay_postcode>
					<relay_country_iso><![CDATA[FR]]></relay_country_iso>
				</relay_info>
				<delivery_company><![CDATA[Spartoo]]></delivery_company>
				<delivery_suburb><![CDATA[16 rue Henri Barbusse]]></delivery_suburb>
				<delivery_street_address><![CDATA[16 rue Henri Barbusse]]> </delivery_street_address>
				<delivery_city><![CDATA[Grenoble]]></delivery_city>
				<delivery_postcode><![CDATA[38100]]></delivery_postcode>
				<delivery_state></delivery_state>
				<delivery_country><![CDATA[France]]></delivery_country>
			</delivery>
			<payment_method><![CDATA[Paiement par carte bancaire]]></payment_method>
			<payment_price>0</payment_price>
			<order_total>120.0000</order_total>
			<orders_status_name><![CDATA[Commande Vérifiée]]></orders_status_name>
			<orders_status_id>11<orders_status_id>
			<date_purchased>2013-02-12 14:00:00</date_purchased>
			<last_modified>2013-02-12 14:00:00</last_modified>
			<products>
				<product>
					<products_reference>ABCD</products_reference>
					<products_name><![CDATA[ALL STAR HI]]></products_name>
					<products_qty>2</products_qty>
					<products_spartoo>123456</products_spartoo>
					<products_manufacturers><![CDATA[Converse]]></products_manufacturers>
					<products_size>42></products_size>
					<products_size_reference><![CDATA[AAAAAA]]></products_size_reference>
					<products_color><![CDATA[Blanc]]></products_color>
					<products_price_unit>60.00</products_price_unit>
					<products_price_unit_with_reduce>200.00</products_price_unit_with_reduce>
					<products_final_price>120.00</products_final_price>
				</product>
			</products>
			<errors>
				<error>
					<id>1</id>
					<description>Pas d'erreur de paramètres</description>
				</error>
			</errors>
		</order>
	</orders>
	<statut>
		<id>11</id>
		<description>Commande vérifiée</description>
	</statut>
</root>