Pay Mirror API

Esses endpoints residem em LicenseChain Pay, não no Core API. URL base: https://pay.licensechain.app.

Usado após o Mirror Payload (modo estrito) fluxo de redirecionamento. Fonte da verdade: Pay provedores de checkout e pagamento.

POST /api/checkout/mirror/validate

Confirmação de compra no lado do servidor. Chame após verificar o parâmetro de consulta de redirecionamento signature. Correspondências Pay validate/route.ts.

Solicitar

POST https://pay.licensechain.app/api/checkout/mirror/validate
Content-Type: application/json

{
  "license": "LC-XXXX-XXXX",
  "email": "buyer@example.com"
}

Envie o valor LCG do URL de retorno como license. Use o e-mail de cobrança do comprador (em letras minúsculas Pay na correspondência). Faça not envie access_token para este endpoint.

Resposta (verificada)

{
  "success": true,
  "verified": true,
  "status": "successful",
  "purchase": {
    "id": "lic_abc123",
    "productId": "550e8400-e29b-41d4-a716-446655440000",
    "createdAt": "2026-05-11T07:01:00.000Z",
    "transactionId": "pi_3RxExample123"
  }
}

Resposta (não encontrada)

{
  "success": true,
  "verified": false,
  "status": "not_found"
}

Cumpra o acesso somente quando verified: true. O Mirror SDK expõe isso como verifyPurchase().

POST /api/checkout/mirror/subscription/charge

Cobrar uma renovação de assinatura de parceiro de pagamento terceirizado em seu back-end (por exemplo, pagamento agendado de assinaturas WooCommerce). Requer um produto válido callback_secret e o ID da assinatura retornado na primeira finalização da compra.

Solicitar

{
  "subscription_id": "sub_1AbCdEfGhIjKlMn",
  "amount": 49.99,
  "currency": "USD",
  "callback_secret": "your_product_callback_secret"
}

Resposta de sucesso

{
  "success": true,
  "charged": true,
  "invoice_id": "in_1AbCdEfGhIjKlMn",
  "message": "Invoice paid"
}
  • 400 — JSON inválido ou campos ausentes.
  • 404 — assinatura não encontrada ou já cancelada.
  • 503 — parceiro de pagamento terceirizado não configurado em Pay.

Guias relacionados