Skip to Content

سرویس کیف پول

سرویس کیف پول امکان مدیریت موجودی، تراکنش‌ها و بازپرداخت‌های کاربران را فراهم می‌کند. این سرویس مجموعه‌ای کامل از ابزارها برای انجام عملیات مالی ارائه می‌دهد — شامل دریافت موجودی کیف پول و تاریخچه تراکنش‌ها، ایجاد و مدیریت هزینه‌ها، پردازش بازپرداخت‌ها، و اجرای عملیات مرتبط با اعتبار.

فهرست مطالب

متد‌های کیف پول

متدتوضیحاتپارامترها
getBalance()دریافت موجودی کاربرuserId, filters
getTransactions()دریافت تاریخچه تراکنش‌هاuserId, page, perPage
createExpense()ایجاد یک هزینهuserId, request
createExpenseFromCredit()ایجاد هزینه از اعتبار خاصuserId, creditId, request
getExpense()دریافت جزئیات هزینهuserId, expenseId
deleteExpense()حذف/بازگشت هزینهuserId, expenseId, rollbackReasonId
getExpenseByRef()دریافت هزینه براساس مرجعuserId, reasonId, referenceId
deleteExpenseByRef()حذف هزینه براساس مرجعuserId, reasonId, referenceId, rollbackReasonId

مثال‌ها

پیکربندی اولیه

<?php use Basalam\SDK\BasalamClient; use Basalam\SDK\Auth\ClientCredentials; $auth = new ClientCredentials( clientId: 'your-client-id', clientSecret: 'your-client-secret' ); $client = new BasalamClient($auth);

توجه داشته باشید که برای ریکوئست به APIهای سرویس کیف پول باید از احراز هویت اعتبارنامه کلاینت (Client Credentials) استفاده کنید.

دریافت موجودی

<?php use Basalam\SDK\Wallet\Models\BalanceFilter; function getBalanceExample(): object { global $client; $balance = $client->getBalance( userId: 123, filters: [ new BalanceFilter( cash: true, settleable: true, vendor: false, customer: true ) ] ); return $balance; }

دریافت تراکنش‌ها

<?php function getTransactionsExample(): object { global $client; $transactions = $client->getTransactions( userId: 123, page: 1, perPage: 20 ); foreach ($transactions->data as $transaction) { echo "Transaction: {$transaction->time} - Amount: {$transaction->amount}\n"; } return $transactions; }

ایجاد هزینه

<?php use Basalam\SDK\Wallet\Models\SpendCreditRequest; function createExpenseExample(): object { global $client; $expense = $client->createExpense( userId: 123, request: new SpendCreditRequest( reasonId: 1, referenceId: 456, amount: 10000, description: 'Payment for order #456', types: [1, 2], settleable: true, references: [ 'order_id' => 456, 'payment_method' => 1 ] ) ); return $expense; }

دریافت هزینه

<?php function getExpenseExample(): object { global $client; $expense = $client->getExpense( userId: 123, expenseId: 456 ); return $expense; }

حذف هزینه

<?php function deleteExpenseExample(): object { global $client; $result = $client->deleteExpense( userId: 123, expenseId: 456, rollbackReasonId: 2 ); return $result; }

دریافت هزینه براساس مرجع

<?php function getExpenseByRefExample(): ?object { global $client; $expense = $client->getExpenseByRef( userId: 123, reasonId: 1, referenceId: 456 ); if ($expense) { echo "Found expense: {$expense->id}\n"; } return $expense; }

حذف هزینه براساس مرجع

<?php function deleteExpenseByRefExample(): object { global $client; $result = $client->deleteExpenseByRef( userId: 123, reasonId: 1, referenceId: 456, rollbackReasonId: 2 ); return $result; }
Last updated on