Serviço de Integração
T-ClearSale & A-ClearSale
Versão 2.7
1
Serviço de Integração
Data
Descrição
Responsável
13/05/2008
16/10/2008
16/06/2009
Criação do Documento
Atualização do documento com a estrutura de telefones
Versionamento do documento
João Paulo Prado
João Paulo Prado
Ronaldo Sabino
23/06/2009
Erasmo Sogabe
03/09/2009
Atualização do documento com informações extras sobre os
métodos
Atualização do documento com observações adicionais nos
campos obrigatórios
Atualização do documento com observações adicionais nos
campos obrigatórios
Atualização do documento para retirar linhas em branco na tabela
ITEM e de tags que não consta na estrutura do XML.
Inclusão de endereços de homologação e produção do
web service
Atualização da estrutura do XML
14/04/2010
Revisão do Documento e inclusão de um novo campo
Elisângela Santos
22/07/2010
Alteração na Estrutura do XML
Daniele Soares
21/10/2010
Atualização de métodos e inclusão de XSD
Daniele Soares
03/11/2010
Inclusão dos Significados dos Status
Daniele Soares
19/01/2011
Daniele Soares
04/03/2011
Atualização do documento com informações extra sobre
Connections
Codificação na estrutura do XML
17/03/2011
Inclusão de Processamento de Pagamento
Daniele Soares
01/04/2011
Alteração na resposta GetPackageStatus
Renata Fortes
03/07/2009
27/07/2009
29/07/2009
13/08/2009
Thiago Ferrari
Daniele Soares
Daniele Soares
Helvio Pedreschi
Daniele Soares
Renata Fortes
2
Serviço de Integração
Sumário
1. DIAGRAMA DE SEQÜÊNCIA.................................................................................................................................... 4
2. MÉTODOS ..................................................................................................................................................................... 5
SENDORDERS ......................................................................................................................................................................... 5
GETPACKAGESTATUS ......................................................................................................................................................... 17
GETORDERSTATUS ............................................................................................................................................................. 17
GETORDERSSTATUS ........................................................................................................................................................... 18
GETANALYSTCOMMENTS................................................................................................................................................... 19
ENDEREÇOS ......................................................................................................................................................................... 21
3. APÊNDICE: XSD ........................................................................................................................................................ 22
4. APÊNDICE: TABELAS CÓDIGO E DESCRIÇÃO ............................................................................................... 26
TIPO DE TELEFONE ............................................................................................................................................................. 26
TIPO DE PESSOA................................................................................................................................................................... 26
TIPO DE SEXO ...................................................................................................................................................................... 26
TIPO DE PAGAMENTO.......................................................................................................................................................... 26
BANDEIRA CARTÃO ............................................................................................................................................................. 27
TIPO IDENTIFICAÇÃO .......................................................................................................................................................... 27
LISTA DE STATUS ................................................................................................................................................................. 27
LISTA DE STATUS (DE ENTRADA) ........................................................................................................................................ 28
LISTA DE CÓDIGOS .............................................................................................................................................................. 29
3
Serviço de Integração
2. Diagrama de Seqüência
Client
Web Service
SendOrders(EntityCode, Xml)
Xml
GetPackageStatus(EntityCode, PackageID)
Xml
GetOrderStatus(EntityCode, Xml)
Xml
O Diagrama de Sequência acima representa o processo de comunicação entre Cliente e
ClearSale.
4
Serviço de Integração
3. Métodos
SendOrders
Método para envio dos pedidos a serem analisados pelo ClearSale.
Assinatura: xml SendOrders (string entityCode, string xml )
EntityCode: Este código é criado para que sua empresa seja identificada no sistema. Caso não
tenha recebido entre em contato com a equipe de suporte ([email protected]).
O método recebe uma string com um XML no seguinte formato:
<ClearSale>
<Orders>
<Order>
<ID></ID>
<Date></Date>
<Email></Email>
<B2B_B2C></B2B_B2C>
<ShippingPrice></ShippingPrice>
<TotalItens></TotalItens>
<TotalOrder></TotalOrder>
<QtyInstallments></QtyInstallments>
<DeliveryTimeCD></DeliveryTimeCD>
<QtyItems></QtyItems>
<QtyPaymentTypes></QtyPaymentTypes>
<IP></IP>
<GiftMessage></GiftMessage>
<Obs></Obs>
<Status></Status>
<Reanalise></Reanalise>
<Origin></Origin>
<ReservationDate></ReservationDate>
<CollectionData>
<ID></ID>
<Type></Type>
<LegalDocument1></LegalDocument1>
<LegalDocument2></LegalDocument2>
<Name></Name>
<BirthDate></BirthDate>
<Email></Email>
<Genre></Genre>
<Address>
<Street></Street>
<Number></Number>
<Comp></Comp>
<County></County>
<City></City>
<State></State>
<Country></Country>
<ZipCode></ZipCode>
<Reference></Reference>
</Address>
<Phones>
<Phone>
<Type></Type>
<DDI></DDI>
5
Serviço de Integração
<DDD></DDD>
<Number></Number>
<Extension></Extension>
</Phone>
</Phones>
</CollectionData>
<ShippingData>
<ID></ID>
<Type></Type>
<LegalDocument1></LegalDocument1>
<LegalDocument2></LegalDocument2>
<Name></Name>
<BirthDate></BirthDate>
<Email></Email>
<Genre></Genre>
<Address>
<Street></Street>
<Number></Number>
<Comp></Comp>
<County></County>
<City></City>
<State></State>
<Country></Country>
<ZipCode></ZipCode>
<Reference></Reference>
</Address>
<Phones>
<Phone>
<Type></Type>
<DDI></DDI>
<DDD></DDD>
<Number></Number>
<Extension></Extension>
</Phone>
</Phones>
</ShippingData>
<Payments>
<Payment>
<Sequential></Sequential>
<Date></Date>
<Amount></Amount>
<PaymentTypeID></PaymentTypeID>
<QtyInstallments></QtyInstallments>
<Interest></Interest>
<InterestValue></InterestValue>
<CardNumber></CardNumber>
<CardBin></CardBin>
<CardType></CardType>
<CardExpirationDate></CardExpirationDate>
<Name></Name>
<LegalDocument></LegalDocument>
<Address>
<Street></Street>
<Number></Number>
<Comp></Comp>
<County></County>
<City></City>
<State></State>
<Country></Country>
<ZipCode></ZipCode>
</Address>
</Payment>
</Payments>
<Items>
<Item>
<ID></ID>
<Name></Name>
<ItemValue></ItemValue>
<Generic></Generic>
6
Serviço de Integração
<Qty></Qty>
<GiftTypeID></GiftTypeID>
<CategoryID></CategoryID>
<CategoryName></CategoryName>
</Item>
</Items>
<Passangers>
<Passanger>
<Name></Name>
<FrequentFlyerCard></FrequentFlyerCard>
<LegalDocumentType></LegalDocumentType>
<LegalDocument></LegalDocument>
<Passanger>
</Passangers>
<Connections>
<Connection>
<Company></Company>
<FlightNumber></FlightNumber>
<FlightDate></FlightDate>
<Class></Class>
<From></From>
<To></To>
<DepartureDate></DepartureDate>
<ArrivalDate></ArrivalDate>
</Connection>
</Connections>
</Order>
</Orders>
</ClearSale>
7
Serviço de Integração
Segue abaixo a mesma versão deste XML, mas desmembrado e uma tabela de
informações.
<ClearSale>
<Orders>
<Order>
<ID></ID>
<Date></Date>
<Email></Email>
<B2B_B2C></B2B_B2C>
<ShippingPrice></ShippingPrice>
<TotalItens></TotalItens>
<TotalOrder></TotalOrder>
<QtyInstallments></QtyInstallments>
<DeliveryTimeCD></DeliveryTimeCD>
<QtyItems></QtyItems>
<QtyPaymentTypes></QtyPaymentTypes>
<IP></IP>
<GiftMessage></GiftMessage>
<Obs></Obs>
<Status></Status>
<Reanalise></Reanalise>
<Origin></Origin>
<ReservationDate></ReservationDate>
Order (Pedido)
Nome
Descrição
Tipo
Tamanho
Obrigatório
ID
Código do pedido
Texto
50
S
Date
Data do pedido
Email
B2B_B2C
ShippingPrice
TotalItens
Email do pedido
Tipo do ecommerce
Valor do Frete
Valor do Itens
Texto
Texto
Decimal
Decimal
100
3
(20,4)
(20,4)
S
N
N
S
TotalOrder
QtyInstallments
DeliveryTimeCD
QtyItems
QtyPaymentTypes
IP
GiftMessage
Valor Total do Pedido
Quantidade de Parcelas
Prazo de Entrega
Quantidade de Itens
Quantidade de Pagamentos
IP do Pedido
Mensagem de Presente
Decimal
Número
Texto
Número
Número
Texto
Texto
(20,4)
(1,0)
50
(10,0)
(10,0)
(25)
8000
S
N
N
N
N
N
N
Obs
Status
Observação do Pedido
Status do Pedido (na entrada) (Lista de status (de
entrada)
Texto
Número
8000
(1,0)
Reanalise
Número
(1,0)
Origin
Marcação que indica se o pedido será reanalisado ou
não (1 caso for, 0 caso não)
Origem do Pedido
N
N (se não for
enviada a tag o
pedido entrará
como novo )
N
Texto
150
ReservationDate
Data de reserva de Voo
Data
(yyyy-mmddThh:mm:ss)
Data
(yyyy-mmddThh:mm:ss)
S
N
N(somente
empresas de
passagens
aéreas)
8
Serviço de Integração
<CollectionData>
<ID></ID>
<Type></Type>
<LegalDocument1></LegalDocument1>
<LegalDocument2></LegalDocument2>
<Name></Name>
<BirthDate></BirthDate>
<Email></Email>
<Genre></Genre>
<Address>
<Street></Street>
<Number></Number>
<Comp></Comp>
<County></County>
<City></City>
<State></State>
<Country></Country>
<ZipCode></ZipCode>
<Reference></Reference>
</Address>
<Phones>
<Phone>
<Type></Type>
<DDI></DDI>
<DDD></DDD>
<Number></Number>
<Extension></Extension>
</Phone>
</Phones>
</CollectionData>
CollectionData (Dados de Cobrança)
Nome
Descrição
Tipo
Tamanho
Obrigatório
ID
Código do cliente
Type
Pessoa Física ou Jurídica (Lista de Tipos de Pessoa)
Texto
50
S
LegalDocument1
CPF ou CNPJ
Texto
100
S
LegalDocument2
RG ou Inscrição Estadual
Texto
100
N
Name
Nome do cliente
Texto
500
S
BirthDate
Data de Nascimento
Email
Email
Texto
150
N
Genre
Sexo (Lista de Tipo de Sexo)
Texto
1
N
Address.Street
Nome do logradouro (Sem abreviações)
Texto
200
S
Address.Number
Número do Endereço
Texto
15
S
Address.Comp
Complemento do Endereço (Sem abreviações)
Texto
250
N
Address.County
Bairro do Endereço (Sem abreviações)
Texto
150
S
Address.City
Cidade do Endereço (Sem abreviações)
Texto
150
S
Address.State
Estado do Endereço (Sem abreviações)
Texto
2
S
Address.Country
Pais do Endereço (Sem abreviações)
Texto
150
N
Address.ZipCode
CEP do Endereço
Texto
10
S
Address.Reference
Referência do Endereço (Sem abreviações)
Texto
250
N
Phones.Phone.Type
Tipo de Telefone (Lista de Tipo de Telefone)
Número
1
S
Phones.Phone.DDI
DDI do Telefone
Número
3
N
Phones.Phone.DDD
DDD do Telefone
Número
2
S
Phones.Phone.Number
Número do Telefone
Número
8
S
Número
S
Data
(yyyy-mmddThh:mm:ss)
N
9
Serviço de Integração
<ShippingData>
<ID></ID>
<Type></Type>
<LegalDocument1></LegalDocument1>
<LegalDocument2></LegalDocument2>
<Name></Name>
<BirthDate></BirthDate>
<Email></Email>
<Genre></Genre>
<Address>
<Street></Street>
<Number></Number>
<Comp></Comp>
<County></County>
<City></City>
<State></State>
<Country></Country>
<ZipCode></ZipCode>
<Reference></Reference>
</Address>
<Phones>
<Phone>
<Type></Type>
<DDI></DDI>
<DDD></DDD>
<Number></Number>
<Extension></Extension>
</Phone>
</Phones>
</ShippingData>
ShippingData (Dados de Entrega)
Nome
Descrição
Tipo
Tamanho
Obrigatório
ID
Código do cliente
Texto
50
S
Type
LegalDocument1
Pessoa Física ou Jurídica (Lista de Tipos de Pessoa)
CPF ou CNPJ
Número
Texto
100
S
S
LegalDocument2
Name
BirthDate
RG ou Inscrição Estadual
Nome do cliente
Data de Nascimento
Email
Genre
Address.Street
Texto
Texto
Data
(yyyy-mmddThh:mm:ss)
100
500
N
S
N
Email
Texto
150
N
Sexo (Lista de Tipo de Sexo)
Nome do logradouro (Sem abreviações)
Texto
Texto
1
200
N
S
Address.Number
Address.Comp
Address.County
Número do Endereço
Complemento do Endereço (Sem abreviações)
Bairro do Endereço (Sem abreviações)
Texto
Texto
Texto
15
250
150
S
N
S
Address.City
Cidade do Endereço (Sem abreviações)
Texto
150
S
Address.State
Estado do Endereço (Sem abreviações)
Texto
2
S
Address.Country
Address.ZipCode
Pais do Endereço (Sem abreviações)
CEP do Endereço
Texto
Texto
150
10
N
S
Address.Reference
Referência do Endereço (Sem abreviações)
Texto
250
N
Phones.Phone.Type
Tipo de Telefone (Lista de Tipo de Telefone)
Número
1
S
Phones.Phone.DDI
Phones.Phone.DDD
DDI do Telefone
DDD do Telefone
Número
Número
3
2
N
S
Phones.Phone.Number
Número do Telefone
Número
8
S
<Payments>
10
Serviço de Integração
<Payment>
<Sequential></Sequential>
<Date></Date>
<Amount></Amount>
<PaymentTypeID></PaymentTypeID>
<QtyInstallments></QtyInstallments>
<Interest></Interest>
<InterestValue></InterestValue>
<CardNumber></CardNumber>
<CardBin></CardBin>
<CardType></CardType>
<CardExpirationDate></CardExpirationDate>
<Name></Name>
<LegalDocument></LegalDocument>
<Address>
<Street></Street>
<Number></Number>
<Comp></Comp>
<County></County>
<City></City>
<State></State>
<Country></Country>
<ZipCode></ZipCode>
</Address>
</Payment>
</Payments>
Payment (Pagamento)
Nome
Descrição
Tipo
Tamanho
Obrigatório
Sequential
Sequencia de realização do pagamento
Número
(1,0)
N
Date
Data do pagamento
Amount
Valor cobrado neste pagamento
Número
(20,4)
S
PaymentTypeID
Tipo de Pagamento (Lista de Tipos de Pagamento)
Número
(1,0)
S
QtyInstallments
Quantidade de Parcelas
Número
(2,0)
N
Interest
Taxa de Juros
Número
(4,2)
N
InterestValue
Valor dos Juros
Número
(20,4)
N
CardNumber
Número do Cartão
Texto
200
N
CardBin
Número do BIN do Cartão
Texto
6
N
CardType
Bandeira do Cartão (Lista de Bandeiras de Cartão)
CardExpirationDate
Data da Expiração
Texto
50
N
Name
Nome de Cobrança
Texto
150
N
LegalDocument
Documento da Pessoa de Cobrança
Texto
100
N
Address.Street
Nome do logradouro (Sem abreviações)
Texto
200
N
Address.Number
Número do Endereço
Texto
15
N
Address.Comp
Complemento do Endereço (Sem abreviações)
Texto
250
N
Address.County
Bairro do Endereço (Sem abreviações)
Texto
150
N
Address.City
Cidade do Endereço (Sem abreviações)
Texto
150
N
Address.State
Estado do Endereço (Sem abreviações)
Texto
2
N
Address.Country
Pais do Endereço (Sem abreviações)
Texto
150
N
Address.ZipCode
Address.Reference
CEP do Endereço
Referência do Endereço (Sem abreviações)
Texto
Texto
10
250
N
N
Data
(yyyy-mmddThh:mm:ss)
S
Número
N
11
Serviço de Integração
IMPORTANTE!
Processamento do Pagamento
Para empresas que no fluxo de venda o pedido será enviado a ClearSale antes do
Processamento definitivo do pagamento é de extrema importância enviar o status do
pagamento sendo Aprovado ou Reprovado.
A atualização do status do pagamento deve ser realizada no seguinte Web Service:
Homologação
Web Service:
http://homologacao.clearsale.com.br/integracaov2/paymentintegration.asmx
Produção
Web Service:
http://www.clearsale.com.br/integracaov2/paymentintegration.asmx
UpdateOrderStatusID
Este método atualiza o status do pedido para o status do processamento do pagamento.
Assinatura: string UpdateOrderStatusID (string entityCode, string orderID, string
statuspedido)
EntityCode: Código gerado pela ClearSale, que identifica a sua empresa em nosso sistema.
Entre em contato com nossa equipe de suporte ([email protected]) caso não tenha
recebido.
OrderID: Código do Pedido a ser marcado.
Statuspedido: Status de Pagamento que deve ser informado como Aprovado ou Reprovado.
O método retorna uma string XML com o seguinte formato:
12
Serviço de Integração
<Order>
<ID></ID>
<Status> </Status>
<Score> </Score>
</Order>
<Items>
<Item>
<ID></ID>
<Name></Name>
<ItemValue></ItemValue>
<Generic></Generic>
<Qty></Qty>
<GiftTypeID></GiftTypeID>
<CategoryID></CategoryID>
<CategoryName></CategoryName>
</Item>
</Items>
Item
Nome
Descrição
Tipo
Tamanho
Obrigatório
ID
Código do Produto
Texto
50
S
Name
Nome do Produto
Texto
50
S
ItemValue
Valor Unitário
Número
(20,4)
S
Generic
Campo Genérico
Texto
4000
N
Qty
Quantidade
Número
(1,0)
S
GiftTypeID
Presente
Número
(1,0)
N
CategoryID
Código da Categoria do Produto
Número
(1,0)
N
CategoryName
Nome da Categoria do Produto
Texto
200
N
13
Serviço de Integração
IMPORTANTE
As seções abaixo Passangers e Connections somente são utilizadas em empresas de
PASSAGENS AÉREAS, caso não necessite utilizar esse metodos, favor omitir no XML.
Na seção Connections informar somente os dados de origem e destino, não informar as
escalas e conexões.
Por exemplo:
“Para um vôo entre São Paulo (Guarulhos) para Londres, via New York (JFK), você
ira informar apenas GRU-LHR, ao invés de GRU-JFK e JFK-LHR.”
<Passangers>
<Passanger>
<Name></Name>
<FrequentFlyerCard></FrequentFlyerCard>
<LegalDocumentType></LegalDocumentType>
<LegalDocument></LegalDocument>
<Passanger>
</Passangers>
Passanger (Passageiro)
Nome
Descrição
Tipo
Tamanho
Obrigatório
Name
Nome do Passageiro
Texto
100
S
FrequentFlyerCard
Cartão de Milhagem (Fidelidade)
Texto
50
N
LegalDocumentType
Tipo de Documento de Identificação (Tipo Identificação)
Número
(1,0)
S
LegalDocument
Número do Documento
Texto
50
S
14
Serviço de Integração
<Connections>
<Connection>
<Company></Company>
<FlightNumber></FlightNumber>
<FlightDate></FlightDate>
<Class></Class>
<From></From>
<To></To>
<DepartureDate></DepartureDate>
<ArrivalDate></ArrivalDate>
</Connection>
</Connections>
</Order>
</Orders>
</ClearSale>
Connection (Dados do voo)
Nome
Descrição
Tipo
Tamanho
Obrigatório
Company
FlightNumber
FlightDate
Nome da Companhia Aérea
Número do Voo
Data do Voo
Texto
Número
Data
(yyyy-mmddThh:mm:ss)
50
(6,0)
S
S
S
Class
From
To
DepartureDate
Classe do Assento
Origem
Destino
Data de Embarque
Texto
Texto
Texto
Data
(yyyy-mmddThh:mm:ss)
10
5
5
S
S
S
S
ArrivalDate
Data de Desembarque
Data
(yyyy-mmddThh:mm:ss)
S
O método retorna um string ( resposta ) no seguinte formato:
<ClearSale>
<PackageStatus>
<TransactionID></TransactionID>
<StatusCode></StatusCode>
<Message></Message>
<Orders>
<Order>
<ID></ID>
<Status></Status>
<Score></Score>
</Order>
</Orders>
</PackageStatus>
</ClearSale>
Verificar valores do StatusCode no apêndice Lista de Códigos
15
Serviço de Integração
Observações:
1 – Cada pacote (xml) deve ser limitado em no máximo 10 pedidos.
2 – Cuidado para não confundir Reenvio e Reanalise.
Reenvio
O reenvio vai depender da letra que esteja na coluna reenviar, da tabela Lista de Códigos. Se for
(S) ele será feito baseado na tag StatusCode e no retorno do método Send Orders. Caso seja(N)
não precisa reenviar.
Reanalise
A tag reanalise , só deve ser marcada caso exista à importancia de uma nova análise . Tendo em
vista um pedido, que tenha dado entrada no ClearSale, sem erros. Este comando é geralmente
utilizado caso exista a necessidade de mandar o pedido novamente com novas alterações nas
informações, como por exemplo a troca do número de telefone ou forma de pagamento.
16
Serviço de Integração
GetPackageStatus
Este é o método para recuperar o status atual do pedido no ClearSale, isso se dá passando o ID
de um pacote de pedidos (ao invés de enviar um XML com mais de um pedido, ele te manda
uma TransactionID).
Assinatura: xml GetPackageStatus (string entityCode, string packageID)
EntityCode: Código gerado pela Clear Sale, que identifica a sua empresa em nosso sistema.
Entre em contato com nossa equipe de suporte ([email protected]), caso não tenha
recebido.
PackageID: Código do pacote a ser consultado (retornado na tag TransactionID do retorno do
método SendOrders).
O método retorna uma string XML com o seguinte formato
<PackageStatus>
<TransactionID />
<StatusCode></StatusCode>
<Message> </Message>
</PackageStatus>
GetOrderStatus
Método para recuperar o status atual dos pedidos no Clear Sale passando pedido a pedido.
Assinatura: xml GetOrderStatus (string entityCode, string orderID)
EntityCode: Código gerado pela Clear Sale, que identifica a sua empresa em nosso sistema.
Entre em contato com nossa equipe de suporte ([email protected]) caso não tenha
recebido.
OrderID: Código do Pedido a ser consultado.
O método retorna uma string XML com o seguinte formato
17
Serviço de Integração
<ClearSale>
<Orders>
<Order>
<ID></ID>
<Status></Status>
<Score></Score>
</Order>
</Orders>
</ClearSale>
GetOrdersStatus
Método para recuperar o status atual dos pedidos no Clear Sale passando uma lista de pedidos.
Assinatura: xml GetOrderStatus(string entityCode, string xml)
EntityCode: Código gerado pela Clear Sale que identifica a sua empresa em nosso sistema.
Entre em contato com nossa equipe de suporte ([email protected]) caso não tenha
recebido.
Xml: Xml no formato abaixo.
<ClearSale>
<Orders>
<Order>
<ID></ID>
<Order>
</Orders>
</ClearSale>
O método retorna uma string XML com o seguinte formato
<ClearSale>
<Orders>
<Order>
<ID></ID>
<Status></Status>
<Score></Score>
</Order>
</Orders>
</ClearSale>
18
Serviço de Integração
Retorno Ativo de Status
O ClearSale após cada tomada de decisão em nosso sistema, poderá atuar como ativo no
processo de integração.
O sistema irá submeter os valores abaixo para uma URL especificada pelo cliente.
Tipo 1 (POST com Campos):
Código do Pedido
Status
Score
Tipo 2 (POST com XML):
Formato XML
<ClearSale>
<ID></ID>
<Status></Status>
<Score></Score>
</ClearSale>
O sistema não irá checar problemas de comunicação por parte do cliente. Caso a
URL informada esteja indisponível, o sistema não irá tentar submeter às
informações novamente.
GetAnalystComments
Método que recupera os comentários dos analistas inclusos nos pedidos.
Assinatura: xml GetAnalystComments (string entityCode, string OrderID, string getAll)
EntityCode: Código gerado pela Clear Sale que identifica a sua empresa em nosso sistema.
Entre em contato com nossa equipe de suporte ([email protected]) caso não tenha
recebido.
getAll: No parâmetro getAll o valor que deve ser inserido será : True ou False.
True quando desejar retornar todos os comentários inseridos no pedido.
False quando desejar retornar apenas o último comentário inserido no pedido.
OrderID: Código do Pedido a ser consultado.
O método retorna uma string XML com o seguinte formato:
19
Serviço de Integração
<Order>
<ID></ID>
<Date d2p1:nil="true" xmlns:d2p1="http://www.w3.org/2001/XMLSchema-instance" />
<QtyInstallments d2p1:nil="true" xmlns:d2p1="http://www.w3.org/2001/XMLSchema-instance" />
<ShippingPrice d2p1:nil="true" xmlns:d2p1="http://www.w3.org/2001/XMLSchema-instance" />
<ShippingTypeID></ShippingTypeID>
<TotalItens></TotalItens>
<TotalOrder></TotalOrder>
<Status></Status>
<Reanalise></Reanalise>
<WeddingList d2p1:nil="true" xmlns:d2p1="http://www.w3.org/2001/XMLSchema-instance" />
<ReservationDate d2p1:nil="true" xmlns:d2p1="http://www.w3.org/2001/XMLSchema-instance" />
<ShippingData>
<Type d3p1:nil="true" xmlns:d3p1="http://www.w3.org/2001/XMLSchema-instance" />
<BirthDate d3p1:nil="true" xmlns:d3p1="http://www.w3.org/2001/XMLSchema-instance" />
<Phones />
<Address />
</ShippingData>
<CollectionData>
<Type d3p1:nil="true" xmlns:d3p1="http://www.w3.org/2001/XMLSchema-instance" />
<BirthDate d3p1:nil="true" xmlns:d3p1="http://www.w3.org/2001/XMLSchema-instance" />
<Phones />
<Address />
</CollectionData>
<Payments />
<Items />
<Passangers />
<Connections />
<AnalystComments>
<AnalystComments>
<CreateDate></CreateDate>
<Comments></Comments>
<UserName></UserName>
<Status></Status>
<LineName></LineName>
</AnalystComments>
</AnalystComments>
</Order>
20
Serviço de Integração
Endereços
Para enviar pedidos manualmente acesse a “URL” na Web Service informada abaixo, será
necessário informar o “EntityCode”, esse código é gerado pela ClearSale, para identificar a sua
empresa em nosso sistema.
Após o envio, também é possível acessar a “URL” da aplicação para verificar se o pedido foi
recebido com sucesso.
Caso não tenha recebido o “EntityCode” ou usuário da aplicação, entre em contato com nossa
equipe de suporte ([email protected]).
Homologação
Web Service:
http://homologacao.clearsale.com.br/integracaov2/service.asmx
Aplicação:
http://homologacao.clearsale.com.br/aplicacao/Login.aspx
Produção
Web Service:
http://www.clearsale.com.br/integracaov2/service.asmx
Aplicação:
http://www.clearsale.com.br/aplicacao/Login.aspx
21
Serviço de Integração
4. APÊNDICE: XSD
<?xml version="1.0" encoding="UTF-8"?>
<!--W3C Schema generated by XMLSpy v2008 (http://www.altova.com)-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="ClearSale">
<xs:complexType>
<xs:sequence>
<xs:element name="Orders">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Order">
<xs:complexType>
<xs:sequence>
<xs:element name="ID" type="xs:string"/>
<xs:element name="Date" type="xs:dateTime"/>
<xs:element minOccurs="1" name="Email" type="xs:string"/>
<xs:element minOccurs="0" name="B2B_B2C" type="xs:string"/>
<xs:element minOccurs="0" name="ShippingPrice" type="xs:decimal"/>
<xs:element minOccurs="1" name="TotalItens" type="xs:decimal"/>
<xs:element minOccurs="1" name="TotalOrder" type="xs:decimal"/>
<xs:element minOccurs="0" name="QtyInstallments" type="xs:decimal"/>
<xs:element minOccurs="0" name="DeliveryTimeCD" type="xs:string"/>
<xs:element minOccurs="0" name="QtyItems" type="xs:int"/>
<xs:element minOccurs="0" name="QtyPaymentTypes" type="xs:int"/>
<xs:element minOccurs="0" name="IP" type="xs:string"/>
<xs:element minOccurs="0" name="ShippingType" type="xs:string"/>
<xs:element minOccurs="0" name="GiftMessage" type="xs:string"/>
<xs:element minOccurs="0" name="Obs" type="xs:string"/>
<xs:element minOccurs="0" name="Status" type="xs:string"/>
<xs:element minOccurs="0" name="Reanalise" type="xs:byte"/>
<xs:element minOccurs="0" name="Origin" type="xs:string"/>
<xs:element minOccurs="0" name="Generic" type="xs:string"/>
<xs:element name="CollectionData">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" name="ID" type="xs:string"/>
<xs:element minOccurs="1" name="Type" type="xs:int"/>
<xs:element minOccurs="1" name="LegalDocument1" type="xs:string"/>
<xs:element minOccurs="0" name="LegalDocument2" type="xs:string"/>
<xs:element minOccurs="1" name="Name" type="xs:string"/>
<xs:element minOccurs="0" name="BirthDate" type="xs:dateTime"/>
<xs:element minOccurs="0" name="Email" type="xs:string"/>
<xs:element minOccurs="0" name="Genre" type="xs:string"/>
<xs:element minOccurs="0" name="CompanyIdentificationNumber"
type="xs:string"/>
<xs:element minOccurs="0" name="CompanyName" type="xs:string"/>
<xs:element minOccurs="0" name="StateRegistrationNumber"
type="xs:string"/>
<xs:element name="Address" minOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Street" type="xs:string"/>
<xs:element minOccurs="1" name="Number" type="xs:string"/>
<xs:element minOccurs="0" name="Comp" type="xs:string"/>
<xs:element minOccurs="1" name="County" type="xs:string"/>
<xs:element minOccurs="1" name="City" type="xs:string"/>
<xs:element minOccurs="1" name="State" type="xs:string"/>
<xs:element minOccurs="0" name="Country" type="xs:string"/>
<xs:element minOccurs="1" name="ZipCode" type="xs:string"/>
22
Serviço de Integração
<xs:element minOccurs="0" name="Reference" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="1" name="Phones">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="Phone">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" name="Type" type="xs:string"/>
<xs:element minOccurs="0" name="DDI" type="xs:string"/>
<xs:element minOccurs="1" name="DDD" type="xs:string"/>
<xs:element name="Number" type="xs:string"/>
<xs:element minOccurs="0" name="Extension" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ShippingData">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" name="ID" type="xs:string"/>
<xs:element minOccurs="1" name="Type" type="xs:byte"/>
<xs:element minOccurs="1" name="LegalDocument1" type="xs:string"/>
<xs:element minOccurs="0" name="LegalDocument2" type="xs:string"/>
<xs:element minOccurs="1" name="Name" type="xs:string"/>
<xs:element minOccurs="0" name="BirthDate" type="xs:dateTime"/>
<xs:element minOccurs="0" name="Email" type="xs:string"/>
<xs:element minOccurs="0" name="Genre" type="xs:string"/>
<xs:element name="Address" minOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Street" type="xs:string"/>
<xs:element minOccurs="1" name="Number" type="xs:string"/>
<xs:element minOccurs="0" name="Comp" type="xs:string"/>
<xs:element minOccurs="1" name="County" type="xs:string"/>
<xs:element minOccurs="1" name="City" type="xs:string"/>
<xs:element minOccurs="1" name="State" type="xs:string"/>
<xs:element minOccurs="0" name="Country" type="xs:string"/>
<xs:element minOccurs="1" name="ZipCode" type="xs:string"/>
<xs:element minOccurs="0" name="Reference" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="1" name="Phones">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="Phone">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" name="Type" type="xs:string"/>
<xs:element minOccurs="0" name="DDI" type="xs:string"/>
<xs:element minOccurs="1" name="DDD" type="xs:string"/>
<xs:element name="Number" type="xs:string"/>
<xs:element minOccurs="0" name="Extension" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
23
Serviço de Integração
</xs:complexType>
</xs:element>
<xs:element name="Payments">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="1" name="Payment">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="Sequential" type="xs:byte"/>
<xs:element minOccurs="1" name="Date" type="xs:dateTime"/>
<xs:element minOccurs="1" name="Amount" type="xs:decimal"/>
<xs:element minOccurs="1" name="PaymentTypeID" type="xs:string"/>
<xs:element minOccurs="0" name="QtyInstallments" type="xs:int"/>
<xs:element minOccurs="0" name="Interest" type="xs:decimal"/>
<xs:element minOccurs="0" name="InterestValue" type="xs:decimal"/>
<xs:element minOccurs="0" name="SplipAditionalValue"
type="xs:decimal"/>
<xs:element
<xs:element
<xs:element
<xs:element
<xs:element
minOccurs="0"
minOccurs="0"
minOccurs="0"
minOccurs="0"
minOccurs="0"
name="SlipDate" type="xs:dateTime"/>
name="CardNumber" type="xs:string"/>
name="CardBin" type="xs:string"/>
name="CardType" type="xs:byte"/>
name="CardExpirationDate"
type="xs:string"/>
<xs:element minOccurs="0" name="Name" type="xs:string"/>
<xs:element minOccurs="0" name="LegalDocument" type="xs:string"/>
<xs:element minOccurs="0" name="Address">
<xs:complexType>
<xs:sequence>
<xs:element name="Street" type="xs:string"/>
<xs:element minOccurs="0" name="Number" type="xs:string"/>
<xs:element minOccurs="0" name="Comp" type="xs:string"/>
<xs:element minOccurs="0" name="County" type="xs:string"/>
<xs:element minOccurs="0" name="City" type="xs:string"/>
<xs:element minOccurs="0" name="State" type="xs:string"/>
<xs:element minOccurs="0" name="Country" type="xs:string"/>
<xs:element minOccurs="0" name="ZipCode" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Items" minOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="1" name="Item">
<xs:complexType>
<xs:sequence>
<xs:element name="ID" type="xs:string"/>
<xs:element name="Name" type="xs:string"/>
<xs:element minOccurs="1" name="ItemValue" type="xs:decimal"/>
<xs:element minOccurs="0" name="Generic" type="xs:string"/>
<xs:element minOccurs="1" name="Qty" type="xs:integer"/>
<xs:element minOccurs="0" name="SupplierDeliveryTime"
type="xs:string"/>
<xs:element minOccurs="0" name="GiftTypeID" type="xs:int"/>
<xs:element minOccurs="0" name="CategoryID" type="xs:int"/>
<xs:element minOccurs="0" name="CategoryName" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="Passangers">
24
Serviço de Integração
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="Passanger">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" type="xs:string" minOccurs="0"/>
<xs:element name="FrequentFlyerCard" type="xs:string"
minOccurs="0"/>
<xs:element name="LegalDocumentType" type="xs:byte" minOccurs="0"/>
<xs:element name="LegalDocument" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="Connections">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded"
name="Connection">
<xs:complexType>
<xs:sequence>
<xs:element name="Company" type="xs:string" minOccurs="0"/>
<xs:element name="FlightNumber" type="xs:int" minOccurs="0"/>
<xs:element name="FlightDate" type="xs:dateTime" minOccurs="0"/>
<xs:element name="Class" type="xs:string" minOccurs="0"/>
<xs:element name="From" type="xs:string" minOccurs="0"/>
<xs:element name="To" type="xs:string" minOccurs="0"/>
<xs:element name="DepartureDate" type="xs:dateTime" minOccurs="0"/>
<xs:element name="ArrivalDate" type="xs:dateTime" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
25
Serviço de Integração
5. APÊNDICE: Tabelas código e descrição
Tipo de Telefone
Código
0
1
2
3
4
5
6
Descrição
Não definido
Residencial
Comercial
Recados
Cobrança
Temporário
Celular
Tipo de Pessoa
Código
1
2
Descrição
Pessoa Física
Pessoa Jurídica
Código
M
F
Masculino
Feminino
Tipo de Sexo
Descrição
Tipo de Pagamento
Código
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Descrição
Cartão de Crédito
Boleto Bancário
Débito Bancário
Débito Bancário – Dinheiro
Débito Bancário – Cheque
Transferência Bancária
Sedex a Cobrar
Cheque
Dinheiro
Financiamento
Fatura
Cupom
Multicheque
Outros
26
Serviço de Integração
Bandeira Cartão
Código
Descrição
1
Diners
2
MasterCard
3
Visa
4
Outros
5
American Express
6
HiperCard
7
Aura
Tipo Identificação
Código
Descrição
1
CPF
2
CNPJ
3
RG
4
IE
5
Passaporte
6
CTPS
7
Titulo Eleitor
27
Serviço de Integração
Lista de Status
Código
Descrição
APA
AMA
(Aprovação Automática) – Pedido foi aprovado automaticamente segundo
parâmetros.
(Aprovação Manual) – Pedido aprovado manualmente por tomada de decisão
de um analista.
(Reprovado Sem Suspeita) – Pedido Reprovado sem Suspeita por falta de
contato com o cliente dentro do período acordado e/ou políticas restritivas de
CPF (Irregular, SUS ou Cancelados).
(Análise manual) – Pedido está em fila para análise
ERR
Erro
NVO
(Novo) – Pedido importado e não classificado Score pela analisadora
(processo que roda o Score de cada pedido).
(Suspensão Manual) – Pedido Suspenso por suspeita de fraude baseado no
contato com o “cliente” ou ainda na base ClearSale.
(Cancelado pelo Cliente) – Cancelado por solicitação do cliente ou
duplicidade do pedido.
(Fraude Confirmada) – Pedido imputado como Fraude Confirmada por
contato com a administradora de cartão e/ou contato com titular do cartão
ou CPF do cadastro que desconhecem a compra.
(Reprovação Automática) – Pedido Reprovado Automaticamente por algum
tipo de Regra de Negócio que necessite aplicá-la (Obs: não usual e não
recomendado).
APM
RPM
SUS
CAN
FRD
RPA
Lista de Status (de entrada)
Status
0
9
41
45
Descrição
Novo (será analisado pelo ClearSale)
Aprovado (irá ao ClearSale já
aprovado e não será analisado)
Cancelado pelo cliente (irá ao
ClearSale já cancelado e não será
analisado)
Reprovado (irá ao ClearSale já
reprovado e não será analisado)
28
Serviço de Integração
Lista de Códigos
Código
00
01
02
03
04
05
06
07
Descrição
Transação Concluída
Usuário Inexistente
Erro na validação do XML
Erro ao transformar XML
Erro Inesperado
Pedido já enviado ou não está em
reanalise
Erro no Plugin de Entrada
Erro no Plugin de Saída
Reenviar
N
N
S
S
S
S
S
N
29
Download

Integração T