Ö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.
İşlem sonuçlarını sorgulamak için her zaman Tahsilat API tarafından oluşturulen transaction_iddeğ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.
Ö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.
Ö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:
$tahsilat = new TahsilatClient('sk_test_rwwg...');
$transaction = $tahsilat->transactions->retrieve(12345678912345);
Yanıt:
^ 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"
}
Kullanım:
$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
}