loading-img

Bem vindo a Integração por WebServices

Antes de começarmos, é importante você já ter sua conta criada em nosso sistema, ao criar sua conta, você recebe de brinde, 15 SMS para testar gratuitamente. Crie agora sua conta.

A Integração por WebServices da Facilita SMS, oferece aos desenvolvedores uma forma simples e fácil de integrar qualquer sistema com a nossa plataforma, possibilitando que qualquer sistema possa enviar SMS Marketings e SMS Corporativo.

Esse modelo de integração é recomendado para empresas ou negócios com necessidades específicas, que exijam desenvolvimento personalizado e controle sobre o código de integração. Ou seja, se você precisa disparar SMS através de sua própria plataforma, esse material irá fornecer todas as informações que você necessita.



Vantagens

Integração entre aplicações construídas em diferentes tecnologias;

Criada baseada nos padrões de mercados, sendo facilmente implementada por qualquer desenvolvedor.

De fácil manutenção, pois é um padrão aberto.



Para que haja compatibilidade com todos aparelhos e dispositivos móveis, as operadoras de telefonia celular não permitem o envio de SMS Corporativo utilizando acentuação.
Veja na imagem abaixo, um caso de incompatibilidade de um SMS que foi enviado usando acentuação.




O imite de caracteres é 160, podendo ter sua campanha cortada ou modificada se você fizer uma requisição enviando caracteres acima do permitido.



Endereço do nosso WSDL


				http://api.facilitamovel.com.br/SendMessage?wsdl
				
				

O que é Flash SMS?

O Flash SMS é um produto da Facilita Móvel muito utilizado por operadoras de telefonia, para informar coisas importantes como saldo e algumas promoções. Com o Flash SMS a pessoa não precisa ir até a caixa de SMS para ler o conteúdo do SMS, ele pisca na tela do usuário como se fosse uma mensagem vinda de uma operadora.
Observe a imagem abaixo:



Seja cauteloso

Diferente do SMS convencional, o Flash SMS é exibido de diferentes formas no celular do destinatário, cada modelo de celular exibe da forma como foi projetado. Não compete a Facilita decidir como será exibido na tela do usuário. Alguns celulares possuem o botão aceitar, outros Salvar, é opção do fabricante do celular decidir.
O Flash SMS por padrão não fica salvo no aparelho do destinatário, alguns modelos possuem o botão "salvar", que envia para caixa de SMS Convencional, mas não necessariamente todos terão este botão, ou salvarão seus SMS.
Teste bem antes de fazer uma campanha envolvendo Flash SMS, você é o único responsável por seus envios. (leia mais em nosso blog)

Diferentes tipos de envio

Para uma integração eficiente com os nossos clientes, disponibilizamos diferentes tipos de envio. O WebServices da Facilita está em constante evolução, portanto novos tipos poderão ser acrescentados, dependendo do interesse mútuo das empresas.

Envio Simples

O envio simples é o envio mais comum e mais utilizado de nossa plataforma, ele consiste em enviar uma única mensagem para um único destinatário.

Função: sendSimpleMessage

URL desta função:


						http://www.facilitamovel.com.br/SendMessage
					
					


Parâmetros usados nesta requisição

Nome do Parâmetro Obrigatoriedade Descrição
user Obrigatório Usuário de Login na plataforma Facilita
password Obrigatório Senha de Login na plataforma Facilita
destinatario Obrigatório Destinatário que receberá a mensagem (sempre considerando o DDD)
message Obrigatório Mensagem a ser enviada, sempre considerando a Codificação de URL Encode
externalkey Opcional Qualquer chave fornecida pelo cliente: para pós utilização para consulta de status pela chave fornecida pelo próprio cliente. Uma primary key da sua tabela, por exemplo.
flashsms Opcional Envie 1 quando quiser enviar flashsms

Leia em nosso blog sobre o FlashSMS.

Exemplo do XML da requisição:

					
					<?xml version="1.0" encoding="utf-8"?> 
					<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
						<soap:Body> 
							<sendSimpleMessage  xmlns="http://ws.action.fadmin.com.br/"> 
								<user xmlns="">xptouser</user> 
								<password xmlns="">xxpadw</password> 
								<externalkey xmlns="">2345</externalkey> 
								<message xmlns="">Mensagem teste</message> 
								<phone xmlns="">5199950448</phone> 
							</sendSimpleMessage> 
						</soap:Body> 
					</soap:Envelope>
					
					


Códigos de retorno da integração

