We report on experiences in using two very different program verification technologies. One of them is based on object-oriented assertion languages and it comes with automatic static verification of object-oriented programs. The other technology is independent of a programming language or programming paradigm and it offers static interactive verification of very complex constraints. These two technologies were applied to the problem of static verification of object-oriented transactions. The problem was chosen because database technologies are not equipped to handle general integrity constraints and verification technologies are not used to verify transactions. The implications of static verification on data integrity, efficiency, and reliability of transactions are significant.