# لیست تراکنش‌ها

متد لیست تراکنش‌ها به شما این امکان را می‌دهد که تمامی تراکنش‌های مربوط به یک ترمینال خاص را دریافت کنید. این متد می‌تواند برای مشاهده وضعیت تراکنش‌ها و فیلتر کردن آن‌ها استفاده شود.

# پارامترهای ورودی

نام نوع اجباری شرح
terminal_id String بله شناسه ترمینال درگاه مورد نظر
filter String خیر فیلتر بر اساس وضعیت تراکنش‌ها (اختیاری): PAID، VERIFIED، TRASH، ACTIVE، REFUNDED
offset Integer خیر شروع ردیف‌های بازگشتی (اختیاری)
limit Integer خیر تعداد ردیف‌های بازگشتی (اختیاری)

# اطلاعات خروجی

در صورت موفقیت، اطلاعات زیر از API دریافت می‌شود:

نام نوع شرح
id String شناسه تراکنش
status String وضعیت تراکنش (مثلاً PAID، FAILED)
amount Integer مبلغ تراکنش به ریال
description String توضیحات مربوط به تراکنش
created_at String تاریخ و ساعت ایجاد تراکنش

# نمونه کد

در ادامه نمونه‌ای از پیاده‌سازی متد لیست تراکنش‌ها در android آمده است:

import com.example.zarinpal.ZarinPal
import com.example.zarinpal.data.remote.dto.Config
import com.example.zarinpal.ZarinPal
import com.example.zarinpal.data.remote.dto.transaction.Session
import com.example.zarinpal.data.remote.dto.transaction.TransactionRequest
import com.example.zarinpal.data.remote.enum.FilterEnum
val zarinPal = ZarinPal(
        Config(
            token = "your-access-token",
        )
    )
CoroutineScope(Dispatchers.IO).launch {
  try{
    val request = TransactionRequest(
            terminalId = textFieldTerminalId.text,
            filter = FilterEnum.ALL,
            limit = 25,
            offset = 0
        )
    val response = zarinPal.getTransactions(request)
    Log.v("ZP_Log","$response")
  } catch (ex: Exception) {
    ex.printStackTrace()
  }
}