INFORMAÇÃO
INFORMAMOS QUE ESTÁ DISPONÍVEL NOVA DOCUMENTAÇÃO DA API, ESTA ATUALIZAÇÃO PROPORCIONA UMA FORMA AINDA MAIS SIMPLIFICADA E EFICIENTE DE INTEGRAR OS NOSSOS SERVIÇOS.
CONSULTAR NOVA DOCUMENTAÇÃO
A ifthenpay integra com inúmeras plataformas de e-commerce, softwares de faturação e outros.
Antes de desenvolver, verifique se já existe integração com a plataforma que utiliza, desenvolvida pela ifthenpay, pelo fabricante da plataforma ou por terceiros.
Ver tópicos relacionados:
Se necessitar de desenvolver a integração de raiz, de seguida a descrição da nossa API para integração dos pagamentos por cartão de crédito/débito na sua plataforma.
ENDEREÇO PARA INICIALIZAR PAGAMENTOS POR CARTÃO DE CRÉDITO
https://ifthenpay.com/api/creditcard/init/[CCARD_KEY]
Substituir a [CCARD_KEY] pela enviada pela Ifthenpay.
* Caso pretenda efetuar testes na nossa Sandbox solicite-nos uma CCARD_KEY.
Método POST
Formato do pedido em Json (Body)
{
"orderId": "order_45678",
"amount": "11.55",
"successUrl": "https://youraddress.com/sucess.php",
"errorUrl": "https://youraddress.com/error.php",
"cancelUrl": "https://youraddress.com/cancel.php",
"language" : "pt"
}
orderId: (obrigatório) Máximo 15 caracteres alfanuméricos.
amount: (obrigatório) Separador decimal "." (ex: "11.55")
successUrl: (obrigatório) Funciona como confirmação do pagamento. Redirecionar o cliente para a página de sucesso. O pagamento está confirmado.
errorUrl: (obrigatório) Redirecionar o cliente caso exista algum erro que impossibilite a transação. Não houve pagamento.
cancelUrl: (obrigatório) Redirecionar o cliente caso a transação seja cancelada na página de introdução dos dados.
language: (opcional) Idioma apresentado ao cliente no momento da introdução dos dados do cartão. Default "en".
Formato da Resposta
Todos os pedidos terão o seguinte formato:
{
"Message": "Success",
"PaymentUrl": "https://webkit.lemonway.fr/mb/ifthenpay/prod/?moneyintoken=2505319216xvju0GqcbrgEftsACpognW2aa",
"RequestId": "36jvlEhUYeknQ8PHKprR",
"Status": "0"
}
Message: Mensagem associada ao Status
PaymentUrl: Sempre que o status="0" é devolvido um url para redirecionar o cliente para introduzir os dados de cartão de crédito. É a partir deste ponto que se inicia o Pagamento. Este redirecionamento deverá ser efetuado sempre através do método GET.
RequestId: Token associado ao pedido, tal como no MB WAY e PAYSHOP. Deverá ser guardado para identificar o pagamento.
Status: Indica o estado da inicialização do pedido. No caso do Status <> "0" analisar a Mensagem de erro.
Exemplo de resposta em caso de insucesso:
{
"Message": "Unauthorized request",
"PaymentUrl": "",
"RequestId": "",
"Status": "-1"
}
Em caso de erro retorna PaymentUrl e RequestId vazio.
Nota IMPORTANTE:
A todos os endereços enviados no pedido (Success, Error ou Cancel) serão acrescentados 3 parâmetros ao mesmo: id, amount e requestId.
- id - OrderId enviado na inicialização.
- amount - Valor pago.
- requestId - Token associado ao pedido
No caso de Sucesso do pagamento é acrescentado um parâmetro adicional: sk (signature key)
- sk (assinatura para autenticação do pedido)
id=order_45678&amount=11.55&requestId=36jvlEhUYeknQ8PHKprR&sk=d7d2fd272233f0102e6dd0e50969025481cdfe3abb87cc3f135f74cfb47b2561
No exemplo do pedido acima e em qualquer dos cenários (Error ou Cancel)
https://youraddress.com/status.php?id=order_45678&amount=11.55&requestId=36jvlEhUYeknQ8PHKprR
Em caso de (Success) ficaria:
O cálculo do valor da signature key (sk) é efetuado com HASH SHA-256.
Exemplo:
Aos valores dos parâmetros (id, amount e requestId) é encriptado com a vossa CCKey.
message: order_4567811.5536jvlEhUYeknQ8PHKprR
Secret key/Ccard Key usada para o teste: AAA-000000 (podem solicitar dados de cartão de crédito para utilizar na sandbox)
Signature key gerada: d7d2fd272233f0102e6dd0e50969025481cdfe3abb87cc3f135f74cfb47b2561
Nota: Podem enviar parâmetros nos endereços, mas NÃO devem nunca passar parâmetros com os mesmos nomes que serão acrescentados à posterior.
Suporte:
A IFTHENPAY garante assistência técnica gratuita a todos os clientes e podem ser utilizados os seguintes canais:
- Através do e-mail [email protected]
- Através do telefone: 808 222 777 | +351 227 660 871
- Através da abertura de um ticket aqui