Saltar al contenido

Atualiza o status de uma compra consultando o provedor

POST/api/checkout/purchases/{purchaseId}/refresh

Auth
Requiere token
X-CommunityId
X-CommunityId Envía el X-CommunityId de la comunidad en la que ocurre la operación.
Las descripciones de los endpoints vienen de la especificación de la API y, por ahora, están en portugués. La interfaz alrededor está traducida.

Para a tela de confirmação, quando o webhook do provedor atrasa ou se perde. Se a compra está `PENDING` ou `PROCESSING` (ou `FAILED` há menos de 7 dias: um PIX cancelado pode ser pago mesmo assim), consulta o pedido na Stone (só leitura) e aplica o que ele diz, exatamente como o webhook faria: pago conclui a compra (e abre a assinatura, lança no ledger, manda o e-mail); falhou ou cancelado fecha a compra como `FAILED`; ainda aberto não muda nada. Idempotente: se o webhook chegar depois, nada é feito duas vezes. Só o comprador, na comunidade do `X-CommunityId`; compra de outra pessoa ou de outra comunidade responde 404. O provedor é consultado no máximo uma vez a cada 10 segundos por compra (`outcome = throttled` dentro dessa janela); compra já concluída responde o status sem consultar (`outcome = unchanged`). Limite de 30 requisições por minuto por IP (429). `outcome`: `paid` (o provedor diz pago; a compra foi ou já estava concluída), `failed` (o provedor diz falhou/cancelado), `pending` (pedido ainda aberto), `unchanged` (compra já fechada, provedor não consultado), `throttled` (consultado há pouco), `skipped` (compra sem pedido no provedor). `subscription` é a assinatura aberta pela compra (ou a renovada, numa cobrança de renovação), ou null.

Parámetros

NombreDóndeTipoDescripción
purchaseIdobligatoriopathstring (uuid)

Headers

NombreTipoDescripción
X-CommunityIdopcionalstring (uuid)ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade.

Cuerpo de la solicitud application/json

La especificación no declara los campos de este cuerpo (una subida multipart, por ejemplo). Consulta la guía del tema.

Respuestas

CódigoDescripción
200Status atual da compra, depois da consulta ao provedor.
400Requisição inválida — falha de validação.
401Token ausente, inválido ou expirado.
403Autenticado, mas sem permissão para esta operação.
404Recurso não encontrado.
429Requisições demais em pouco tempo.
500Erro interno do servidor.
502Provedor de pagamento indisponível; nada foi alterado.

Ejemplo con curl

curl -X POST "https://api.memberfy.net/api/checkout/purchases/<purchaseId>/refresh" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID" \
  -H "Content-Type: application/json" \
  -d '{}'