Charge without coding
Create a link or QR code, share it and track the payment until the wallet transfer.
Create a chargeHXPAY / PIX → CRYPTO
Convert your money or receive from customers.
The money goes to your wallet.
No monthly fee · Fees before confirming
DePix from 0.99% + R$ 0.99 per operation
Follow each stage, from creating a Pix charge to sending funds to your wallet.
SIMULATION · SYNTHETIC DATA
Steps advance every 5 seconds.
Example charge · R$ 100.00
Example: valid for 30 minutes
hxpay.com.br/pay/EXEMPLOPix code is available after issuing. This example cannot be paid.
Example Pix identified at 10:02
R$ 100,00
Seu dinheiro foi identificado. Não pague novamente; agora é só acompanhar até o valor chegar ao aplicativo de carteira.
As taxas saem do valor pago. A HxPay recebe somente a comissão; o líquido vai direto à carteira de destino.
Estimativa antes da liquidação. A confirmação do envio aparece no acompanhamento da operação.
EXEMPLO-100EXEMPLO…0001lq1q…89rkDePix: R$ 100.00 − R$ 2.98 = 97.02 DePix
R$ 100,00
Seu dinheiro foi identificado. Não pague novamente; agora é só acompanhar até o valor chegar ao aplicativo de carteira.
As taxas saem do valor pago. A HxPay recebe somente a comissão; o líquido vai direto à carteira de destino.
Estimativa antes da liquidação. A confirmação do envio aparece no acompanhamento da operação.
EXEMPLO-100lq1q…89rkTransfer reported · Liquid · lq1q…89rk
R$ 100,00
O provedor confirmou o envio. Confira o crédito no seu aplicativo; o identificador técnico fica disponível nos detalhes.
As taxas saem do valor pago. A HxPay recebe somente a comissão; o líquido vai direto à carteira de destino.
O processador informou o envio. O valor acima é o líquido previsto na cotação; o crédito efetivo na carteira ainda não foi conciliado pela HxPay.
Identificador do envio informado pelo provedor — o TXID sozinho não comprova o valor recebido.
EXEMPLO…89rkEXEMPLO-100lq1q…89rkCreate a link or QR code, share it and track the payment until the wallet transfer.
Create a chargeUse the API and signed webhooks to automate charges and reconciliation.
Explore the APISet your DePix and USDT allocation. For every new charge, Autopilot chooses the route furthest below target and records the decision in the receipt — without silently changing asset, network or wallet.
Each Pix follows one whole route towards your target, with status, policy and evidence.
Operation data is omitted in this preview.
DePix from 0.99% + R$ 0.99 per operation
| Completed monthly volume | Tier rate | Per transaction |
|---|---|---|
| Up to R$ 20,000 | 1.99% | R$0.99 |
| Over R$ 20,000 up to R$ 50,000 | 1.49% | R$0.99 |
| Over R$ 50,000 | 0.99% | R$0.99 |
Conversion to USDT: +0.5 percentage points
New charges use completed volume in the current month. Resets on day 1 at midnight in Brasília. Earlier charges are not repriced.
Create my first chargePayments go to the wallet you register. There is no HxPay balance to withdraw.
Eulen/Pix2DePix processes DePix receipts.
Sign in with Google or email. Use passkeys and TOTP to protect your account.
We process data to operate the service. Under Brazil’s LGPD, you can request access, correction and deletion as described in the privacy policy.
REST API and signed webhooks to create charges and track events. Read the public contract; keep your key on the server.
Public documentation ↗import {randomUUID} from 'node:crypto';
const auth = {'Authorization': 'Bearer ' + process.env.HXPAY_API_KEY,
'Content-Type': 'application/json', 'X-HxPay-User-IP': 'END_USER_PUBLIC_IP'};
const quoteResponse = await fetch('https://hxpay.com.br/api/v1/quotes', {
method: 'POST', headers: auth,
body: JSON.stringify({amount_cents: 10000})
});
if (!quoteResponse.ok) throw new Error('Quote request failed');
const {data: quote} = await quoteResponse.json();
const paymentResponse = await fetch('https://hxpay.com.br/api/v1/payments', {
method: 'POST', headers: {...auth, 'Idempotency-Key': randomUUID()},
body: JSON.stringify({quote_id: quote.quote_id,
payer: {name: 'PAYER_NAME', document: 'CPF_OR_CNPJ'},
external_reference: 'ORDER_ID'})
});
if (!paymentResponse.ok) throw new Error('Payment request failed');
const {data: payment} = await paymentResponse.json();curl https://hxpay.com.br/api/v1/quotes \
-H "Authorization: Bearer $HXPAY_API_KEY" \
-H "Content-Type: application/json" \
-H "X-HxPay-User-IP: END_USER_PUBLIC_IP" \
-d '{"amount_cents":10000}'
curl https://hxpay.com.br/api/v1/payments \
-H "Authorization: Bearer $HXPAY_API_KEY" \
-H "Idempotency-Key: UNIQUE_ORDER_UUID" \
-H "Content-Type: application/json" \
-d '{"quote_id":"QUOTE_ID","payer":{"name":"PAYER_NAME","document":"CPF_OR_CNPJ"},"external_reference":"ORDER_ID"}'import os, uuid, requests
headers = {'Authorization': 'Bearer ' + os.environ['HXPAY_API_KEY'],
'X-HxPay-User-IP': 'END_USER_PUBLIC_IP'}
quote = requests.post('https://hxpay.com.br/api/v1/quotes', headers=headers,
json={'amount_cents': 10000}, timeout=30)
quote.raise_for_status()
payment = requests.post(
'https://hxpay.com.br/api/v1/payments',
headers={**headers, 'Idempotency-Key': str(uuid.uuid4())},
json={'quote_id': quote.json()['data']['quote_id'],
'payer': {'name': 'PAYER_NAME', 'document': 'CPF_OR_CNPJ'},
'external_reference': 'ORDER_ID'}, timeout=30)
payment.raise_for_status(){
"data": {
"quote_id": "EXAMPLE_QUOTE_ID", "status": "quoted",
"amount_cents": 10000, "currency": "BRL",
"estimated_usdt": "18.950000",
"settlement": {"asset": "USDT0", "network": "polygon",
"model": "routed_usdt"},
"fees": {"commission_cents": 249, "provider_fee_cents": 99,
"platform_fee_cents": 348}, "net_amount_cents": 9652,
"expires_at": 1791859200
}
}HxPay-Signature: t=TIMESTAMP,v1=HMAC_SHA256
HxPay-Event-Id: EVENT_ID
{"id":"EVENT_ID","event":"payment.completed",
"data":{"id":"PAYMENT_ID","status":"depix_sent",
"estimated_usdt":"18.950000","received_usdt":"18.910000",
"settlement_tx_hash":"0xTRANSACTION_HASH"}}Verify HxPay-Signature with HMAC-SHA256 over TIMESTAMP.raw-body. Compare in constant time, allow up to 300 seconds and deduplicate using HxPay-Event-Id.
import {createHmac, timingSafeEqual} from 'node:crypto';
function verifyWebhook(header, rawBody, secret, now = Date.now()) {
const match = /^t=(\d+),v1=([a-f0-9]{64})$/.exec(header || '');
if (!match || Math.abs(now / 1000 - Number(match[1])) > 300) return false;
const expected = createHmac('sha256', secret)
.update(match[1] + '.').update(rawBody).digest();
return timingSafeEqual(expected, Buffer.from(match[2], 'hex'));
}
// rawBody is the exact request bytes; deduplicate HxPay-Event-Id.
// Confirm the canonical payment state with GET /api/v1/payments/{id}.pending → approved / delayed → depix_sent · expired / refunded / under_review / error. Public documentation
No. Customers pay Pix in their banking app. You configure the receiving asset, network and wallet.
Pix confirmation and on-chain delivery are separate stages. Some operations are scheduled for D+1; follow the timeframe shown by the processor.
The rate follows previously completed monthly volume, plus R$ 0.99 per operation. USDT adds 0.5 percentage points. The account quote includes route costs before issuing.
The authenticated quote shows the conversion route rate and expiry. The amount is estimated until delivery; check the actual receipt in the operation.
DePix requires a compatible Liquid wallet. USDT supports Polygon (USDT0), Ethereum, Tron and Solana subject to account availability. Blockchain transfers can be irreversible. Satsails and Liquid wallet tutorial
Check the registration and verification requirements shown for your account and operation. Payers provide the data required by the processor.
Check the current stage and timeframe. Do not pay again after Pix is identified. Track D+1 release in the account or open a support ticket.
Follow the processor’s review and refund states. A refunded payment is not a completed receipt. Blockchain settlement is separate; contact account support.
Yes. Select the asset and network in Wallets and receiving, validate the address and complete the requested security check. Existing charges retain their original destination.
HxPay connects Pix charges to your chosen wallet. The DePix flow uses Eulen/Pix2DePix. Read HxPay’s terms and published identity. HxPay is not HxPayments.com; check hxpay.com.br.
Choose the asset, configure your wallet and track the operation.
Create my first chargeNo monthly fee · Fees shown before issuing