Build With Us
Ways To Build With Everest
There are a few ways to build the various features of the Everest protocol into your products and services – a library package, a network oracle, and white-labeled wallet software.
Try Everest Now
Get a verified EverWallet today | Buy, Sell & Swap Crypto globally now |
|
---|---|---|
Payments and Identity Libraries available now:
Integration Method | ||
---|---|---|
The Everest Payments Library Through a simple include of a library package, and some light configuration you can incorporate the Everest Payments Library into your application or dapp in a surprisingly short amount of time. – Accept Payments, send payments – Offer fiat on-ramp and off-ramp – Offer swaps through a simple integration – A few lines of code to implement with your application |
||
The Everest Identity Oracle Leveraging the nearly universal accessability of the Chainlink oracle network, Everest has provided a quick-to-integrate process to leverage the Everest Identity Oracle from nearly anywhere in Web3. – Access a real-time query / response mechanism – Validate users provided attestations and claims – Fight Sybil attacks with Everest's Human & Unique status so your online voting is valid – Financial institutions can directly verify a user's Everest KYCed Status |
||
The Everest EverWallet Robust digital wallet software infrastructure offered on a white-labeled SaaS basis delivers an easy-to-integrate, easy-to-deploy, and easy-to-manage Ethereum wallet for fiat or crypto use cases. – Include multiple wallets into one interface with the EverWallet wallet array – Connect existing Web3 wallets to verify ownership – A short, simple sign up process provisions an account for simple or complex applications – Open financial accounts, to the wallet array – Store documents, claims, currencies & tokens – Custodial and non-custodial solutions available |
||
The Everest Identity Wallet Developers gain access to a library package which embeds the Everest Identity Wallet into any experience to enable on-the-fly wallet deduplication, identity claims issuing, identity verification, and KYCing of the user. – Provides various identity proofs to your users – Integrate directly into your apps and workflows with a few lines of code – Screen users for Human & Unique status in real time – KYC and onboard customers with a simple cross-platform, white-labeled solution. |
||
Please read our “Terms of Service,” “Privacy Policy,” and “Compliance” notices prior to use of this site.
Familiarity with the OpenAPI Specification will help you understand the Everest API structure.
Which Everest Solution Is Right For You:
Solution | Description |
---|---|
Everest Payments Library |
– Allows access to the Everest Financial and Identity APIs – Your users can buy, sell, trade or swap token using the most popular fiat tools – Simple library integration with minimal code and time to implement |
Everest Identity Oracle |
– Provides an easy-to-integrate method of using Everest identities in your app – Leverage the Chainlink network to verify identity status data – Human & Unique and KYCed data is available with a simple, low-cost integration |
Everest EverWallet |
– Wallet array supports multiple wallets and wallet types – Stores fiat, token, documents, claims, and more – Supports custodial and non-custodial solutions for new or existing wallets |
Everest Identity Wallet Library |
– Allows access to the Everest Identity and Onboarding APIs – Your users enroll, connect existing Web3 wallets, to prove they are Human & Unique – A financial-services-grade Know-Your-Customer (KYC) onboarding wizard is also provided to pre-qualify customers |
Everest Payments Library
Overview
Let’s get started! Your available resources include:
Overview - Steps to get setup and developing quickly
Integration Checklist - What you will need to accomplish to integrate the Payments
Implementation Documentation - What you need to know to include the Everest functionality in your app
The Everest Payments Library (v1.1) enables you to build features of the Everest protocol directly into your products and services through the Everest APIs, a simple way of including those functions into your application flow, and a smooth implementation process.
The Everest APIs allow authorized partner organizations to automate various tasks related to Everest profile accounts. This includes being able to initiate onboarding with the required information for enrollment, initiate transactions of various kinds, and exercise other Everest Platform functionality.
Everest provides libraries and oracles to enable partner organizations to easily, safely and securely access the APIs to make it easy to include various financial service primitives into your products and services.
This flow describes the user journey:
Below we are going to describe the general flow of using the Everest Payments Library.
What is required for integration:
Everest SDK NPM package and Everest SDK Key / Secret
Integration of Everest SDK NPM package into Payment Options in Dapp / Site
Integration testing to verify that the NPM package is properly implemented and is configured with the appropriate SDK Keys for connectivity
Integration Certification video conference with Everest personnel to verify that NPM package is configured correctly
Integration Checklist
To help out during the integration process, we've created this checklist for you to follow. This is the same checklist we will be using to ensure you have addressed all items before being granted access to the Production environment, so please be sure to complete it. Click here for a downloadable version of the checklist.
Securing the session with the session token
To secure each session there is a specific sequence that we use which is detailed in the following diagram. First you receive a temp_token, which is swapped for a public_token, which in turn is swapped for a long-lived access_token. This access_token is used for further transactions on this user's behalf.
Implement the client side component
While you're integrating the Everest Payment Library client side component, make sure that:
Your application is configured to authenticate and post data before calling the Everest NPM package.
You implement the Error, Success and Exit callback functions.
You Implement the client side component to handle links with an invalid or token_required status requiring a new password or a new API Key.
You use the token.resources field to define which tokens are available in the client side code.
Payments Library Features
The Everest Payments Library allows you to quickly add financial services to your existing app or Website.
The library will let your users accept fiat payments, make fiat payments or swap between virtual financial assets.
The Everest Payments Library provides your users for single-sign-on experience, where the user is known and KYC information already recorded and/or verified the next time they visit.
– Payment On Ramp
Fiat On Ramp: Fiat to Token - Payment Methods, Fees & Other Details
Accept Payments In Your App
The Payments Library is a turnkey solution that makes it easy for your users to purchase cryptocurrency using the world’s most popular payment methods. Your customers get a fast and secure way to purchase cryptocurrency and you didn't need to get a license, secure access to liquidity pools, build your own KYC process, or checkout UI.
We provide a hosted redirect model, where through a redirect to our widget your users complete their transaction and are then returned into your website or app experience.
Users are able to pay with either debit cards or echecks from their bank accounts, two simple methods to sign up and allow for recurring transactions. The user completes a brief enrollment process, provides their payment information, confirms their transaction, and receives their VFA into their wallet within minutes.
On Ramp Widget Screens | - |
---|---|
Before You Go Live:
– Finish your Partnership Agreement with Everest and complete KYC
– Create your production Everest account
– Configure the Widget for the production environment
That's it! You're now ready to accept fiat-to-crypto payments natively in your app.
– Payment Off Ramp
Fiat Off Ramp: Token to Fiat - Payment Methods, Fees & Other Details
Global Payout Infrastructure
That same turnkey solution also provides your users a reliable method of getting the most for their Virtual Financial Assets (VFAs) and only had to include a few lines of code and the Everest Payments Library to accomplish that.
We provide a hosted redirect model, where through a redirect to our widget your users complete their transaction and are then returned into your website or app experience.
The Everest Payments Library provides your users with the ability to sell cryptocurrency and receive their proceeds into their bank or debit card account. The sales process is quick and simple to accomplish. After a brief enrollment, the user connects their bank account or debit card, sends in their VFA, and when receipt confirmed are sent their funds.
Off Ramp Widget Screens | - |
---|---|
Before You Go Live:
– Finish your Partnership Agreement with Everest and complete KYC
– Create your production Everest account
– Configure the Widget for the production environment
– Token Swapping
Crypto Swaps
Some users just want a secure, reliable method of trading or swapping their token, the Everest Payments Library provides these capabilities as well. Swapping provides access to some of the largest liquidity pools to enable the user to send their token in, and to quickly and inexpensively receive another one back.
With more than 200 tokens on offer, Swap with the Payments Library gives your users the ability to get the tokens they want with super low fees. Unlike other offerings, Swap with the Payments Library does away with the perils of AMM-powered systems like front running, slippage, and liquidity concerns.
| Swap Widget Screens| - | | :--- | ---: | | | |
Before You Go Live:
– Finish your Partnership Agreement with Everest and complete KYC
– Create your production Everest account
– Configure the Widget for the production environment
Limits, Supported Currencies and Countries
Supported KYC Countries Fiat Currencies & Countries
Minimum Transaction Size for the Everest Payments Library is €50 or equivalent
Currencies Supported: Euro and USD
Countries Supported: Austria, Belgium, Cyprus, Estonia, Finland, France, Germany, Greece, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, Monaco, Netherlands, Portugal, Slovakia, Slovenia, Spain, United States.
The Everest Payments Library Package
How To Incorporate Payments Library With Your Code
First, install the library package
npm install --save everest-sdk
The following options can be provided to the library package to change it's behavior:
env {sandbox, production}
appKey
widgetWidth
widgetHeight
How to embed the Payments Library
import React from 'react'
import everestSDK from 'everest-sdk'
const App = () => {
const options = {
appKey: "__PROVIDED_BY_EVEREST__",
widgetWidth: "600px",
widgetHeight: "700px"
};
return <button onClick={() => everestSDK.initialize(options)}>Click Me</button>
};
export default App
– Admin Console
Inspect Your User's Transactions
Organizations that deploy the Everest Payments Widget have the option to request access to the Everest Admin Console which provides information about past transactions and those in process. If you have end-user technical support personnel, this is the portal they would visit to diagnose a customer issue.
Image | Description | |
---|---|---|
Your customers interact with the Payments Library embedded into your Dapp, Website or App. They can Buy and Sell a variety of Virtual Financial Assets, or tokens, using debit card or bank transactions. | ||
Your customer care workers interact with the Payment Dashboard to verify the status of past and ongoing transactions. Searches for individual transactions or wallet addresses allow employees to quickly locate an individual or transaction. | ||
The entire transaction is available to the customer care worker. Transaction Status, Timestamp, Type, Exchange, Network, Fiat Amount, Token Amount, Everest Fee, Network Fee, Wallet Address, funding source, Risk Details and more are available if needed. |
Everest Payments Direct API
Overview
Let’s get started! Your available resources include:
Overview - Steps to get setup and developing quickly
Integration Checklist - What you will need to accomplish to integrate payments via the API
Implementation Documentation - What you need to know to include the Everest functionality in your app
The Everest Payments Direct API enables you to process card numbers in your products and services through Everest and Paysafe.
The Everest APIs allow authorized partner organizations to automate various tasks related to handling card payments. This includes being able to initiate transactions of various kinds, and exercise other Everest Platform functionality.
This diagram describes the flow:
What is required for integration:
Everest API Key / Secret
Integration of Everest Direct API into client product and/or service
Webhook endpoint to send confirmation details
Integration testing to verify API is properly implemented and is configured with the appropriate API Keys for connectivity
Integration Certification video conference with Everest personnel to verify that API is configured correctly
Integration Checklist
To help out during the integration process, we've created this checklist for you to follow. This is the same checklist we will be using to ensure you have addressed all items before being granted access to the Production environment, so please be sure to complete it. Click here for a downloadable version of the checklist.
Environments
Testing:
https://api.stage.identitynetwork.io
https://api.test.paysafe.com/paymenthub/v1/payments
Production:
https://api.prod.identitynetwork.io
https://api.prod.paysafe.com/paymenthub/v1/payments
API Documentation
1. Initiate Payment request
/v4/accounts/merchants
Sample Request:
{
"uuid":"f47ac10b-58cc-4372-a567-0e02b2c3d475",
"amount":150,
"pi":{
"email":"user@test.com",
"phone":"+12125556666",
"fname":"Test",
"lname":"User",
"gender":"M",
"dob":"2001-01-01"
},
"address":{
"country":"MLT",
"postcode":"XBX 1120",
"state":"",
"street":"75 Abate Rigord St",
"city":"Ta' Xbiex",
"secondary_street":""
}
}
2. Process Card data with Order ID
https://api.test.paysafe.com/paymenthub/v1/payments
Sample Request:
{
"merchantRefNum": "556dc4fa-854c-4b3d-b8dc-847238b48587",
"paymentHandleToken": "SCArqxqjwzH8MEhY",
"amount": 500,
"currencyCode": "EUR",
"dupCheck": true
}
Once the payment ID and Order ID have been validated a notification will be sent to your webhook endpoint with the confirmation details.
Everest Identity Oracle
Chainlink Access to Everest Oracle
Everest identity information and claims are available to be used over the Chainlink oracle network.
Everest Identity Services in 50 Words: Everest provides a full identity stack to users and partners which enables consumers to self-enroll through a webpage to prove various aspects of their identity to others. From the most foundational human & unique status, to a complete financial service grade Know Your Customer processes, Everest solves your real world identity issues.
Everest & Chainlink Direct Request: Through the Chainlink Direct Request mechanism, organizations can inexpensively query Everest to learn the Human & Unique or KYCed status of an ERC-20 wallet, gaining valuable insight into how to handle the transactions from that wallet address.
Smart contract developers will have a full Web 3.0 infrastructure stack including blockchains for on-chain logic and state changes, Chainlink oracles for off-chain communication and computation, and Everest for unique human identity, account creation/verification, KYC/AML, and KYB organisational registration.
Additional information can be found in the Business Case and Developer "How To" guides below:
Business Case - Why to use the Everest Identity Oracle.
Developer "How To" - Set up Everest Identity Oracle access.
Everest EverWallet
The Everest EverWallet is flexible wallet software framework designed to include other wallet technologies and provide a unified solution to build your app or dapp on top of. The EverWallet allows users to conduct financial transactions, sign Web3 transactions, interact with multiple networks all through the same interface.
Digital wallet, fiat wallet, crypto wallet, identity wallet - EverWallet can support your wallet needs from simple account provisioning to full financial services KYC and everything in between. Endowed with the ability to hold fiat currencies, cryptocurrencies, identity claims, documents, and more, EverWallet is a common component for Everest Platform services and serves as the storage location.
Your users will be able to spend, save, lend and spend in fiat and crypto, store documents, medical records and sensitive data locked with your biometry – never lose your keys or access again.
EverWallets are able to hold cryptocurrency and fiat balances (for the supported tokens and currencies), send a receive tokens (from those integrated networks), and support both token trades and token swaps. Contact Everest to get current information on supported geographies, tokens and currencies.
EverWallet is able to be white labeled and customized for your exact purposes. Need to pre-screen qualified financial services clients, we can create an EverWallet for that. Want to issue reward tokens for the first 1,000 users who sign up for your new service, we can create an EverWallet for that. Want to use the Everest financial-services-approved Know Your Customer (KYC) utility to onboard new clients, we can create an EverWallet for that purpose too.
The EverWallet framework enables developers to create both custodial and non-custodial solutions for their specific needs, while having the ability to leverage those tools provided by the Everest Platform.
Wallet Type | Description |
---|---|
Ethereum wallet | The "minimal wallet" is compatible with Ethereum networks and ERC-20, ERC-721 tokens and more |
MPC Wallet option | Our Ethereum wallet can require more than one participant to authorize transactions, called “multi-party computation”, the process of generating wallet keys and using them is executed by multiple different parties across a distributed protocol |
Multi Tenant or Multi User Wallet | Another capability allows for the familiar "joint checking account" functionality where multiple users are able to spend from one wallet |
Multi Signature Wallet | Heightened oversight for a business or personal account is provided by this style of wallet where more than one person's signature is required to approve a transaction prior to it being broadcast to the network |
Custodial or Non-custodial Wallet | Custodial wallets are characterized by the platform holding the private key for the user, so the platform is in control of and responsible for protecting the user's funds. Non-custodial wallets, on the other hand, give users the private key and the user has full control and sole responsibility for protecting their holdings. Everest EverWallet provides you with both options |
Wallet Backup | Protect your private key with a biometric backup onto the EverWallet. By linking the wallets (importing public and private key) the user no longer needs to preserve mnemonics nor secure a 40-character key |
Integrated Cash Rails | EverWallet comes pre-plumbed for the Everest KYC system for customer onboarding, as well as fiat-to-token, token to fiat, and token-to-token integrations. |
Multi-network | Integrated with Ethereum, EverChain, Polygon, BNB Chain, and more coming in 2023 |
Institutional Controls | Compliance for organizations is a critical component of their operations, and the Everest platform delivers those controls and services institutions require – consumer onboarding and risk rating, transactional risk rating, know-your-customer (KYC) tools, and more |
Institutional Compliance mechanisms
The EverWallet enables you to create custom mechanisms to enforce your specific procedures and specific workflows to record approvals and track authorization to spend funds controlled by the wallet platform. Everything from simple title-driven constraints like "requires Director approval" to complex structures like tiered requirements of 2 signatures to spend over €1,0000 and 3 signatures over €100,000. Even down to direct budget controls being put in place requiring a specific signatory required for spending from specific wallets. Institutions can control independently the access users have to EverWallets, and can add and remove access without divulging the keys or compromising direct controls.
Everest Identity Wallet Library (New)
Overview
Everest is introducing another innovation for digital identity - the Everest Identity Wallet Library.
Everest is delivering an easy to deploy, easy to use online identity service as a base service for you to add to other services. From the point of view of a consumer wishing to conduct an online activity which requires certain aspects of identity to be proven, there needs to be a service which is simple and easy to complete. From the point of view of the developer delivering the above solution, the focus shifts to the ability to easily integrate and leverage the identity service.
The goal of the “Identity Wallet” is to empower 1000s of developers, dApps, wallets to easily (integrate in under one day with minimal to no support, and be self-service) prove human, deduplicated, name, DOB, KYC status, residency, and similar attributes; by allowing users to attach claims to various EverWallets, connected wallets and linked wallets, a level of pseudonymity is achieved.
What is required for integration:
Everest SDK NPM package and Everest SDK Key / Secret
Integration of Everest SDK NPM package into Dapp / Site - stand alone, or part of a workflow
Integration testing to verify that the NPM package is properly implemented and is configured with the appropriate SDK Keys for connectivity
Integration Certification video conference with Everest personnel to verify that NPM package is configured correctly
Integration Checklist
To help out during the integration process, we've created this checklist for you to follow. This is the same checklist we will be using to ensure you have addressed all items before being granted access to the Production environment, so please be sure to complete it. Click here for a downloadable version of the checklist.
Securing the session with the session token
To secure each session there is a specific sequence that we use which is detailed in the following diagram. First you receive a temp_token, which is swapped for a public_token, which in turn is swapped for a long-lived access_token. This access_token is used for further transactions on this user's behalf.
The Identity Wallet Library flow begins with your user invoking the library, either as a stand-alone experience or as a component of a workflow. – Call /everest/token/create to create a ephemeral temp_token and pass it into your client at session start – Using the temp_token open the Identity Library and you will receive in the onSuccess callback the public_token – Call /everest/public_token/exchange to receive the long-lived access_token. – Store the access_token for future use by that user. You will end up with an array of access_tokens for your user base.
Implement the client side component
While you're integrating the Everest Identity Wallet Library client side component, make sure that:
Your application is configured to authenticate and post data before calling the Everest NPM package.
You implement the Error, Success and Exit callback functions.
You Implement the client side component to handle links with an invalid or token_required status requiring a new password or a new API Key.
You use the token.resources field to define which tokens are available in the client side code.
Identity Wallet Library Features
The Everest Identity Wallet Library allows you to quickly add additional identity verification statuses to your existing app or Website.
– find just the Human & Unique individuals in a set of wallet addresses – screen individuals by various traits – KYC individuals for security or financial services reasons – collect information from users to pre-qualify them
Try it now at https://verified.foundationnetwork.org.
– Human & Unique
Wallet Screening: Human & Unique - Voting, Access Control,
Manage your User Base
The Identity Wallet Library is a turnkey solution that makes it easy for your users to demonstrate they control a wallet address. Your customers get a fast and secure way to prove they are human, not a bot, and not a sock puppet, and you get the peace-of-mind of knowing your voting process has integrity.
We provide a hosted redirect model, where through a redirect to our widget your users complete their task and are then returned into your website or app experience.
Users sign up from any integrated website with their webcam taking a selfie and verifying their contact details. After a brief enrollment process, which confirms they control the Web3 address they are claiming, you are able to redirect them back to your workflow or website.
Before You Go Live:
– Finish your Partnership Agreement with Everest
– Create your production Everest account
– Configure the Widget for the production environment
That's it! You're now ready to identity services and processes natively into your app.
– Know-Your-Customer
Client Onboarding: Identity Verification - eKYC, Sanctions and List Screening, Compliance Checks
Onboard new clients with confidence after screening them with the Everest KYC process. This is the same process and procedure used by financial institutions worldwide to record, review, and approve prospective clients. Complete screening against Anti-Money-Laundering (AML), Counter-the-Funding-of-Terrorism (CFT), Financial Sanctions lists, and Politically-Exposed-Persons lists. Truly know who your prospective client is before you provide them with access or services.
That same turnkey solution also provides small organizations the ability to quickly and inexpensively verify the identity and suitability of a candidate. Do you want to be certain your new cashier has not been sanctioned by a financial authority for fraud, have them KYC through the Everest Identity Wallet Library.
We provide a hosted redirect model, where through a redirect to our widget your users complete their transaction and are then returned into your website or app experience.
The Everest Identity Wallet Library gives you a new identity toolkit for verification, screening, and access control. The enrollment process is quick and simple to accomplish. Only want Human & Unique wallets voting in your DAO's elections? Need to screen people for your new public offering? Need to KYC individuals for your financial services platform? The Everest Identity Wallet Library can solve your needs today.
Before You Go Live:
– Finish your Partnership Agreement with Everest
– Create your production Everest account
– Configure the Widget for the production environment
– Admin Console
Inspect Your Users Status
Organizations that deploy the Everest Identity Wallet have the option to request access to the Everest Admin Console which provides information about past transactions and those in process. Your end-user technical support personnel will use this portal diagnose a customer issue.
Image | Description |
---|---|
Your customers interact with the Identity Wallet library embedded into your Dapp, Website or App. They can prove a variety of attestations or claims. Human & Unique status ensures your votes are fair, and portable Know-Your-Customer validation allows financial institutions to confidently interact with people. | |
A user which has no relationship with this organization will show up like this. No, this wallet has not been seen by this organization, and No, this wallet has not been KYCed. | |
A user which has been onboarded by your organization will show up as a positive "hit" when their wallet address is pasted into the search bar. Yes, this wallet has been seen by this organization. | |
A user which has been KYCed by this organization will show up as Yes, seen by this organization before, and Yes, they succeeded in passing the KYC requirements. |
Errors
The Everest API uses the following error codes:
Error Code | Meaning |
---|---|
400 | Bad Request -- Your request is invalid. |
401 | Unauthorized -- Your API key is wrong. |
403 | Forbidden -- The resource requested is hidden for administrators only. |
404 | Not Found -- The specified resource could not be found. |
405 | Method Not Allowed -- You tried to access a resource with an invalid method. |
406 | Not Acceptable -- You requested a format that isn't json. |
410 | Gone -- The resource requested has been removed from our servers. |
418 | I'm a teapot. |
429 | Too Many Requests -- You're requesting too many resources! Slow down! |
500 | Internal Server Error -- We had a problem with our server. Try again later. |
503 | Service Unavailable -- We're temporarily offline for maintenance. Please try again later. |