The Open-Transactions project is a collaborative effort to develop a robust, commercial-grade, fully-featured, free-software toolkit implementing the OTX protocol as well as a full-strength financial cryptography library, API, CLI, and prototype server. The project is managed by a worldwide community of volunteers that use the Internet to communicate, plan, and develop the Open-Transactions toolkit and its related documentation.
Open-Transactions democratizes financial and monetary actions. You can use it for issuing currencies/stock, paying dividends, creating asset accounts, sending/receiving digital cash, writing/depositing cheques, cashier's cheques, creating basket currencies, trading on markets, scripting custom agreements, recurring payments, escrow, etc.
Open-Transactions uses strong crypto. The balances are unchangeable (even by a malicious server.) The receipts are destructible and redundant. The transactions are unforgeable. The cash is untraceable. The cheques are non-repudiable. Etc.
This product includes software developed by Ben Laurie for use in the Lucre project.
Configuration files for clang-format and cmake-format are available in otcommon.
Ensure opentxs is fully checked out prior to running cmake:
git submodule update --init --recursive
Basic build instructions:
cmake --workflow --preset <preset_name>
See CMakePresets.json for a list of available presets.
The environment variable VCPKG_ROOT must be set to an installation of vcpkg.
Additionally on Windows VCPKG_WINDOWS_MAX_PATH_HACK must be set to a directory with a short path name (e.g. C:\vcpkgbuild) to work around Windows platform limitations.
Install dependencies manually or with a system package manager.
- gcc-12.2
- clang-16
- xcode 15
- msvc-19.33
- ndk r26