# 

## Prerequisites

* A valid API key — see [Obtain API credentials](/docs/how-tos/setup/obtain-credentials)
* A transaction ID (returned in every transaction response as `id`)


## Step 1: Send the request

Send `GET /v1/transactions/{id}`.

curl
```shell
curl -X GET \
  https://api.dev.paradisegateway.net/v1/transactions/TRANSACTION-01JMRSPCK7XVNP3KS8F2W4T6Y \
  -H "APIKEY: YOUR-API-KEY"
```

Python
```python
import requests

transaction_id = "TRANSACTION-01JMRSPCK7XVNP3KS8F2W4T6Y"
resp = requests.get(
    f"https://api.dev.paradisegateway.net/v1/transactions/{transaction_id}",
    headers={"APIKEY": "YOUR-API-KEY"},
)
print(resp.json())
```

JavaScript
```javascript
const transactionId = "TRANSACTION-01JMRSPCK7XVNP3KS8F2W4T6Y";
const resp = await fetch(
  `https://api.dev.paradisegateway.net/v1/transactions/${transactionId}`,
  { headers: { "APIKEY": "YOUR-API-KEY" } }
);
console.log(await resp.json());
```

C#
```csharp
var transactionId = "TRANSACTION-01JMRSPCK7XVNP3KS8F2W4T6Y";
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("APIKEY", "YOUR-API-KEY");
var resp = await client.GetStringAsync(
    $"https://api.dev.paradisegateway.net/v1/transactions/{transactionId}");
Console.WriteLine(resp);
```

Java
```java
String transactionId = "TRANSACTION-01JMRSPCK7XVNP3KS8F2W4T6Y";
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create(
        "https://api.dev.paradisegateway.net/v1/transactions/" + transactionId))
    .header("APIKEY", "YOUR-API-KEY")
    .GET().build();
HttpResponse<String> resp = HttpClient.newHttpClient().send(request,
    HttpResponse.BodyHandlers.ofString());
System.out.println(resp.body());
```

Go
```go
transactionID := "TRANSACTION-01JMRSPCK7XVNP3KS8F2W4T6Y"
req, _ := http.NewRequest("GET",
    "https://api.dev.paradisegateway.net/v1/transactions/"+transactionID, nil)
req.Header.Set("APIKEY", "YOUR-API-KEY")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
```

PHP
```php
$id = "TRANSACTION-01JMRSPCK7XVNP3KS8F2W4T6Y";
$ch = curl_init("https://api.dev.paradisegateway.net/v1/transactions/$id");
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => ["APIKEY: YOUR-API-KEY"],
]);
echo curl_exec($ch); curl_close($ch);
```

Ruby
```ruby
require "net/http"
id = "TRANSACTION-01JMRSPCK7XVNP3KS8F2W4T6Y"
uri = URI("https://api.dev.paradisegateway.net/v1/transactions/#{id}")
req = Net::HTTP::Get.new(uri, { "APIKEY" => "YOUR-API-KEY" })
resp = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(req) }
puts resp.body
```

## Step 2: Read the response

```json
{
  "id": "TRANSACTION-01JMRSPCK7XVNP3KS8F2W4T6Y",
  "object": "transaction",
  "type": "card_sale",
  "terminal_transaction_id": "TERMINAL_TRANSACTION-01JMRSPCK7XVNP3KS8F2W4T6Y",
  "processor_transaction_id": "POT_7B10Z2D12C533EDB85839C7603721EB1C3E23",
  "mid": "MID_3305FD4D5F4157G59D95G2GG0829G861",
  "transaction_state": "authorized",
  "response_status": "Approved",
  "response_code": "00",
  "response_message": "The API request is approved.",
  "batch_id": "BATCH-01JMRSPCK7XVNP3KS8F2W4T6Y",
  "transaction_date": "2026-01-15T14:30:00Z",
  "authorization_code": "847293",
  "amount_requested": 15000,
  "amount_authorized": 15000,
  "amount": 15000,
  "tip": 1000,
  "avs_result_code": "y",
  "cvv_result": "M",
  "payment_method": {
    "type": "card",
    "payment_token": "PAYMENT_TOKEN-01JMRSPCK8WLXDPRMW3SNPVQEA",
    "brand": "visa",
    "last_four": "1234",
    "bin": "411111",
    "funding": "credit"
  },
  "correlation_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
```

### Key fields

| Field | Description |
|  --- | --- |
| `transaction_state` | Current lifecycle state (`authorized`, `captured`, `settled`, `canceled`, `declined`) |
| `response_code` | Processor response code (`00` = approved) |
| `batch_id` | The batch this transaction belongs to |
| `amount` / `tip` | Final amounts in cents |
| `avs_result_code` | Address verification result |
| `cvv_result` | Card verification result |
| `payment_method` | Masked payment details and token |
| `correlation_id` | Unique request trace ID for support and debugging |


## Error responses

| Status | Meaning |
|  --- | --- |
| `401` | Invalid or missing API key |
| `404` | Transaction ID not found or not accessible from your account |


## Next steps

* [List transactions with filters](/docs/how-tos/manage-transactions/list-transactions) — search across multiple transactions
* [Cancel an authorized transaction](/docs/how-tos/manage-transactions/cancel-auth)
* [Refund a settled transaction](/docs/how-tos/manage-transactions/refund-settled-auth)