> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tahsilat.com/llms.txt
> Use this file to discover all available pages before exploring further.

# İşlem Sonucu Sorgulama

> Modern ödeme altyapısı için güçlü ve esnek API çözümü

<Info>
  Ödeme işlem sonuçları için her zaman webhook olaylarını kullanmanız tavsiye edilir. Ödeme sonuçlarınızı güvenilir bir şekilde almak için webhook'ları etkinleştirin.
</Info>

<Note>
  İşlem sonuçlarını sorgulamak için her zaman Tahsilat API tarafından oluşturulen <b>transaction\_id</b>

  değerini kullanmalısınız. Bu değer, ödeme işlemi sırasında size sağlanır ve her işlem için benzersizdir.
</Note>

<Warning>
  Ön Provizyon (Pre-Authorization) işlemlerinde, işlem tamamlandığında pre\_auth parametresi true olarak döner. Bu durumda, işlemin kesinleştirilmesi için provizyonun tamamlanması gerekmektedir aksi takdirde karttan herhangi bir tahsilat yapılmaz.
</Warning>

Ödeme işlemleri tamamlandıktan sonra, Tahsilat API üzerinden işlem sonuçlarını sorgulayabilirsiniz. Bu, ödemelerin durumunu kontrol etmek ve gerekli işlemleri gerçekleştirmek için önemlidir.

***

İstek:

<CodeGroup>
  ```php PHP theme={null}
  $tahsilat = new TahsilatClient('sk_test_rwwg...');

  $transaction = $tahsilat->transactions->retrieve(12345678912345);
  ```

  ```csharp .NET theme={null}
  var tahsilat = new TahsilatClient("sk_test_rwwg...");

  var transaction = await client.Transactions.RetrieveAsync(12345678912345);
  ```

  ```curl cURL theme={null}
  curl -L 'https://api.tahsilat.com/v1/transaction/12345678912345' \
  -H 'Content-Type: application/json' \
  -H 'Accept-Language: tr' \
  -H 'Authorization: Bearer {access_token}' \
  ```
</CodeGroup>

Yanıt:

<CodeGroup>
  ```php PHP theme={null}
  ^ Tahsilat\Resource\TransactionResult {
      "transaction_id" => 12345678912345
      "amount" => 83700
      "currency_code" => "TRY"
      "installment_count" => 1
      "payment_status" => 1
      "payment_status_text" => "success"
      "transaction_status" => 2
      "transaction_status_text" => "completed"
      "transaction_message" => null
      "transaction_code" => null
      "payment_method" => 1
      "payment_method_text" => "is_3d"
      "pre_auth" => false
      "created_at" => "2025-06-04T00:53:21+03:00"
      "start_at" => "2025-06-04T00:53:32+03:00"
      "end_at" => "2025-06-04T00:53:38+03:00"
      "metadata": [
          {
              "merchant_id": "1234567",
              "order_id": "123456789",
          },
      ],
      "formatted_amount" => "837.00"
  }
  ```

  ```csharp .NET theme={null}
  {
    "TransactionId": 12345678912345,
    "Amount": 10000,
    "CurrencyCode": "TRY",
    "InstallmentCount": 1,
    "PaymentStatus": 1,
    "PaymentStatusText": "success",
    "TransactionStatus": 2,
    "TransactionStatusText": "completed",
    "TransactionMessage": "success",
    "TransactionCode": null,
    "PaymentMethod": 1,
    "PaymentMethodText": "is_3d",
    "PreAuth": false,
    "CreatedAt": "2025-06-04T00:53:21+03:00",
    "StartAt": "2025-06-04T00:53:21+03:00",
    "EndAt": "2025-06-04T00:53:21+03:00",
    "Metadata": [
      {
        "Key": "customers_type",
        "Value": "premium"
      },
      {
        "Key": "orders_id",
        "Value": "123456"
      }
    ],
    "FormattedAmount": "100.00"
  }
  ```
</CodeGroup>

Kullanım:

<CodeGroup>
  ```php PHP theme={null}
  $tahsilat = new TahsilatClient('sk_test_rwwg...');

  $transaction = $tahsilat->transactions->retrieve(12345678912345);

  if (!$transaction) {
      return false; // İşlem bulunamadı
  }

  if ($transaction->isSuccess()) {
      // İşlem başarılı
  } else {
      // İşlem  başarısız
  }
  ```

  ```csharp .NET theme={null}
  var transaction = await client.Transactions.RetrieveAsync(12345678912345);

  // Başarı kontrolü
  if (transaction.IsSuccess()) { //Success
      // İşlem başarılı
  } else {
      // İşlem  başarısız
  }
  ```
</CodeGroup>

<div className="panels">
  <Panel>
    İstek

    <CodeGroup>
      ```php PHP theme={null}
      $tahsilat = new TahsilatClient('sk_test_rwwg...');

      $transaction = $tahsilat->transactions->retrieve(12345678912345);
      ```

      ```csharp .NET theme={null}
      var tahsilat = new TahsilatClient("sk_test_rwwg...");

      var transaction = await client.Transactions.RetrieveAsync(12345678912345);
      ```

      ```curl cURL theme={null}
      curl -L 'https://api.tahsilat.com/v1/transaction/12345678912345' \
      -H 'Content-Type: application/json' \
      -H 'Accept-Language: tr' \
      -H 'Authorization: Bearer {access_token}' \
      ```
    </CodeGroup>

    <br />

    Yanıt

    <CodeGroup>
      ```php PHP theme={null}
      ^ Tahsilat\Resource\TransactionResult {
          "transaction_id" => 12345678912345
          "amount" => 83700
          "currency_code" => "TRY"
          "installment_count" => 1
          "payment_status" => 1
          "payment_status_text" => "success"
          "transaction_status" => 2
          "transaction_status_text" => "completed"
          "transaction_message" => null
          "transaction_code" => null
          "payment_method" => 1
          "payment_method_text" => "is_3d"
          "pre_auth" => false
          "created_at" => "2025-06-04T00:53:21+03:00"
          "start_at" => "2025-06-04T00:53:32+03:00"
          "end_at" => "2025-06-04T00:53:38+03:00"
          "metadata": [
              {
                  "merchant_id": "1234567",
                  "order_id": "123456789",
              },
          ],
          "formatted_amount" => "837.00"
      }
      ```

      ```csharp .NET theme={null}
        {
          "TransactionId": 12345678912345,
          "Amount": 10000,
          "CurrencyCode": "TRY",
          "InstallmentCount": 1,
          "PaymentStatus": 1,
          "PaymentStatusText": "success",
          "TransactionStatus": 2,
          "TransactionStatusText": "completed",
          "TransactionMessage": "success",
          "TransactionCode": null,
          "PaymentMethod": 1,
          "PaymentMethodText": "is_3d",
          "PreAuth": false,
          "CreatedAt": "2025-06-04T00:53:21+03:00",
          "StartAt": "2025-06-04T00:53:21+03:00",
          "EndAt": "2025-06-04T00:53:21+03:00",
          "Metadata": [
            {
              "Key": "customers_type",
              "Value": "premium"
            },
            {
              "Key": "orders_id",
              "Value": "123456"
            }
          ],
          "FormattedAmount": "100.00"
        }
      ```
    </CodeGroup>

    <Note>
      Bu uç nokta yalnızca secret key ile alınan access token üzerinden çağrılır.
      Secret key sadece arka uçta kullanılmalı ve asla istemci tarafında açıkta olmamalıdır.
    </Note>
  </Panel>
</div>
