feat: add bank deposit admin RPCs
This commit is contained in:
@@ -31,4 +31,9 @@ service InternalWalletSrv {
|
|||||||
rpc AdminDeactivateAsset(AdminDeactivateAssetReq) returns (base.v1.StatusRes);
|
rpc AdminDeactivateAsset(AdminDeactivateAssetReq) returns (base.v1.StatusRes);
|
||||||
|
|
||||||
rpc AdminApproveIRTWithdrawal(AdminApproveIRTWithdrawalReq) 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);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -236,6 +236,24 @@ message AdminApproveIRTWithdrawalReq {
|
|||||||
int64 actor_user_id = 3;
|
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
|
BNPL - not really but close name
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user