Referência da API
Criar transação (Cartão — token)
Cobrança de cartão no MODELO A (token). O cartão é tokenizado no navegador com a iHubGames.js (o número nunca toca o seu servidor) e você envia só o token. Se o emissor exigir 3D Secure, a resposta vem com requiresAction + clientSecret pra apresentar o desafio no navegador. Fluxo completo no guia Pagamentos via API.
/transactions/v2/purchaseAutenticação
HTTP Basic Auth. Envie sua secret key no header:
Authorization: Basic {base64(secret:SUA_SECRET_KEY)}Parâmetros
creditCard.tokenstringobrigatórioToken do cartão gerado pela iHubGames.js no navegador (Modelo A).
creditCard.holderstringobrigatórioNome impresso no cartão.
creditCard.installmentsnumberobrigatórioParcelas (1..N). Só > 1 se a config permitir.
creditCard.last4 / brandstringopcionalOpcionais — a iHubGames.js já devolve.
Body da requisição
Content-Type: application/json
{
"name": "João Silva",
"email": "joaosilva@exemplo.com",
"cpf": "12345678901",
"amount": 1000,
"description": "Pedido 1234",
"externalId": "pedido-5678",
"paymentMethod": "CREDIT_CARD",
"currency": "BRL",
"creditCard": {
"token": "<token da iHubGames.js>",
"holder": "JOAO SILVA",
"installments": 1
}
}Respostas
Aprovado direto (cartão sem 3D Secure).
{
"id": "17913320791467683016950003",
"currency": "BRL",
"method": "CREDIT_CARD",
"installments": 1,
"externalId": "pedido-5678",
"status": "APPROVED",
"amount": 1000,
"postbackUrl": "https://seu-dominio.com/webhook",
"referrerUrl": null,
"pixCode": null,
"expiresAt": null,
"createdAt": "2026-10-07T00:14:40.893Z",
"costFee": 2
}Exige 3D Secure — a resposta traz requiresAction: true + clientSecret (os demais campos do objeto de transação vêm iguais). Apresente o desafio no navegador com iHubGames.card({ tokenizationKey }).confirmAction(clientSecret).
{
"id": "17913320791467683016950003",
"currency": "BRL",
"method": "CREDIT_CARD",
"installments": 1,
"externalId": "pedido-5678",
"status": "PENDING",
"amount": 1000,
"postbackUrl": "https://seu-dominio.com/webhook",
"referrerUrl": null,
"pixCode": null,
"expiresAt": null,
"createdAt": "2026-10-07T00:14:40.893Z",
"costFee": 2,
"requiresAction": true,
"clientSecret": "pi_..._secret_..."
}API key ausente, malformada ou revogada.
{
"statusCode": 401,
"message": "Unauthorized"
}Exemplos
curl -X POST "https://api.ihubplay.com/transactions/v2/purchase" \
-H "Authorization: Basic $(echo -n 'secret:SUA_SECRET_KEY' | base64)" \
-H "Content-Type: application/json" \
-d '{
"name": "João Silva",
"email": "joaosilva@exemplo.com",
"cpf": "12345678901",
"amount": 1000,
"paymentMethod": "CREDIT_CARD",
"creditCard": { "token": "<token>", "holder": "JOAO SILVA", "installments": 1 }
}'