Código Descrição do código
551 Usuário ou Senha enviados na URL estão inválidos, ou a conta pode estar inativa/cancelada.
2 Usuário não possúi créditos na plataforma
3 Número de Celular enviado por parâmetro, está inválido
4 O parâmetro message (mensagem) enviado está vazio, ou possui características de uma mensagem inválida
5 Mensagem aceita pela plataforma e jogada para a fila de envio. Verifique que no caso a mensagem for aceita pela plataforma, também será devolvido no XML um SMS ID. Trata-se do ID do SMS dentro da plataforma Facilita, e deve ser usado para consultas de status.

SMS_ID é um Id único que a plataforma devolve para o usuário. A função de se ter um Id único devolvido na requisição, é para o armazenamento no sistema do usuário para posteriormente consultar o status da Mensagem (Ver “Consultar Status da Mensagem”)


Exemplo de um XML de retorno caso a mensagem seja aceita pela Facilita:

					
					<?xml version="1.0" encoding="UTF-8"?> 
					<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> 
						<S:Body> 
							<ns2:sendMultipleMessageResponse xmlns:ns2="http://ws.action.fadmin.com.br/"> 
								<return> 
									<code>7</code> 
									<externalKey>124</externalKey> 
									<msg>Accepted Message</msg> 
									<smsId>228009965</smsId> 
								</return> 
							</ns2:sendMultipleMessageResponse> 
						</S:Body> 
					</S:Envelope>
					
					


Envio Múltiplo

Envio destinado para enviar a vários SMS para vários números diferentes.

Função: sendMultipleMessage

URL desta função:


						http://api.facilitamovel.com.br/SendMessage
					
					


Parâmetros usados nesta requisição

Nome do Parâmetro Obrigatoriedade Descrição
user Obrigatório Usuário de Login na plataforma Facilita
password Obrigatório Senha de Login na plataforma Facilita
Lista Contendo: phone Obrigatório Destinatário que receberá a mensagem (sempre considerando o DDD)
Lista Contendo: message Obrigatório Mensagem a ser enviada, sempre considerando a Codificação de URL Encode
Lista Contendo: externalkey Opcional Qualquer chave fornecida pelo cliente: para pós utilização para consulta de status pela chave fornecida pelo próprio cliente. Uma primary key da sua tabela, por exemplo.
flashsms Opcional Envie 1 quando quiser enviar flashsms

Leia em nosso blog sobre o FlashSMS.

Atenção: Na tabela acima temos a observação "lista contendo", pois como você poderá enviar vários SMS para vários números na mesma requisição, os parâmetros phone, message e externalkey serão enviados em forma de lista, como no XML abaixo.

Exemplo do XML da requisição:

					
					<?xml version="1.0" encoding="utf-8"?> 
						<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
							<soap:Body> 
								<sendMultipleMessage xmlns="http://ws.action.fadmin.com.br/"> 
									<user xmlns="">xxptouser</user> 
									<password xmlns="">xptopwd</password> 
									<multiples xmlns=""> 
										<externalKey>123</externalKey> 
										<message>teste 1</message> 
										<phone>51999650441</phone> 
										<externalKey>124</externalKey>
										<message>teste 2</message> 
										<phone>51999450889</phone> 
									</multiples> 
									<multiples xmlns=""> 
										<externalKey>124</externalKey>
										<message>teste 2</message> 
										<phone>51999450889</phone> 
									</multiples> 
								</sendMultipleMessage> 
							</soap:Body> 
						</soap:Envelope>
					
					


Códigos de retorno da integração

Código Descrição do código
551 Usuário ou Senha enviados na URL estão inválidos, ou a conta pode estar inativa/cancelada.
2 Usuário não possúi créditos na plataforma
3 A Lista contendo os parâmetros de mensagem e telefone está nula
4 A Lista contendo os parâmetros de mensagem e telefone está vazia
5 Celular inválido
6 Campo mensagem está vazio
7 Mensagem aceita pela plataforma e jogada para a fila de envio. Verifique que no caso a mensagem for aceita pela plataforma, também será devolvido no XML um SMS ID. Trata-se do ID do SMS dentro da plataforma Facilita, e deve ser usado para consultas de status.

SMS_ID é um Id único que a plataforma devolve para o usuário. A função de se ter um Id único devolvido na requisição, é para o armazenamento no sistema do usuário para posteriormente consultar o status da Mensagem (Ver “Consultar Status da Mensagem”)


Exemplo de um XML de retorno caso a mensagem seja aceita pela Facilita:

					
					<S:Envelope> 
						<S:Body> 
							<ns2:sendSimpleMessageResponse> 
								<return> 
								<code>5</code> 
								<msg>Accepted Message</msg> 
								<smsId>227969381</smsId> 
								</return> 
							</ns2:sendSimpleMessageResponse> 
						</S:Body> 
					</S:Envelope>
					
					


