Logo Hardware.com.br
charlesrezende
charlesrezen... Membro Senior Registrado
432 Mensagens 1 Curtida

Configuração de postback entre Hotmart e Tracker

#1 Por charlesrezen... 19/06/2020 - 17:23
Olá amigos,

Estou precisando configurar uma URL de API para fazer uma comunicação de postback entre uma plataforma de infoprodutos (Hotmart) e um sistema de tracker externo. O tracker fornece uma URL de postback e eles precisam que mande de volta o arquivo preenchido com os parâmetros quando a compra do produto for realizada.

O site que irá enviar o postback, no caso da Hotmart, só permite que coloquemos os parâmetros dentro de um arquivo html ou php e NÃO NA URL DIRETO.

Ou seja, a Hotmart não envia os parâmetros se eu inserir a URL na forma abaixo:
URL DO TRACKER: https://domaintracker.com/postback?cid={xcod}&txid={transaction}&payout={cms_vendor}&status={status}

Portanto, eu preciso "embutir" a URL do tracker dentro de uma URL do meu domínio e enviar os parâmetros abaixo da Hotmart para o tracker:

cid=xcod
txid
=transaction
payout
=cms_vendor
status
=status

Onde:
=> cid | txid | payout | status são os parâmetros do TRACKER.
=> xcod | transaction | cms_vendor | status são os parâmetros da HOTMART.

Seria algo assim:
Domínio que será cadastrado na Hotmart: https://meudominio.com/api-hotmart/
Este domínio acima enviará os dados dos parâmetros para: https://domaintracker.com/postback?cid={xcod}&txid={transaction}&payout={cms_vendor}&status={status}

Eu peguei uma URL de exemplo que faz isso e funciona perfeito:
http://machine.leadlovers.com/payment/hotmart

E na documentação da Hotmart, eles falam isso aqui:
Eventos de pedido
Formato de envio dos dados: QUERYSTRING

xcod: Código customizado pelo usuário. Pode ser definido no link de venda para ser recebido de volta | Formato: Números e letras de até 255 caracteres
transaction: Código da transação | Formato: Números e letras de até 255 caracteres
cms_vendor: Comissão do produtor gerada nesta transação | Formato: Número decimal de 0.01 até 9999999999999999999.99
status: Status da compra | Possíveis valores: approved, canceled, billet_printed, refunded, dispute, completed, blocked, chargeback, delayed, expired, wayting_payment

Eu preciso criar um arquivo ".html/.php" (não sei qual o correto) e que tenha uma codificação para fazer essa combinação de parâmetros acima para fazer a comunicação entre a HOTMART e o TRACKER assim que a venda for realizada.

Valeu pessoal!
LeandroCGMS
LeandroCGMS Super Participante Registrado
376 Mensagens 28 Curtidas
#2 Por LeandroCGMS
23/06/2020 - 20:54
Desculpe, o seu objetivo em não colocar ponto de interrogação me deixou confuso, mas se é um domínio com servidor PHP, só pode ser .php. Quer saber isto? O servidor aceita o verbo POST para isto?
"A ignorância é a escuridão que nos impede de ver além, enquanto o conhecimento é a luz que nos guia para um futuro melhor." - Autor desconhecido.
charlesrezende
charlesrezen... Membro Senior Registrado
432 Mensagens 1 Curtida
#3 Por charlesrezen...
23/06/2020 - 21:04
LeandroCGMS disse:


Então, sobre a URL sem a "?" é o seguinte:
A URL de postback possui vários parâmetros do tracker que precisam receber da Hotmart as informações da venda do produto.
Ex.: https://domaintracker.com/postback?cid={xcod}&txid={transaction}&payout={cms_vendor}&status={status}

No caso, o "cid" é o parâmetro do tracker e o "{xcod}" é o parâmetro da Hotmart que irá retornar o valor a ele (cid).

Eu cadastrei essa URL acima na Hotmart e fiz vários testes, porém a Hotmart não manda para o tracker os valores. Isso ocorre porque a Hotmart não aceita enviar os parâmetros, como o "{xcod}" por exemplo, via URL direto igual está no exemplo acima, entende?

Daí, eu mencionei essa outra URL de exemplo (http://machine.leadlovers.com/payment/hotmart) que funciona corretamente, pois parece que tem uma API integrada a ela para fazer essa conversão. Devido a isso, não precisa colocar os valores após a "?" na URL, pois a própria API que faz isso internamente.

Por isso que coloquei que a URL que eu precisarei colocar deve ser nesse estilo sem a "?", pois a combinação de parâmetros será feita via API dentro dessa URL (https://meudominio.com/api-hotmart/).

Bom, não sei se a explicação é a correta, mas é isso que entendi que deve ser feito após um programador me dizer o seguinte:

*******************************************************
"Será necessário criar uma API para vc receber os dados da Hotmart no seu tracker. Essa API irá repassar os dados para o seu tracker.
Só pra vc entender, uma API recebe requisições de serviço através de chamadas por URL, onde obtém os parâmetros de algumas formas diferentes.
No caso, pelo que verifiquei, a Hotmart envia os parâmetros de uma forma e a API do seu tracker recebe de outra forma, daí vc precisa enviar os dados via API"
*******************************************************

Tive uma ideia aqui que talvez possamos avançar nisso. Alguém sabe pegar o código html dessa página?
http://machine.leadlovers.com/payment/hotmart

Eu tentei aqui dando "CTRL + U", mas fica tudo em branco.
Note ASUS - S400CA-BRA-CA215H com Intel Core i5 3317-U 1,7GHz 12GB RAM LED 14 W8
SSD SANDISK 240GB
WINDOWS 10 HOME
charlesrezende
charlesrezen... Membro Senior Registrado
432 Mensagens 1 Curtida
#5 Por charlesrezen...
25/06/2020 - 19:47
LeandroCGMS disse:


Entendi. Realmente não sei lhe responder isso. Eu já sei que precisa criar uma API para a comunicação entre as 2 plataformas. Essa API pegará os parâmetros gerados pela Hotmart e enviará para a URL do Tracker e deverá ser "guardada" dentro de uma URL (Ex.:https://meudominio.com/api-hotmart/).
Note ASUS - S400CA-BRA-CA215H com Intel Core i5 3317-U 1,7GHz 12GB RAM LED 14 W8
SSD SANDISK 240GB
WINDOWS 10 HOME
© 1999-2025 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal