diff --git a/wallet/v1/internal_srv.proto b/wallet/v1/internal_srv.proto index b12534f..6e0cbf4 100644 --- a/wallet/v1/internal_srv.proto +++ b/wallet/v1/internal_srv.proto @@ -29,4 +29,6 @@ service InternalWalletSrv { // deactivation/locking so referenced financial history remains intact. rpc AdminUpsertAsset(AdminUpsertAssetReq) returns (AdminAssetMutationRes); rpc AdminDeactivateAsset(AdminDeactivateAssetReq) returns (base.v1.StatusRes); + + rpc AdminApproveIRTWithdrawal(AdminApproveIRTWithdrawalReq) returns (base.v1.StatusRes); } diff --git a/wallet/v1/msg.proto b/wallet/v1/msg.proto index c9212f4..c7dc8ca 100644 --- a/wallet/v1/msg.proto +++ b/wallet/v1/msg.proto @@ -227,6 +227,15 @@ message LockAssetReq { optional auth.v1.TFA tfa = 4; // if request is not internal } +// Administrative approval is the only transition that may enqueue an IRT +// withdrawal for blockchain settlement. The receipt identifies the completed +// off-chain bank payment. +message AdminApproveIRTWithdrawalReq { + uint64 withdraw_log_id = 1; + string bank_receipt = 2; + int64 actor_user_id = 3; +} + /* BNPL - not really but close name */