feat: add bank deposit admin RPCs

This commit is contained in:
2026-10-06 18:43:57 +03:30
parent eae6a03222
commit 729331b0fa
2 changed files with 23 additions and 0 deletions
+5
View File
@@ -31,4 +31,9 @@ service InternalWalletSrv {
rpc AdminDeactivateAsset(AdminDeactivateAssetReq) returns (base.v1.StatusRes);
rpc AdminApproveIRTWithdrawal(AdminApproveIRTWithdrawalReq) returns (base.v1.StatusRes);
// Bank statement receipts are checked and confirmed through the wallet owner.
// Confirmation is idempotent by bank_transaction_number.
rpc AdminCheckBankDeposit(AdminBankDepositReq) returns (AdminBankDepositRes);
rpc AdminConfirmBankDeposit(AdminBankDepositReq) returns (AdminBankDepositRes);
}
+18
View File
@@ -236,6 +236,24 @@ message AdminApproveIRTWithdrawalReq {
int64 actor_user_id = 3;
}
message AdminBankDepositReq {
string bank_transaction_number = 1;
string depositor_id = 2; // ten-digit national ID followed by the two-digit checksum
int64 amount_rial = 3;
string paid_at = 4; // RFC3339
int64 user_id = 5; // wallet verifies this user's national ID against depositor_id
int64 actor_user_id = 6;
}
message AdminBankDepositRes {
int64 user_id = 1;
string national_id = 2;
int64 transaction_id = 3; // zero until confirmed
bool already_registered = 4;
string amount_irt = 5; // exact decimal amount
string status = 6;
}
/*
BNPL - not really but close name
*/