Respawn PayDocs

Get Transaction by ID

Retrieves the full details of a specific transaction using its transactionId.

GET/api/Transaction/transactionByTransactionId/{transactionId}

Required Headers

X-Client-Id
Requiredstring

Public ID of your application

X-API-Key
Requiredstring

Your company's secret key

Accept
string

application/json (recommended)

Route Parameters

transactionId

Transaction identifier returned in the id field when creating a transaction. The transaction providerTxId or endToEndId is also accepted.

Example: 9f9a917a-c265-4bd5-ba3d-c2cc7c766339

cURL Example

cURL
curl -X GET "https://api.respawnpay.com/api/Transaction/transactionByTransactionId/9f9a917a-c265-4bd5-ba3d-c2cc7c766339" \
-H "Accept: application/json" \
-H "X-Client-Id: fbd6b0c9e4b8331b77700ca6e17972b5" \
-H "X-API-Key: your-secret-api-key"

Success Response (200 OK)

Response
{
"data": {
"id": "9f9a917a-c265-4bd5-ba3d-c2cc7c766339",
"internalId": 123,
"internalCompanyId": "2f3c1c0e-6a52-4a0f-9d34-6a7b3f6f2b10",
"amount": 500,
"type": "pix_in",
"status": "pending",
"refundedAmount": 0,
"paymentMethod": "pix",
"externalRef": "LEAD-1234",
"postbackUrl": null,
"createdAt": "2025-10-17T01:27:45.224058",
"updatedAt": "2025-10-17T01:27:45.224075",
"paidAt": null,
"cancelledAt": null,
"refundedAt": null,
"customer": {
"id": null,
"name": "Joao Silva",
"email": "joao@example.com",
"phone": "11999999999",
"document": { "type": "cpf", "number": "12345678900" }
},
"pix": {
"qrcode": "00020126...",
"expiresAt": "2025-10-18T01:27:45+00:00",
"endToEndId": null,
"payer": {
"name": null,
"document": "",
"documentType": "cpf",
"branch": null,
"account": null,
"bankName": null,
"bankIspb": null
}
},
"refusedReason": null,
"refusedCode": null,
"refunds": [],
"fee": { "total": 0, "net": 500 },
"provider": {
"txId": "9f9a917a-c265-4bd5-ba3d-c2cc7c766339",
"endToEndId": null,
"payerName": null,
"payerDocument": null,
"receiverName": null,
"receiverDocument": null,
"providerAmount": null,
"providerCreditedAt": null
}
},
"status": 200,
"message": "Transação recuperada com sucesso (fallback local)."
}

The fields shown are those of the local record. Timestamps keep the format of the record and their printed offset is not reliable, so use the webhook events for ordering.

Main Fields

data.id
string

Transaction identifier (the same id returned on creation)

data.status
string

Current transaction status (see Possible Statuses)

data.amount
number

Transaction amount in cents

data.paymentMethod
string

Payment method (pix)

data.externalRef
string

Your reference (customer.externalRef sent on creation)

data.paidAt
string

Payment date/time (null until paid)

data.customer
object

Customer data (name, email, phone, document)

data.pix.qrcode
string

PIX copy and paste code

data.pix.endToEndId
string

PIX E2E identifier (filled in after payment)

data.fee
object

Total fee and net amount, in cents

Possible Statuses

pendingAwaiting PIX payment
paidPayment confirmed
canceledTransaction cancelled
failurePayment failure or expired transaction
refundedPayment refunded
chargebackDisputed payment (chargeback)

Other internal states may appear in lowercase, such as processing. Webhook statuses use a different list: awaiting, pending, successful, failure and refunded.

Errors

400
Bad Request

Invalid transactionId

403
Forbidden

Invalid credentials or a transaction from another company

404
Not Found

Transaction not found

404
{
"title": "Not Found",
"status": 404,
"detail": "Transação não encontrada.",
"instance": "/api/Transaction/transactionByTransactionId/9f9a917a-c265-4bd5-ba3d-c2cc7c766339"
}

JavaScript Example

JavaScript (fetch)
const transactionId = '9f9a917a-c265-4bd5-ba3d-c2cc7c766339';
const response = await fetch(
`https://api.respawnpay.com/api/Transaction/transactionByTransactionId/${transactionId}`,
{
method: 'GET',
headers: {
'Accept': 'application/json',
'X-Client-Id': 'fbd6b0c9e4b8331b77700ca6e17972b5',
'X-API-Key': 'your-secret-api-key'
}
}
);
const { data } = await response.json();
console.log('Status:', data.status);
console.log('Amount:', data.amount / 100); // convert cents to reais

Important Notes

INFO

Use the transactionId returned when creating the transaction

INFO

The amount field is always in cents (500 = R$ 5.00)

INFO

The transaction status is in data.status and can be: pending, paid, canceled, failure, refunded or chargeback

INFO

Customer data is in the customer object

TIP

For real-time updates, configure webhooks instead of constant polling