curl --request GET \
--url https://api.sandbox.z2pay.com/v1/payments/{paymentId} \
--header 'x-api-key: <api-key>'const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.sandbox.z2pay.com/v1/payments/{paymentId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.sandbox.z2pay.com/v1/payments/{paymentId}"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"id": "pay_uw2uc9v7log0i8t091r8jojk1",
"transactionId": "txn_raqtaj22an9s5dexc1vthopl8",
"replacedByPaymentId": null,
"amount": 19990,
"currency": "BRL",
"installments": 3,
"paymentMethod": "credit_card",
"cardId": "crd_jbuvk9a0cf2upp8j8e6joduwl",
"status": "paid",
"additionalInfo": null,
"statementDescriptor": null,
"billingAddress": null,
"boletoUrl": null,
"boletoDigitableLine": null,
"boletoBarcode": null,
"pixUrl": null,
"pixCopyPaste": null,
"splitConfigId": "spl_wzt7w09keygyob5np2aqd7s0r",
"originalAmount": null,
"retryable": null,
"declineCode": null,
"errorMessage": null,
"createdAt": "2026-06-24T12:00:00.000Z",
"updatedAt": "2026-06-24T12:00:02.000Z",
"paidAt": "2026-06-24T12:00:02.000Z",
"expiresAt": null,
"canceledAt": null,
"refundedAt": null,
"chargedbackAt": null,
"protestedAt": null,
"card": {
"id": "crd_jbuvk9a0cf2upp8j8e6joduwl",
"brand": "visa",
"firstDigits": "411111",
"lastDigits": "1111",
"holderName": "MARIA SILVA",
"expirationMonth": "12",
"expirationYear": "2030",
"status": "active",
"createdAt": "2026-05-10T09:30:00.000Z",
"updatedAt": "2026-05-10T09:30:00.000Z"
},
"splits": [
{
"id": "spp_q8orlblnnwfexga0z85b74yj2",
"paymentId": "pay_uw2uc9v7log0i8t091r8jojk1",
"recipientId": "rec_lejahywlmrfeepcw11v5sdihf",
"recipientName": "Loja Exemplo",
"value": 100,
"amount": 19990,
"currency": "BRL",
"type": "sale",
"typeLabel": "Venda",
"valueType": "percentage",
"processingFee": true,
"liable": true,
"createdAt": "2026-06-24T12:00:02.000Z",
"updatedAt": "2026-06-24T12:00:02.000Z"
}
]
}{
"error": {
"code": "UNAUTHORIZED",
"message": "Invalid API key"
}
}{
"error": {
"code": "NOT_FOUND",
"message": "Payment not found"
}
}Buscar pagamento por ID
Retorna os dados de um pagamento específico.
curl --request GET \
--url https://api.sandbox.z2pay.com/v1/payments/{paymentId} \
--header 'x-api-key: <api-key>'const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.sandbox.z2pay.com/v1/payments/{paymentId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.sandbox.z2pay.com/v1/payments/{paymentId}"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"id": "pay_uw2uc9v7log0i8t091r8jojk1",
"transactionId": "txn_raqtaj22an9s5dexc1vthopl8",
"replacedByPaymentId": null,
"amount": 19990,
"currency": "BRL",
"installments": 3,
"paymentMethod": "credit_card",
"cardId": "crd_jbuvk9a0cf2upp8j8e6joduwl",
"status": "paid",
"additionalInfo": null,
"statementDescriptor": null,
"billingAddress": null,
"boletoUrl": null,
"boletoDigitableLine": null,
"boletoBarcode": null,
"pixUrl": null,
"pixCopyPaste": null,
"splitConfigId": "spl_wzt7w09keygyob5np2aqd7s0r",
"originalAmount": null,
"retryable": null,
"declineCode": null,
"errorMessage": null,
"createdAt": "2026-06-24T12:00:00.000Z",
"updatedAt": "2026-06-24T12:00:02.000Z",
"paidAt": "2026-06-24T12:00:02.000Z",
"expiresAt": null,
"canceledAt": null,
"refundedAt": null,
"chargedbackAt": null,
"protestedAt": null,
"card": {
"id": "crd_jbuvk9a0cf2upp8j8e6joduwl",
"brand": "visa",
"firstDigits": "411111",
"lastDigits": "1111",
"holderName": "MARIA SILVA",
"expirationMonth": "12",
"expirationYear": "2030",
"status": "active",
"createdAt": "2026-05-10T09:30:00.000Z",
"updatedAt": "2026-05-10T09:30:00.000Z"
},
"splits": [
{
"id": "spp_q8orlblnnwfexga0z85b74yj2",
"paymentId": "pay_uw2uc9v7log0i8t091r8jojk1",
"recipientId": "rec_lejahywlmrfeepcw11v5sdihf",
"recipientName": "Loja Exemplo",
"value": 100,
"amount": 19990,
"currency": "BRL",
"type": "sale",
"typeLabel": "Venda",
"valueType": "percentage",
"processingFee": true,
"liable": true,
"createdAt": "2026-06-24T12:00:02.000Z",
"updatedAt": "2026-06-24T12:00:02.000Z"
}
]
}{
"error": {
"code": "UNAUTHORIZED",
"message": "Invalid API key"
}
}{
"error": {
"code": "NOT_FOUND",
"message": "Payment not found"
}
}GET /payments/:paymentId
Faz parte do recurso Pagamentos — o objeto e os status estão lá.
transactionId — é por ele que
você chega aos itens e aos outros pagamentos, em GET /transactions/:id.boletoUrl, boletoDigitableLine e boletoBarcode. Para PIX, use pixUrl (QR Code) e pixCopyPaste (copia-e-cola). Esses campos só ficam preenchidos depois que o pagamento é processado pelo gateway.GET /transactions/:id omite os
pagamentos em replaced; aqui eles aparecem. É para isso que ele existe — siga o
replacedByPaymentId do pagamento novo para chegar à tentativa anterior.card traz o cartão usado (bandeira, primeiros
e últimos dígitos, titular, validade) e não vem quando o pagamento não tem cartão associado — Pix e
boleto, por exemplo. splits traz a divisão do valor, com o recipientName de cada recebedor, e
vem [] quando não há split.Authorizations
API Key da Credential (gerada no Backoffice)
Path Parameters
ID do payment
Response
Dados do payment
Identificador único do registro.
ID da transação relacionada ao registro.
ID do pagamento que substituiu este, em caso de retentativa.
Valor em centavos.
Moeda no padrão ISO 4217 (ex.: BRL).
Número de parcelas.
Forma de pagamento (ex.: credit_card, pix, boleto).
ID do cartão tokenizado usado no pagamento.
Situação do pagamento. Valores: pending, waiting_payment, paid, refused, failed, canceled, replaced, waiting_refund, partially_refunded, refunded, chargeback, in_protest.
Informações adicionais do registro (dados livres).
Texto exibido na fatura do cliente (statement descriptor).
Endereço de cobrança do cartão, como informado na criação da transação. Snapshot: preservado como veio, mesmo que o cadastro do cliente mude depois.
Show child attributes
Show child attributes
URL para visualização e impressão do boleto.
Linha digitável do boleto.
Código de barras do boleto.
URL do QR Code PIX para pagamento.
Código PIX copia e cola (payload EMV) para pagamento.
ID da configuração de split aplicada ao pagamento.
Valor original do pagamento antes de ajustes, em centavos.
Se vale tentar de novo com o mesmo cartão. true: uma nova tentativa pode ser aprovada. false: repetir não adianta, peça outro cartão. null: sem veredito.
Motivo da recusa, num código da Z2Pay que é o mesmo para qualquer processador (ex.: insufficient_funds, invalid_cvv, fraud_suspected). null quando o pagamento não foi recusado. Trate um valor desconhecido como unknown.
Texto pronto para exibir ao comprador, em pt-BR. Nos motivos sensíveis (fraude, cartão roubado) é genérico de propósito. Pode mudar sem aviso: decida pelo declineCode, nunca por este texto.
Data e hora de criação do registro (ISO 8601).
Data e hora da última atualização do registro (ISO 8601).
Data e hora em que o pagamento foi liquidado (ISO 8601).
Data e hora em que o registro expira (ISO 8601).
Data e hora em que a transação foi cancelada (ISO 8601).
Data e hora em que o estorno foi concluído (ISO 8601).
Data e hora em que a transação sofreu chargeback (ISO 8601).
Data e hora em que a transação foi protestada (ISO 8601).
Dados do cartão usado no pagamento. Ausente fora de credit_card.
Show child attributes
Show child attributes
Divisão do valor deste pagamento entre recebedores. Vazio quando não há split.
Show child attributes
Show child attributes