Envio Multiplo com Agendamento e FlashSMS

Envio destinado para enviar a vários SMS para vários números diferentes, com a opção agora adicionada de poder fazer agendamentos e enviar FlashSMS.

Função: sendMultipleMessageScheduled

URL desta função:


						http://api.facilitamovel.com.br/SendMessage
					
					


Parâmetros usados nesta requisição

Nome do Parâmetro Obrigatoriedade Descrição
user Obrigatório Usuário de Login na plataforma Facilita
password Obrigatório Senha de Login na plataforma Facilita
Lista Contendo: phone Obrigatório Destinatário que receberá a mensagem (sempre considerando o DDD)
Lista Contendo: message Obrigatório Mensagem a ser enviada, sempre considerando a Codificação de URL Encode
Lista Contendo: externalkey Opcional Qualquer chave fornecida pelo cliente: para pós utilização para consulta de status pela chave fornecida pelo próprio cliente. Uma primary key da sua tabela, por exemplo.
day Opcional Agenda a Mensagem para determinado dia
month Opcional Agenda a Mensagem para determinado mês
year Opcional Agenda a Mensagem para determinado ano
formHour Opcional Agenda a Mensagem para determinada hora
formMinute Opcional Agenda a Mensagem para determinado minuto
flashsms Opcional Envie 1 quando quiser enviar flashsms

Atenção: Na tabela acima temos a observação "lista contendo", pois como você poderá enviar vários SMS para vários números na mesma requisição, os parâmetros phone, message e externalkey serão enviados em forma de lista, como no XML abaixo.

Atenção 2: Os parâmetros day, month, year, formHour e formMinute são opcionais, você não precisa passar todos estes parâmetros para agendar uma mensagem, caso você queira um dia específico deste mês, passe apenas o day, que os outros parâmetros ele vai entender que são do mês, ano, hora e minuto atual.

Exemplo do XML da requisição:

					
						<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
							<soap:Body> 
								<sendMultipleMessageScheduled xmlns="http://ws.action.fadmin.com.br/"> 
									<user xmlns="">userxpto</user> 
									<password xmlns="">senhaxpto</password> 
									<day xmlns="">23</day> 
									<month xmlns="">05</month> 
									<year xmlns="">2020</year> 
									<formHour xmlns="">10</formHour> 
									<formMinute xmlns="">12</formMinute> 
									<flashsms xmlns="">1</flashsms> 
									<multiples xmlns=""> 
									<externalKey>123</externalKey> 
									<message>teste menagem</message> 
									<phone>51999460559</phone> 
									</multiples> 
								</sendMultipleMessageScheduled> 
							</soap:Body> 
						</soap:Envelope>
					
					


Códigos de retorno da integração

Código Descrição do código
551 Usuário ou Senha enviados na URL estão inválidos, ou a conta pode estar inativa/cancelada.
2 Usuário não possúi créditos na plataforma
3 A Lista contendo os parâmetros de mensagem e telefone está nula
4 A Lista contendo os parâmetros de mensagem e telefone está vazia
5 Celular inválido
6 Campo mensagem está vazio
7 Mensagem aceita pela plataforma e jogada para a fila de envio. Verifique que no caso a mensagem for aceita pela plataforma, também será devolvido no XML um SMS ID. Trata-se do ID do SMS dentro da plataforma Facilita, e deve ser usado para consultas de status.

SMS_ID é um Id único que a plataforma devolve para o usuário. Guarde este ID único que devolvemos para para posteriormente consultar o status da Mensagem (Ver “Consultar Status da Mensagem”)


Exemplo de um XML de retorno caso a mensagem seja aceita pela Facilita:

					
						<?xml version="1.0" encoding="UTF-8"?> 
						<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
							<S:Body> 
								<ns2:sendMultipleMessageScheduledResponse xmlns:ns2="http://ws.action.fadmin.com.br/"> 
									<return> 
									<code>7</code> 
									<externalKey>123</externalKey> 
									<msg>Accepted Message</msg> 
									<smsId>228051254</smsId> 
									</return> 
								</ns2:sendMultipleMessageScheduledResponse> 
							</S:Body> 
						</S:Envelope>
					
					


Consultar Status da Mensagem

Quando um SMS é enviado, o sistema retorna o SMSID, que é nossa chave primária em nossa tabela de SMS, esse SMSID poderá ser usado neste método para obter o status do SMS.

Função: dlrStatus

URL desta função:


						http://api.facilitamovel.com.br/SendMessage
					
					


Parâmetros usados nesta requisição

