This is the server component of the OmiseGO eWallet that allows businesses and individuals (referred hereafter as the "provider") to setup and run their own digital wallet services through their own local ledger.
This server component and its sibling SDKs will later be plugged onto a blockchain and connected to a decentralized exchange. Blockchain capabilities are expected to be added as they become ready. All active instances of the OmiseGO eWallet will then become a federated network forming the top layer of the OMG network, allowing the exchange of any currency into any other in a transparent way.
The SDKs for integrating your apps with the eWallet are available in Ruby (sample server), iOS (sample app) and Android (sample app).
Here is an overview of all the eWallet components and what needs to be integrated by a provider.
Pick one of the following setup approaches that best suits your needs:
Setup | Description | Recommended for |
---|---|---|
Docker | A pre-packaged image for production uses. No build-time dependencies. Packaged with Distillery. | Developers and DevOps looking to integrate or deploy the eWallet without changing its internals. |
Vagrant | Currently supports MacOS only. A development environment bootstrapper using Vagrant. Comes with default configurations and full build tools. | Developers looking to contribute to the codebase. |
Bare‑metal | Set up directly onto your base operating system. You will need to install Elixir, project's dependencies and Postgres manually if you havn't. | Developers and DevOps preferring to manage all dependencies and configurations themselves for any purposes. |
Below are the links to the HTTP-RPC API documentations for the master
branch. Note that the eWallet is not a centralized service and the servers below are not for production uses.
- Admin API (interactive / yaml / json): Integrate with your server apps to perform higher-privilege operations, such as managing tokens, accounts, users, transactions, global settings, etc.
- Client API (interactive / yaml / json): Integrate with your client apps to transact on behalf of a specific user, such as creating a transaction request for a specific user, updating a user's settings, etc.
We also provide the Ruby SDK (sample server), iOS SDK (sample app) and Android SDK (sample app) so you do not have to deal with the HTTP-RPC layer yourself.
Optionally, deeper dives into the eWallet are available:
- Demo: Explore the sample shop server demos without setting up your own.
- Guides: Understand how the eWallet server works behind the scene.
- Design: Find out about the technical design decisions that revolve around the eWallet server.
- Tests: See how tests are organized for the eWallet server.
- FAQ: Frequently asked questions.
You can also follow our advanced setup guides to customize your eWallet server:
Bug reports, feature suggestions, pull requests and feedbacks of any sorts are very welcomed.
Learn more from our contributing guide.
- Issues: Browse or file a report for any bugs found
- Gitter: Discuss features and suggestions in real-time
- StackOverflow: Search or create a new question with the tag
omisego
- Need enterprise support or hosting solutions? Get in touch with us for more details
We are thankful to our community for creating and maintaining these wonderful work that we otherwise could not have done ourselves. If you have ported any part of the OmiseGO eWallet to another platform, we will be very happy to list them here. Submit us a pull request.
- Alainy/OmiseGo-Go-SDK (Golang)
Please note that these community tools and libraries are not maintained by the OmiseGO team.
The OmiseGO eWallet is released under the Apache License.