Solidity smart contract for the Immersve universal-evm card funding protocol.
See https://docs.immersve.com/guides/universal-evm-funding-protocol/.
Copyright 2025 Immersve. All rights reserved.
Summary: Approval based funding enhancements.
Date: 2025-03-13
Audit Report: Hashlock Audit Report (PDF)
Added
directSpendDebit()(Master Contract)directSpendRefund()(Master Contract)directSpendReverse()(Master Contract)directSpendGetTransaction()(Master Contract)enableDirectSpend()(Master Contract)disableDirectSpend()(Master Contract)setDirectSpendReversalCutoffSeconds()(Master Contract)getDirectSpendReversalCutoffSeconds()(Master Contract)addStorageLiquidity()(Master Contract)getFundingMode()(Child Contract)
Changed
createFundsStorage()(Master Contract) expects funding mode.- Required Solidity version 0.8.21 → 0.8.28.
- All proxied functions explicitly fail when not called via proxy.
- Withdrawals and settlements are denied when contract paused.
- Master contract interfaces merged.
Renamed
getAdminAddress()(Master Contract) →getMasterAddress()getAdminLogicAddress()(Master Contract) →getMasterLogicAddress()
Removed
- refund() (Master Contract)
- grantRefundTargetManagerRole() (Master Contract)
- revokeRefundTargetManagerRole() (Master Contract)
- setRefunderAddress() (Master Contract)
- getRefunderAddress() (Master Contract)
- REFUND_TARGET_MANAGER_ROLE (Master Contract)
- REFUND_TARGET_ROLE (Master Contract)
Summary: Universal deposit protocol version 1.0.
Date: 2024-01-11
Audit Report: Hashlock Audit Report (PDF)