Nome do Parâmetro Obrigatoriedade Descrição
user Obrigatório Usuário de Login na plataforma Facilita
password Obrigatório Senha de Login na plataforma Facilita
smsId Obrigatório ID do SMS da Facilita fornecido no envio da mensagem.

Exemplo do XML da requisição:

					
						<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
							<soap:Body> 
								<dlrStatus xmlns="http://ws.action.fadmin.com.br/"> 
									<user xmlns="">userxpto</user> 
									<password xmlns="">userxpto</password> 
									<smsId xmlns="">228051254</smsId> 
									</dlrStatus> 
								</soap:Body> 
							</soap:Envelope>
					
					


Códigos de retorno da integração

Código Descrição do código
551 Usuário ou Senha enviados na URL estão inválidos, ou a conta pode estar inativa/cancelada.
550 SMSId fornecido é inválido, você deve informar um SMSID numérico apenas.
0 Status informado não existe.
1 Mensagem na fila para envio
2 Mensagem agendada
3 Mensagem sendo enviada
4 Mensagem entregue com sucesso na operadora
5 A mensagem não foi enviada por algum erro, celular inválido ou número inexistente.

Exemplo de um XML de retorno de uma mensagem com o status agendada, status com código 2:

					
						<?xml version="1.0" encoding="UTF-8"?> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> 
							<S:Body> 
								<ns2:dlrStatusResponse xmlns:ns2="http://ws.action.fadmin.com.br/"> 
									<return> 
										<code>2</code> 
										<msg> 
										</msg> 
									</return> 
								</ns2:dlrStatusResponse> 
							</S:Body> 
						</S:Envelope>
					
					


Consultar Mensagens Respondidas

Quando um celular responde para algum SMS que você enviou, essas respostas ficam todas em nossa plataforma, você poderá ler elas entrando em nosso painel, ou consultando via integração.

Função: readMO

URL desta função:


						http://api.facilitamovel.com.br/ReceiveMessage?wsdl
					
					


Parâmetros usados nesta requisição

Nome do Parâmetro Obrigatoriedade Descrição
user Obrigatório Usuário de Login na plataforma Facilita
password Obrigatório Senha de Login na plataforma Facilita

Exemplo do XML da requisição:

					
							<?xml version="1.0" encoding="utf-8"?> 
								<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
									<soap:Body> 
										<readMO xmlns="http://ws.action.fadmin.com.br/"> 
											<user xmlns="">usuarioxpto</user> 
											<password xmlns="">usuarioxpto</password> 
										</readMO> 
									</soap:Body> 
								</soap:Envelope>
					
					


Atenção para a leitura das mensagens

Perceba que o XML é um simples XML passando usuário e senha, e o sistema vai pesquisar todas respostas, que estejam com o flagh lida setado para 0, ou seja, não estão lidas ainda. E na sua próxima requisição, essas mensagens não vão aparecer no corpo do XML de resposta, pois já foram lidas.



Códigos de retorno da integração

Código Descrição do código
1 Usuário ou Senha enviados na URL estão inválidos, ou a conta pode estar inativa/cancelada.
2 Existem MOs para serem Lidos (capturar de acordo com o XML de Resposta)
3 Não existem MOs não Lidos

Exemplo de um XML de retorno de uma requsição com duas respostas marcadas como não lidas

					
							<?xml version="1.0" encoding="UTF-8"?> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> 
								<S:Body> 
									<ns2:readMOResponse xmlns:ns2="http://ws.action.fadmin.com.br/"> 
										<return> 
										<code>2</code> 
										<mos> 
											<dataHora>2017-12-19T08:37:28-02:00</dataHora> 
											<mensagem>Obrigado e bom dia!</mensagem> 
											<smsId>157467149</smsId> 
											<telefone>5198335238</telefone> 
										</mos> 
										<mos> 
											<dataHora>2017-12-18T17:32:03-02:00</dataHora> 
											<mensagem>Obrigado pela lembrana!</mensagem> 
											<smsId>157434258</smsId> 
											<telefone>51982353528</telefone> 
										</mos> 
										<msg>Existem MOs</msg> 
										</return> 
									</ns2:readMOResponse> 
								</S:Body> 
							</S:Envelope>
					
					


Para fins de desenvolvimento, marque suas respostas como não lida:

Quando o WebService de Leitura de mensagens for acionado, automaticamente as mensagens que retornarem para a requisição serão marcadas como lida = 1 (que indica que você já as leu) com paginação de 50 em 50 mensagens. (A requisição apenas retorna 50 mensagens por vez). Para você continuar consultando se existem mensagens não lida, faça várias requisições.
Para testes, você pode entrar no painel da Facilita Móvel ir em Listar
Mensagens/Recebidas e marcar todas como Não Lida.