Por padrão, os pagamentos no ponto de venda são capturados automaticamente de forma imediata. Mas, em vez disso, você pode querer configurar um atraso na captura. Isso reserva os fundos no cartão do comprador e oferece um atraso antes que o pagamento seja capturado automaticamente. Durante esse atraso, você pode cancelar a autorização quando, por exemplo:
- Um cliente muda de idéia logo após a compra.
- Pessoal da loja perceber que cometeu um erro depois de um pagamento for Aprovado.
- O cliente precisa fornecer uma assinatura e a equipe da loja precisa de algum tempo para verificá-la.
Alipay e WeChat Pay não suportam capturas atrasadas e os pagamentos são capturados imediatamente.
Antes de começar
Antes de usar capturas com atraso:
- Configure as notificações de webhook. O resultado de uma solicitação de captura ou cancelamento é fornecido de forma assíncrona. Informamos se isso é bem-sucedido com uma notificação de webhook
- Gere uma chave de API. Você precisa disso para cancelar as autorizações de uma caixa registradora.
Se você estiver usando comunicações baseadas na nuvem, poderá usar a Chave da API existente usada para chamadas da API do Terminal.
Ativar captura atrasada
Ao configurar a captura atrasada, as solicitações de pagamento feitas com sua merchant account resultam em uma autorização. Você pode escolher o número de minutos, horas ou dias antes de os pagamentos serem capturados automaticamente.
Para configurar a captura atrasada:
- Faça login na sua Customer Area.
- Mude para a sua merchant account.
- Vá para Settings > Account settings.
-
Selecione POS Capture Delay. Os pagamentos são capturados automaticamente após o atraso que você selecionar.
Recomendamos selecionar um atraso de 2 horas 2 horas.
- Selecione Submit.
Se você não deseja capturar um pagamento, você precisará cancelar a autorização para esse pagamento.
Se você não quiser mais usar a captura atrasada, selecione immediate como o POS Capture Delay.
Cancelar uma autorização
Ao usar a captura com atraso, você pode cancelar uma autorização:
- Com uma chamada API da sua caixa registradora
- De sua área de cliente
Cancelar da caixa registradora
Para cancelar uma autorização de uma caixa registradora, faça uma solicitação JSON especificando pspReference
da autorização que você deseja cancelar:
-
Faça uma solicitação POST para o /cancel endpoint, especificando:
content-type
: application/json.x-api-key
: Sua Chave de API.merchantAccount
: O nome da sua merchant account.-
originalReference
: OpspReference
da autorização sendo cancelada.Você recebeu isso como parte do campo
transactionID
na resposta à sua solicitação de pagamento. Consulte Identificador de transação.
• O exemplo abaixo mostra como você cancelaria uma autorização com
pspReference
NC6HT9CRT65ZGN82.curl -H "content-type:application/json" -H "x-api-key:YOUR_API_KEY" -X POST --data-binary '{ "merchantAccount": "YOUR_MERCHANT_ACCOUNT", "originalReference": "981517998282382C", }' --url https://pal-test.adyen.com/pal/servlet/Payment/v46/cancel
-
Se a solicitação de cancelamento for recebida com êxito, a resposta deverá conter:
response
: [cancel-received]-
pspReference
: Nosso identificador exclusivo para esta solicitação de cancelamento.Isso é diferente do
pspReference
da autorização.
As solicitações de cancelamento são processadas de forma assíncrona e enviaremos uma notificação de webhook para que você saiba o resultado. Se a autorização for cancelada com sucesso, a notificação conterá
eventCode
: CANCELLATIONoriginalReference
: opspReference
da autorização cancelada.pspReference
: Corresponde aopspReference
na /cancel resposta da API.-
success
: trueSe
success
é false sua solicitação de cancelamento falhou. Revise oreason
que você recebeu na notificação, corrija o problema e reenvie a solicitação de cancelamento novamente.
Cancelar da área do cliente
Se você não está cancelando autorizações com frequência, pode ser mais conveniente fazê-lo na sua Área do Cliente.
As solicitações de cancelamento podem ser feitas pelo usuário Merchant admin ou por qualquer usuário com a função de Merchant manage payments. Consulte Funções do usuário.
Para cancelar um pagamento da sua Customer Area:
- Vá para Transactions > Payments, e clique no pagamento que você deseja cancelar.
Isso abre a tela Payment details. - Na seção Submit Cancel Request, clique em Send Cancel.
A autorização foi cancelada.
Para saber como cancelar um pagamento da sua área de cliente, você também pode assistir ao seguinte vídeo:
Capturar notificações com falha
Embora seja raro, uma captura pode falhar após ser enviada para processamento. Quando isso acontece, você recebe uma notificação contendo:
eventCode
: CAPTURE_FAILEDoriginalReference
: OpspReference
da autorização.pspReference
: Nosso identificador exclusivo para esta solicitação de captura com falha.
O exemplo abaixo é de uma autorização com o pspReference
NC6HT9CRT65ZGN82, que falhou ao capturar.
{
"live":"false",
"notificationItems":[
{
"NotificationRequestItem":{
"amount":{
"currency":"EUR",
"value":1099
},
"eventCode":"CAPTURE_FAILED",
"eventDate":"2019-05-20T15:30:00+02:00",
"merchantAccountCode":"YOUR_MERCHANT_ACCOUNT",
"originalReference":"981517998282382C",
"paymentMethod":"mc",
"pspReference":"NC6HT9CRT65ZGN82",
"reason":"Capture Failed",
"success":"true"
}
}
]
}
Isso pode ocorrer alguns dias após uma solicitação de captura e geralmente ocorre devido a um problema técnico. Tentaremos resolver o problema e reenviar automaticamente a solicitação de captura.
Na maioria dos casos, podemos resolver o problema e liquidar os fundos na sua conta logo depois. Quando isso acontece, você recebe uma notificação contendo:
eventCode
: CAPTUREoriginalReference
: OpspReference
da autorização.pspReference
: Nosso identificador exclusivo para esta solicitação de captura bem-sucedida.success
: truereason
: Transaction Recaptured
Não conseguiremos capturar um pagamento se o cliente:
- Solicitou ao banco que revogasse a autorização.
- Teve sua conta fechada.
Você pode encontrar uma visão geral das capturas com falha no seu relatório de contabilidade de pagamentos.