API ## Sections • [Introduction](https://app.theneo.io/cryptomate/api/introduction.md): Let us introduce you to the revolutionary world of CryptoMate APIs, a gateway to effortless global transactions. In this era of rapid technological advancement, harnessing the power of Blockchain technology has never been simpler. With CryptoMate APIs, you can unlock the true potential of this transformative technology while keeping your focus unwaveringly on providing an exceptional customer experience. Picture this: you have the opportunity to craft incredible applications in an astonishingly short span of time, all thanks to our groundbreaking APIs. Let me walk you through some captivating examples: Imagine seamlessly integrating crypto assets into your fintech wallet. With our ingenious MPC module, managing diverse wallets across different blockchains becomes as intuitive as invoking just two APIs. Yes, you heard that right - two APIs stand between you and an enhanced financial ecosystem. Or consider this: sending your customers NFTs as part of a loyalty program, with the ability to effortlessly track every intricate movement. This seemingly complex task becomes a breeze with our Media NFT module, requiring just two APIs. Loyalty meets simplicity. And for those seeking to embrace the future of commerce, imagine accepting crypto payments with unparalleled ease - a reality achieved by invoking a single API through our Payment module. This single act bridges the gap between traditional and digital currency transactions. Before embarking on your journey to integrate our API marvels, there's a crucial step: obtaining an API key. This key serves as a digital seal of authenticity, safeguarding your requests and ensuring a secure gateway to our suite of services. Obtaining it is as simple as signing up on our website, where possibilities await. Now, let's delve into the dynamic environments our APIs thrive in: Sandbox environment : Here, experimentation is the name of the game. It's the domain of testing and development, where every transaction carries no real-world implications. Your endeavors here shape the future without leaving a trace on the main blockchain. Production environment : This is where reality takes center stage. The transactions that unfold here are not merely simulations; they're tangible, real-world actions that imprint themselves on the main blockchain. Let's explore the core operations that anchor our platform: Wallets : Craft and manage accounts and wallets with unprecedented ease, empowering your users with seamless control over their digital assets. Media NFT : Immerse yourself in the world of NFTs, creating and managing these unique tokens to captivate your users and offer them a novel experience. Payments : Redefine transactions by simplifying crypto payments, empowering your users to engage in borderless commerce without the complexities that once stood in their way. Virtual Wallets: Create easily deposit addresses, concentrate capital, and manage it from a single place. Now, streamline your financial operations and maximize efficiency with our integrated solution. Cards: Issue virtual or physical cards to your clients. You may choose between debit or credit system based on your requirements. In conclusion, CryptoMate APIs are more than just a technical innovation - they're a gateway to an era of simplicity, empowerment, and boundless opportunity. It's time to embrace a future where global transactions are as effortless as invoking an API. Welcome to the world of limitless possibilities. • [Treasury](https://app.theneo.io/cryptomate/api/guides/treasury.md): Treasury – Comprehensive Digital Asset Management Treasury is a product designed to manage digital assets securely and efficiently. It enables the creation and management of crypto wallets across multiple blockchains ( Polygon, BNB, Tron, Solana, or RSK ), with features to check balances, perform transfers, and operate ramp-on/ramp-off flows directly from the platform or via API. Key features include: Account management : Create, modify, and delete accounts associated with wallets. Balance visualization : Consolidated view by treasury, account, and wallet. Transfers : Send funds to other wallets or perform ramp-on/ramp-off operations as a bridge to FIAT assets. Accountability report : Detailed reports of balances and internal movements. With Treasury, you gain full and transparent control of your crypto assets in an environment designed to scale and operate with efficiency. • [Virtual Wallets](https://app.theneo.io/cryptomate/api/guides/virtual-wallets.md): Introduction Our virtual wallet product for businesses is designed to provide efficient and centralized management of digital assets through an integrated Wallet and Holding Wallet system: Wallet : Serves as a deposit address where cryptocurrencies are received and recorded as a virtual balance . This balance represents a debt owed by the company to its clients , ensuring clear and reliable fund management. Holding Wallet : Acts as the main repository for the real assets , automatically transferred from the wallet to maximize security and control over the funds. The primary goal of the product is to centralize client deposits , allowing them to utilize their funds at their discretion according to their business needs and objectives. Built on blockchain technologies such as Polygon , BNB , and Tron , the product offers a robust, transparent, and scalable solution for companies looking to simplify cryptocurrency management. Flow from Deposit in the Virtual Wallet to the Holding Wallet 1. Receiving the Deposit in the Wallet A client sends cryptocurrency to the wallet , which is a unique deposit address generated for that client. The transaction is processed and recorded on the corresponding blockchain ( Polygon , BNB , or Tron ), ensuring transparency and immutability. Once the transaction is confirmed, the system registers the amount as a virtual balance in the client's account on the platform. This balance represents a debt owed by the company to the client , equivalent to the deposited amount. 2. Transfer to the Holding Wallet Automatically or based on predefined rules, the real funds (the deposited cryptocurrency) are transferred from the wallet to the holding wallet , a secure address managed by the company. This step ensures that the real assets are centralized in a secure location, optimizing management and security. 3. Virtual Balance Reflection The client can view their available virtual balance in real-time on the platform. This balance can be used according to the platform's rules, such as for future transactions, payments, or internal operations, always at the client's discretion. 4. Audit and Transparency The entire flow, from the initial deposit to the transfer and the reflected balance, is traceable and auditable thanks to blockchain integration. This allows both the companies and their clients to verify transactions and ensure the integrity of the process. This flow ensures security, transparency, and efficient fund management, allowing businesses to centrally manage crypto deposits while maintaining flexibility for their clients. Managing Virtual Wallets The Virtual Wallets in our system enable clients to deposit and withdraw funds, with specific behaviors for different types of transactions: 1. Depositing and Withdrawing Funds Clients can deposit funds into their virtual wallets and withdraw them as needed. 2. Withdrawals to External Wallets When funds are withdrawn from a virtual wallet to an external wallet, the assets are deducted from the holding wallet , ensuring that the real funds are transferred. 3. Transfers Between Virtual Wallets If a transfer is made between two virtual wallets within the ecosystem, this is considered an internal transfer . It is a simple movement of virtual balances and does not involve any blockchain transactions. No assets are moved from the holding wallet, and no external operation is performed on the blockchain. This design ensures that the virtual wallets function seamlessly within the ecosystem, allowing for flexible internal transfers and secure withdrawals to external wallets. Managing the Holding Wallet The Holding Wallet serves as the central hub for managing real funds in our virtual wallet product. This component enables businesses to perform several key operations: 1. Deposit External Funds Companies can deposit cryptocurrency directly into the holding wallet from external sources, ensuring flexible management of real resources. 2. Withdraw Funds to External Wallets Withdrawals from the holding wallet will be limited to the funds available in the wallet on the blockchain— no overdrafts are allowed . In the event of a withdrawal from a virtual wallet to an external wallet, the funds are transferred from the holding wallet. It is recommended that the holding wallet has sufficient funds to guarantee this functionality. 3. Transfer to a Virtual Wallet Funds can be transferred from the holding wallet to a specific client's virtual wallet. This operation increases the virtual balance of the client's wallet, even if the holding wallet does not have the required balance. In other words, this action can increase the company's debt to the client , reflecting the system's flexibility to accommodate specific needs. These advanced functionalities ensure that businesses have full control over their real and virtual assets while maintaining the flexibility to operate according to their clients' needs. Company Clients and Ramp Operations Company clients are end-users of your platform who can perform ramp operations—converting between fiat currency and cryptocurrency. The client management system integrates seamlessly with the virtual wallet ecosystem to enable secure and compliant on-ramp n and off-ramp transactions. Understanding Clients in the Virtual Wallet Ecosystem What is a Company Client? A company client represents an individual end-user who has completed KYC (Know Your Customer) verification and has been granted access to perform ramp operations on your platform. Each client can be associated with multiple virtual wallets, but each virtual wallet can only belong to one client. Client-Wallet Relationship: One wallet → One client: Each virtual wallet is exclusively associated with a single client One client → Multiple wallets: A client can have multiple virtual wallets across different blockchains or for different purposes Active wallets only: Only virtual wallets with "active" management status can be associated with clients and used for ramp operations Prerequisites for Ramp Operations Before a company can perform any ramp transactions, the following requirements must be met: Client Creation: A client must be registered with complete KYC information, including: - Personal identification documents - Address verification - Tax identification number (country-specific) - Contact information Bank Account Setup: For bank ramp off operations, at least one verified bank account must be linked to the client Active Wallet Association: At least one active management virtual wallet must be created and associated with the client How Ramps Work with Virtual Wallets On-Ramp (Fiat to Crypto): Client initiates a ramp on request and receives fiat deposit information in order to transfer the funds Funds are received and verified Equivalent cryptocurrency is credited to the client's virtual wallet balance Real assets are held in the holding wallet, while the client's virtual balance reflects their ownership Off-Ramp (Crypto to Fiat): Client initiates a withdrawal from their virtual wallet to their bank account The system deducts the virtual balance from the client's wallet Real cryptocurrency is transferred from the holding wallet to convert to fiat Fiat currency is sent to the client's linked bank account • [Cards](https://app.theneo.io/cryptomate/api/guides/cards.md): The product of virtual prepaid cards backed by cryptocurrencies is aimed at businesses and uses stablecoins on the Polygon blockchain as collateral. Each card is linked to a stablecoin wallet, but the conversion to dollars is automatic and done at a 1:1 ratio, making it easier to use the card in traditional payment ecosystems. The cards are Visa and can be used for payments at any merchant that accepts Apple Pay, Google Pay, or e-commerce platforms. They are also protected by the 3DS security system to prevent fraud. There are two types of cards: Top Up : In this model, users can load funds onto their card through a dedicated deposit wallet created specifically for this purpose. External Authorization : In this case, the business systems integrate with the client's systems through webhooks, which have 1200 ms to approve or decline the purchase based on the client's rules. Each business can generate as many cards as they have available in their pack, offering flexibility to meet their users' needs. The product also includes a holding wallet , which contains the funds that guarantee all card purchases. For a purchase to be made, there must be sufficient funds in this wallet; otherwise, the transaction will be declined. Funds in the holding wallet can be withdrawn to external wallets to be used at the client's discretion. However, a minimum balance will remain frozen to ensure that at least one transaction can be made in the system. This guarantees that there will always be enough funds to cover some card transactions. This product combines the convenience of traditional cards with the flexibility of blockchain technology, providing businesses with a modern and efficient solution for managing payments backed by cryptocurrencies. • [API Keys & Access Security](https://app.theneo.io/cryptomate/api/authentication.md): To ensure secure, reliable, and controlled access to our platform, all API interactions are authenticated using API keys . An API key uniquely identifies your application and authorizes it to interact with our services, providing a robust layer of protection for both your data and our infrastructure. Creating and Managing API Keys You can generate and manage API keys through the our Dashboard . Create, edit, rotate, or revoke keys directly from your account dashboard. Each API key is independent and can be managed lifecycle-wise without impacting other integrations. Fine-Grained Permissions Every API key can be configured with specific feature-level permissions . This allows you to precisely control which parts of the system a given key can access. For example, you may issue: A read-only key for reporting or analytics A restricted key for a single product or feature A full-access key for trusted backend services This principle of least privilege helps minimize risk while maximizing operational flexibility. IP Address Restrictions To further strengthen security, API keys can now be restricted to a defined set of IP addresses . When creating or editing an API key, you may optionally configure an IP allowlist : Only requests originating from the specified IP addresses or CIDR ranges will be accepted. Requests from any other IP will be automatically rejected, even if the API key is valid. This feature is particularly useful for: Backend services running from fixed infrastructure Preventing key misuse in case of accidental exposure Enforcing network-level security policies IP restrictions can be updated at any time without regenerating the key. Using an API Key To authenticate a request, include your API key in the request headers: X-API-KEY: <your-api-key> No additional authentication steps are required. • [Errors](https://app.theneo.io/cryptomate/api/errors.md): In this guide, we will explore potential challenges that you might come across and discuss effective strategies for managing them. By addressing these issues, you can significantly enhance the efficiency of your development process. Trace Request On every response and webhook transaction a header is sent to track it, the name of this header is X-Trace-Id . This information will be ask on any support request made so we can speed up the solution of any error ocurred. Error response If the request has not been successful, you will receive a JSON with the following attributes: error_code : The error code that has occurred. message : A message that describes the error. • [Cards](https://app.theneo.io/cryptomate/api/api/cards.md): The Cards section explains to the user how to manage card information associated with their accounts. Users can add, update, and remove cards, as well as retrieve details such as card number and expiration date. This section provides essential functionality for handling payment methods within the application. > **Note:** Deposits made to cards must be at least 10 USD to be processed. • [Virtual Cards](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards.md): The Virtual Cards API provides users with the ability to create and manage virtual cards for secure online transactions. This functionality allows users to: Generate Unique Virtual Card Numbers : Create distinct virtual card numbers for each transaction or vendor, enhancing security and minimizing the risk of fraud. Set Spending Limits : Define specific spending limits for each virtual card to control and manage expenses effectively. • [Create virtual card](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/create-virtual-card.md): Creates a new virtual card. On the creation of the card, you will need to choose the way that each transaction made by the client will be approved. WEBHOOK approval method, means that on every purchase that the client will do with the card, a notification will be sent to the configured notification address with the transaction information on it. A response to it ll be required to approve the transaction. TOPUP approval method is used to approve transactions based on the balance of a crypto wallet associated with the virtual card. Each virtual card has a unique, dedicated wallet tied to it. When a transaction is attempted, the following rules apply: Sufficient Balance: The transaction will only be approved if the associated wallet contains the required amount of cryptocurrency to cover the cost. Limit Compliance: The transaction must also respect any pre-defined limits for the card (such as daily, weekly, or monthly transaction limits). Required access level: Operational Access (Level 2) • [Get virtual card](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/get-virtual-card.md): Get all the information of a particular virtual card Required access level: Read-Only Access (Level 1) • [List virtual cards](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/list-virtual-cards.md): Returns all active cards. Required access level: Read-Only Access (Level 1) • [Delete virtual card](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/delete-virtual-card.md): Remove and disable the selected card. After this action the specified card will be permanently disable and the action cannot be undone. Required access level: Operational Access (Level 2) • [Get Top Up wallets](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/get-top-up-wallets.md): Get all top-up wallets of a particular virtual card, this is only available for cards of type TOP_UP Required access level: Read-Only Access (Level 1) • [Get PAN (html)](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/get-pan-html.md): Get the PAN of the selected card as a link that needs to be embedded. The link generated can be open only once and it's time to live is of 60 seconds once opened. Required access level: Operational Access (Level 2) • [Update virtual card limits](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/update-virtual-card-limits.md): Updates the spending limits of a particular virtual card Required access level: Operational Access (Level 2) • [Update virtual card email](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/update-virtual-card-limits-copy-1.md): Required access level: Operational Access (Level 2) • [Update virtual card phone](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/update-virtual-card-email-copy-1.md): Required access level: Operational Access (Level 2) • [Override virtual balance](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/override-virtual-balance.md): Override the virtual balance of a wallet associated with a virtual card. If the card already has a virtual balance, the specified amount will replace the existing balance. Only positive values and zero are allowed; negative values are not permitted. This only works for virtual cards where the approval method is TOP_UP . Required access level: Operational Access (Level 2) • [Unblock card](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/add-virtual-balance-copy-1.md): This endpoint reverses the BLOCKED status of a card and reactivates it for use. Cards may be blocked because they exceeded the maximum number of attempts for entering incorrect PIN, CVV, or expiry date information. Required access level: Operational Access (Level 2) Warning: Once this method is successfully called, the card's status will be set to ACTIVE , regardless of its previous status or whether it was unblocked. • [3DS configuration](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/unblock-card-copy-1.md): During a transaction authentication, the default option to verify the cardholder’s identity is to send a one-time password (OTP) via SMS. It can opt in for 3DS configuration. By enabling 3DS Configuration, you can decide the method to receive a one-time password (OTP) via SMS or via Webhook (using the URL provide by the webhook configuration). This one-time password (OTP) is sent and is need it to validate the 3DS Challenge using the 3DS Authentication Respond endpoint . Required access level: Operational Access (Level 2) • [3DS authentication respond](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/3ds-configuration-copy-1.md): When an online transaction is triggered, the cardholder may or may not need to authenticate their identity as an extra step to ensure this transaction is 3DS certified. Use this endpoint to respond to a notification which we sent you when a 3DS authentication for your card. You need to response using the code with this endpoint within 5 minutes from the transaction timestamp otherwise will be failed. Required access level: Operational Access (Level 2) • [Get Virtual Balance](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/get-virtual-balances.md): Get the virtual balance of a particular virtual card (only Top-Up). Required access level: Read-Only Access (Level 1) • [Freeze or Unfreeze card](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/freeze-and-unfreeze-card.md): This endpoint allows for the freezing or unfreezing of the card. Required access level: Admin Access (Level 3) • [Update PIN](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/update-pin.md): This endpoint allows to update the PIN for the specific card. The PIN must follow these rules: Length: 4–12 digits. Non-consecutive identical digits: No more than two identical digits in non-consecutive positions (e.g., 124758). Consecutive repeated digits: No more than two repeated digits in a row (e.g., 112441). Required access level: Admin Access (Level 3) • [Reissue Card](https://app.theneo.io/cryptomate/api/api/cards/virtual-cards/reissue-card.md): Warning: Once this method is successfully called, the previous card will be inactive and this operation is irreversible. This endpoint allows you to generate a new number, CVV and expiry date for a given card. When a card with a given cardID is lost, damaged or suspected of fraudulent use, this endpoint will generate a new number, CVV and expiry date for your card with the same cardID . If the card was previously tokenized and provisioned to a mobile wallet (e.g. Google Pay), the newly created card should remain linked to the mobile wallet. However, for subscription-based services, the cardholder may need to re-enter the new card details and verify the card again. While the 16-digit Number, CVV, and expiry date will change, the cardId remains the same as well the balance, movements and other information will remain unchanged. Required access level: Admin Access (Level 3) • [Transactions](https://app.theneo.io/cryptomate/api/api/cards/transactions.md): The Transactions API section enables users to retrieve detailed information about various transactions within the system. By accessing this section, users can: View Transaction Histories : Access comprehensive histories of all transactions, providing a clear record of financial activities. Retrieve Transaction Details : Obtain in-depth information about individual transactions, including amounts, dates, and involved parties. Receive Status Updates (SOON) : Get real-time status updates on transactions, ensuring users are always informed about the progress and completion of their transactions. This functionality empowers users to effectively track and manage their transactional activities, offering a clear and detailed overview of all financial operations. • [Search card transactions](https://app.theneo.io/cryptomate/api/api/cards/transactions/get-card-transactions.md): Search the different transactions on specified card. To track when a virtual balance override occurs, include the parameter: operation with the value OVERRIDE_VIRTUAL_BALANCE . When this operation is triggered: The optional fields original_balance for the balances before the event and new_balance setted in the virtual balances of the card will be populated with their respective values. If a transaction is rejected (with the value TRANSACTION_REJECTED ), the response will include an optional declined_reason field. For a complete list of possible values and their meanings, refer to the Declined Reason section. • [Declined Reasons](https://app.theneo.io/cryptomate/api/api/cards/transactions/declined-reasons.md): When a transaction is rejected with a TRANSACTION_REJECTED status, the response will include a declined_reason object. This object contains a code field with one of the values listed below. Use this table to understand the specific cause of the decline and how to resolve it. Code Summary Description M101 Declined due to insufficient holding balance The transaction was declined because the holding wallet does not have sufficient funds to cover the transaction amount and any potential fees. M102 Declined due to insufficient card balance The transaction was declined because the customer's card balance has insufficient available funds. M201 Exceeds daily limit The transaction amount exceeds the permitted daily transaction limit for the card. M202 Exceeds weekly limit The transaction amount exceeds the permitted weekly transaction limit for the card. M203 Exceeds monthly limit The transaction amount exceeds the permitted monthly transaction limit for the card. M204 Exceeds U$D 5000 limit The transaction exceeds a fixed maximum amount limit of U$D 5,000 per transaction. C101 Card blocked, multiple CVV attempts The card has been temporarily blocked due to multiple consecutive failed CVV attempts. C102 Incorrect CVV entered The Card Verification Value (CVV) code entered for the transaction is incorrect. C103 High-risk merchant category code (MCC) not allowed. The merchant category code (MCC) is not allowed due to its high-risk nature. Please try using a different payment method. • [Holding (Warranty)](https://app.theneo.io/cryptomate/api/api/cards/holding.md): The holding wallet is the central wallet that acts as the reserve of funds for the card program. There is one per client, and its virtual balance reflects the available capital to back card spending. Its role varies depending on the configured authorization method: External authorization (Webhook / DeFi) : the holding is the sole source of funds. Every time a transaction is approved, the amount is deducted directly from it. The client is responsible for authorizing or rejecting each operation in real time, and the holding distributes that capital toward payments. TopUp : each card has its own associated wallet with an individual balance. The holding reflects the sum of all those card balances, acting as an aggregator. When a transaction is approved, the amount is deducted from both the card's individual wallet and the holding. In both cases, the holding balance decreases with each approved transaction and is restored upon refunds or reversals. • [Virtual Wallets](https://app.theneo.io/cryptomate/api/api/virtual-wallets.md): This module offers customers the possibility to generate Virtual Wallets on various blockchain networks to send, receive and record balances and movements. It simplifies the management of digital assets and allows to establish automated rules for user flows. All the assets will be stored on a Holding Wallet that will be created when the first Virtual Wallet is created. There is only one Holding Wallet for each blockchain. When a deposit is made to one of the addresses it will accredit it instantly. These Virtual Wallets will have a virtual balance , which represents the amount of tokens that belongs to those addresses. > **Note:** Deposits made to virtual wallets must be at least 1 USD to be processed. Virtual Wallets: Virtual wallets are interfaces that allow users to interact with the blockchain in a more accessible and user-friendly way without the need to directly manage the private keys associated with their digital assets. This reduces the technical complexity and risks associated with the loss or mismanagement of these keys, making blockchain technology more accessible to the average user. Virtual Wallets also have the capability to be deactivated, ensuring that they do not occupy space within the pool of available virtual wallets. This feature allows for better management and allocation of resources, ensuring that only active and necessary wallets consume system resources. Holding Wallet: At the core of the Virtual Wallet infrastructure is the Holding Wallet. This is a unique wallet designated for each blockchain, where all users' digital assets are stored. The Holding Wallet is responsible for managing the actual funds and executing transactions on behalf of the Virtual Wallets. This centralized approach allows for greater security and efficiency in the management of digital assets. Virtual Balance: Virtual Wallets display to users a virtual balance that reflects the amount of tokens allocated to their specific addresses. However, these real assets are centrally stored in the Holding Wallet. This virtual representation allows for more agile and secure management, eliminating the need for users to interact directly with the blockchain for each operation. Instant Transactions: One of the key benefits of Virtual Wallets is the ability to perform instant transactions from the user's perspective. When a deposit is made to a Virtual Wallet address, the balance is updated immediately in the user interface, providing a seamless and delay-free experience. Meanwhile, the underlying transaction on the blockchain is processed in the background and may take a bit longer to confirm, depending on network congestion and conditions. User Flow Automation: Virtual Wallets also offer advanced automation capabilities, allowing users to set customized rules for managing user flows. This can include setting up automatic transfers, alerts, and notifications, among other features that significantly enhance the user experience. Automation reduces the need for manual intervention, making digital asset management more efficient and secure. Financial Management: The Holding Wallet plays a critical role in financial management. It allows for partial withdrawal of the balance, keeping a reserve ratio against the Virtual Wallets, which facilitates the handling of user funds to generate additional benefits. It is essential to maintain a guarantee fund within the Holding Wallet to ensure that customer withdrawals are always covered. Failing to do so would result in insufficient funds errors when attempting withdrawals. Moreover, if assets are transferred from the Holding Wallet to a Virtual Wallet, the balance of the latter will be updated even if the Holding Wallet does not have sufficient funds to cover that amount. This mechanism can create leverage by effectively using capital beyond the immediate balance of the Holding Wallet. • [Wallets](https://app.theneo.io/cryptomate/api/api/virtual-wallets/wallets.md): This section comprises all the API endpoints to interact with Virtual Wallet , which is the entry point for the user to make deposits on any available blockchain. • [Create Virtual Wallet](https://app.theneo.io/cryptomate/api/api/virtual-wallets/wallets/create-virtual-wallet.md): Creates a new virtual wallet with an alias, for a specific blockchain. Required access level: Operational Access (Level 2) • [Get all Virtual Wallets](https://app.theneo.io/cryptomate/api/api/virtual-wallets/wallets/get-all-virtual-wallets.md): Retrieves all existing virtual wallets for a given blockchain. Required access level: Read-Only Access (Level 1) • [Get Virtual Wallet by ID](https://app.theneo.io/cryptomate/api/api/virtual-wallets/wallets/get-virtual-wallet-by-id.md): Retrieves all the information of a virtual wallet by it's ID. Required access level: Read-Only Access (Level 1) • [Update Virtual Wallet](https://app.theneo.io/cryptomate/api/api/virtual-wallets/wallets/update-virtual-wallet.md): Updates the virtual wallet's alias. Required access level: Operational Access (Level 2) • [Delete Virtual Wallet](https://app.theneo.io/cryptomate/api/api/virtual-wallets/wallets/delete-virtual-wallet.md): Deletes a virtual wallet by ID. If the wallet has some virtual balance it can't be deleted. Required access level: Operational Access (Level 2) • [Get total Virtual Balances by blockchain](https://app.theneo.io/cryptomate/api/api/virtual-wallets/wallets/get-total-virtual-balances-by-blockchain.md): Retrieves the total sum of Virtual Balances across all Virtual Wallets within a specific blockchain. This sum is calculated as the combined total of all virtual balances held within the blockchain. Required access level: Read-Only Access (Level 1) • [Get balance from a Virtual Wallet](https://app.theneo.io/cryptomate/api/api/virtual-wallets/wallets/get-balance-from-a-virtual-wallet.md): Retrieves the balance from a specific Virtual Wallet by it's id. Required access level: Read-Only Access (Level 1) • [Withdraw from Virtual Wallet](https://app.theneo.io/cryptomate/api/api/virtual-wallets/wallets/withdraw-from-virtual-wallet.md): This initiates a request to transfer tokens from one of the Virtual Wallets to an external wallet, facilitated by the Holding Wallet . When viewing the transaction in the explorer, it will display the transaction as originating from the Holding Wallet address. The Holding Wallet must contain a sufficient balance to complete the transaction, otherwise, an exception will occur, and the transaction will not get executed. Required access level: Operational Access (Level 2) Warning : To ensure idempotency on supported endpoints, include the x-idempotency-key header in your requests. This key prevents duplicate processing in case of retries, safeguarding against unintended repeated actions. Requests without this header may not benefit from idempotency controls. Webhook : This process can take long to finish due to overload, for example on the blockchain. So if configured, a notification will be sent through the webhook with the result of it. More information WITHDRAW WEBHOOK • [Enable/disable Virtual Wallet](https://app.theneo.io/cryptomate/api/api/virtual-wallets/wallets/enable-disable-virtual-wallet.md): Enable or disable a virtual wallet. If a virtual wallet is disabled then deposits won't be detected automatically. Disable virtual wallets to reduce maintenance costs. Required access level: Operational Access (Level 2) • [Get movements](https://app.theneo.io/cryptomate/api/api/virtual-wallets/wallets/get-movements.md): Retrieve the most recent movements associated with a specified wallet, allowing users to track and monitor the financial activity within the selected account. By adjusting the optional parameter "size," users can customize the number of movements returned for more precise analysis. This feature requires Operational Access (Level 2) authorization for secure access to movement data. Obtain the last 4 movement made by the selected wallet. It is possible to change the number of item obtained using the parameter “size” Additionally, using the parameter “paging_state_token” you can retreive more options, only if the previous answer has a value in the respose “paging_state_token”. Required access level: Operational Access (Level 2) • [Associate client](https://app.theneo.io/cryptomate/api/api/virtual-wallets/wallets/associate-client.md): Associates a company client with an Active Management virtual wallet, enabling the client to perform ramp operations using that wallet. Required access level: Operational Access (Level 3) • [Holding](https://app.theneo.io/cryptomate/api/api/virtual-wallets/holding.md): A Holding Wallet is a wallet that is created when the user requests to create their first virtual wallet for a given blockchain. This wallet will be used to centralize all deposits made to all virtual wallets on such blockchain. Whenever a deposit is done on a Virtual Wallet , the tokens get transferred to the Holding Wallet almost immediately. This module allows users to get a Holding Wallet balance, information (Alias, address and id) and to withdraw tokens from it. • [Get Holding Wallet balance by blockchain](https://app.theneo.io/cryptomate/api/api/virtual-wallets/holding/get-holding-wallet-balance-by-blockchain.md): Retrieves the current balance of the Holding Wallet within a specified blockchain. Required access level: Read-Only Access (Level 1) • [Get Holding Wallet balance info](https://app.theneo.io/cryptomate/api/api/virtual-wallets/holding/get-holding-wallet-balance-info.md): Retrieves the information for the Holding Wallet within a specified blockchain. Required access level: Read-Only Access (Level 1) • [Withdraw from Holding Wallet](https://app.theneo.io/cryptomate/api/api/virtual-wallets/holding/withdraw-from-holding-wallet.md): This initiates a request to transfer tokens from the user's Holding Wallet to an external wallet, for a given blockchain. The Holding Wallet must contain a sufficient balance to complete the transaction, otherwise, an exception will occur, and the transaction will not get executed. Required access level: Operational Access (Level 2) Warning : To ensure idempotency on supported endpoints, include the x-idempotency-key header in your requests. This key prevents duplicate processing in case of retries, safeguarding against unintended repeated actions. Requests without this header may not benefit from idempotency controls. • [Configuration](https://app.theneo.io/cryptomate/api/api/virtual-wallets/configuration.md): Configuration is a group of endpoints that allows users to manage and query system settings. • [Get available blockchains](https://app.theneo.io/cryptomate/api/api/virtual-wallets/configuration/get-available-blockchains.md): This endpoint allows users to retrieve a list of available blockchains for the virtual wallets module. Users can access this endpoint to get a comprehensive list of supported blockchains. Required access level: Read-Only Access (Level 1) • [Ramps](https://app.theneo.io/cryptomate/api/api/virtual-wallets/ramps.md): Ramp operations enable seamless conversions between fiat currency and cryptocurrency within the virtual wallet ecosystem. Ramps serve as the bridge between traditional banking systems and blockchain-based digital assets, allowing clients to move funds in and out of the crypto economy. Overview On-Ramp (Fiat → Crypto) converts traditional currency into cryptocurrency that is credited to a client's virtual wallet. Off-Ramp (Crypto → Fiat) converts cryptocurrency from a virtual wallet into traditional currency that is sent to the client's bankaccount. We support two types of on-ramp operations: Bank Ramp: Transfers via ACH (US), SPEI (Mexico), SEPA (Europe), or PIX (Brazil). Credit Card Ramp: Instant purchases via credit cards through a secure payment url. Off-ramp operations use bank transfers (ACH/SPEI/SEPA/PIX) to withdraw cryptocurrency back to fiat. How Ramps Work with Virtual Wallets On-Ramp (Fiat to Crypto): Client initiates a ramp on request and receives fiat deposit information in order to transfer the funds Funds are received and verified Equivalent cryptocurrency is credited to the client's virtual wallet balance Real assets are held in the holding wallet, while the client's virtual balance reflects their ownership Off-Ramp (Crypto to Fiat): Client initiates a withdrawal from their virtual wallet to their bank account The system deducts the virtual balance from the client's wallet Real cryptocurrency is transferred from the holding wallet to convert to fiat Fiat currency is sent to the client's linked bank account Before a company can perform any ramp transactions, the following requirements must be met: Client Creation: A client must be registered with complete KYC information, including: - Personal identification documents - Address verification - Tax identification number (country-specific) - Contact information Bank Account Setup: For bank ramp off operations, at least one verified bank account must be linked to the client Active Wallet Association: At least one active management virtual wallet must be created and associated with the client • [Execute bank ramp on](https://app.theneo.io/cryptomate/api/api/virtual-wallets/ramps/bank-ramps/ramp-on.md): Creates a bank ramp on transaction that generates the necessary banking information for a client to deposit fiat currency. Once the deposit is received, the equivalent amount in cryptocurrency will be credited to the destination wallet. Required access level: Operational Access (Level 2) • [Treasury](https://app.theneo.io/cryptomate/api/api/treasury.md): The treasury module offers you a seamless way to integrate the functionalities of a decentralized wallet, along with the capability to send and receive your crypto assets. This module covers everything from setting up a single wallet to managing multiple ones, all without delving into the complexities of web3.0 terminology. This ensures a smoother integration and user experience overall. > **Note:** Deposits made to treasury wallets must be at least 1 USD to be processed. • [Accounts](https://app.theneo.io/cryptomate/api/api/treasury/accounts.md): The accounts module allows to create and manage multiple accounts, each with their own wallets. This allows to manage crypto assets in a more organized way, and also allows to create multiple wallets for a given blockchain. • [Get all accounts](https://app.theneo.io/cryptomate/api/api/treasury/accounts/get-all-accounts.md): Retrieves all the accounts. Required access level: Read-Only Access (Level 1) • [Create account](https://app.theneo.io/cryptomate/api/api/treasury/accounts/create-account.md): Creates a new account. Required access level: Operational Access (Level 2) • [Edit account](https://app.theneo.io/cryptomate/api/api/treasury/accounts/edit-account.md): Modifies the account information. Required access level: Operational Access (Level 2) • [Delete account](https://app.theneo.io/cryptomate/api/api/treasury/accounts/delete-account.md): Delete the specified account. An account cannot be deleted if it's has any wallets associated with it. Required access level: Operational Access (Level 2) • [Wallets](https://app.theneo.io/cryptomate/api/api/treasury/wallets.md): The wallets module is useful to make transactions directly with a given blockchain. It is the place where you can manage your wallets, transfer tokens or check the balance on those wallets • [Get wallet](https://app.theneo.io/cryptomate/api/api/treasury/wallets/get-wallet.md): Retrieves a wallet by ID. Required access level: Read-Only Access (Level 1) • [Get all wallets](https://app.theneo.io/cryptomate/api/api/treasury/wallets/get-all-wallets.md): Retrieves all the wallets for the specified account. Required access level: Read-Only Access (Level 1) • [Create wallet](https://app.theneo.io/cryptomate/api/api/treasury/wallets/create-wallet.md): Creates a new wallet on the account. Required access level: Operational Access (Level 2) • [Update wallet](https://app.theneo.io/cryptomate/api/api/treasury/wallets/update-wallet.md): Modifies the wallet information. Required access level: Operational Access (Level 2) • [Delete wallet](https://app.theneo.io/cryptomate/api/api/treasury/wallets/delete-wallet.md): Required access level: Operational Access (Level 2) • [Get balance](https://app.theneo.io/cryptomate/api/api/treasury/wallets/get-balance.md): Returns the balance of all the listed tokens from the blockchain of a wallet, with the amount of them even if they are 0. Required access level: Read-Only Access (Level 1) • [Transfer token](https://app.theneo.io/cryptomate/api/api/treasury/wallets/transfer-token.md): Transfer any of the listed tokens that are in your MPC wallet to another wallet (internal or external). The status determines the transaction state. Normally, the service will return SUCCESSFUL or FAILED . In some cases, if the blockchain is congested, the service may return a PENDING state, which means that the transaction is still waiting to be processed. But sometimes, due to variations in gas prices from block to block, a transaction may be in a state where it was sent to be processed but the blockchain did not program it to be executed. In these cases, the transaction will be marked as MANUAL_CHECK and will need to be verified manually. Required access level: Operational Access (Level 2) Warning : To ensure idempotency on supported endpoints, include the x-idempotency-key header in your requests. This key prevents duplicate processing in case of retries, safeguarding against unintended repeated actions. Requests without this header may not benefit from idempotency controls. • [Tokens](https://app.theneo.io/cryptomate/api/api/treasury/tokens.md): The Tokens module offers users information about the tokens that are currently listed and available for a given Blockchain • [Get listed tokens by blockchain](https://app.theneo.io/cryptomate/api/api/treasury/tokens/get-listed-tokens-by-blockchain.md): Returns a list of key-value elements composed by the token ticker and the token contract address. Required access level: Read-Only Access (Level 1) • [Get tokens](https://app.theneo.io/cryptomate/api/api/treasury/tokens/get-listed-tokens-2.md): Returns a list of key-value elements composed by the token ticker and the token contract address. Required access level: Read-Only Access (Level 1) • [Management](https://app.theneo.io/cryptomate/api/api/management.md): The Management API is your all-in-one powerhouse for steering the ship of account management. It functions as a sophisticated toolkit, empowering users to seamlessly create, tweak, or bid farewell to clients, accounts, users, and access levels. Acting as a refined interface, it grants users granular control over the organizational account landscape, facilitating tasks such as spinning up new clients or tweaking existing configurations on the fly. Need to sculpt user accounts to fit the evolving needs of your operation? You got it. It doesn't stop there – the API lets you fine-tune access levels, ensuring a secure and compliant environment. And when it's time for some digital spring cleaning, the API's deletion functionalities let you tidy up by retiring entities that have overstayed their welcome. It's like having a backstage pass to the techy side of account management without the fuss. For using this API you need to use your API key that have MANAGEMENT permission. • [Clients](https://app.theneo.io/cryptomate/api/api/management/management.md): The Management API is your all-in-one powerhouse for steering the ship of account management. It functions as a sophisticated toolkit, empowering users to seamlessly create, tweak, or bid farewell to clients, accounts, users, and access levels. Acting as a refined interface, it grants users granular control over the organizational account landscape, facilitating tasks such as spinning up new clients or tweaking existing configurations on the fly. Need to sculpt user accounts to fit the evolving needs of your operation? You got it. It doesn't stop there – the API lets you fine-tune access levels, ensuring a secure and compliant environment. And when it's time for some digital spring cleaning, the API's deletion functionalities let you tidy up by retiring entities that have overstayed their welcome. It's like having a backstage pass to the techy side of account management without the fuss. For using this API you need to use your API key that have MANAGEMENT permission. • [Get Supported Countries](https://app.theneo.io/cryptomate/api/api/management/management/available-countries.md): Get the three-letter alpha-3 country code, as defined in the ISO 3166-1 spec, and ISO 3166-2 subdivision codes for supported countries. • [Get Identification Types](https://app.theneo.io/cryptomate/api/api/management/management/get-identification-types.md): Get identification types that CryptoMate will accept for individuals by region needed to create a company client. • [Get Client Requiered Documentation](https://app.theneo.io/cryptomate/api/api/management/management/get-client-requiered-documentation.md): Retrieves the documentation requirements and KYC checklist needed to create a company client. This endpoint returns astructured checklist that defines which identity documents are required, accepted document types, and imaging requirements (front/back) for client onboarding. • [Create Client](https://app.theneo.io/cryptomate/api/api/management/management/create-client.md): Creates a new company client with KYC information. Requiered for Bank Ramp and Credit Card Ramp operations. At least one document must be submitted. The status field represents the current lifecycle state of the client and can take one of the following values: REJECTED , PENDING , ACTIVE , or INCOMPLETE . Upon client creation, the status is set to PENDING by default. However, if the request includes "bank_ramp": false , the client will be created with ACTIVE status instead. The INCOMPLETE status indicates that the KYC process has not been successfully completed due to missing or invalid required documentation. The REJECTED status indicates that the client has failed compliance or verification checks. Required access level: Admin Access (Level 3) • [Get client](https://app.theneo.io/cryptomate/api/api/management/management/get-client.md): The status field represents the current lifecycle state of the client and can take one of the following values: REJECTED , PENDING , ACTIVE , or INCOMPLETE . Upon client creation, the status is set to PENDING by default. The INCOMPLETE status indicates that the KYC process has not been successfully completed due to missing or invalid required documentation. The REJECTED status indicates that the client has failed compliance or verification checks. Required access level: Admin Access (Level 3) • [Delete client](https://app.theneo.io/cryptomate/api/api/management/management/get-client-copy.md): Required access level: Admin Access (Level 3) • [Get all clients](https://app.theneo.io/cryptomate/api/api/management/management/create-client-copy.md) • [Update client](https://app.theneo.io/cryptomate/api/api/management/management/update-client.md): Required access level: Admin Access (Level 3) • [Create provider customer](https://app.theneo.io/cryptomate/api/api/management/management/create-provider-customer.md): Creates a new client-provider mapping to enable ramp operations. For individual client ramp operations, set the provider field to BRIDGE in the request body. Required access level: Admin Access (Level 3) • [Get Bank Account by ID](https://app.theneo.io/cryptomate/api/api/management/management/get-bank-account.md): Required access level: View Access (Level 1) • [Delete Bank Account](https://app.theneo.io/cryptomate/api/api/management/management/get-bank-account-by-id-copy.md): Required access level: Admin Access (Level 3) • [Get All Bank Accounts](https://app.theneo.io/cryptomate/api/api/management/management/get-all-bank-accounts.md): Required access level: View Access (Level 1) • [Create US Bank Account](https://app.theneo.io/cryptomate/api/api/management/management/create-us-bankl-account.md): Required access level: Admin Access (Level 3) • [Create SPEI Bank Account](https://app.theneo.io/cryptomate/api/api/management/management/create-spei-bank-account.md): Required access level: Admin Access (Level 3) • [Create SEPA Bank Account](https://app.theneo.io/cryptomate/api/api/management/management/create-sepa-bank-account.md): Required access level: Admin Access (Level 3) • [Create PIX Bank Account](https://app.theneo.io/cryptomate/api/api/management/management/create-pix-bank-account.md): Required access level: Admin Access (Level 3) • [Get Pending Documents for Client](https://app.theneo.io/cryptomate/api/api/management/management/get-pending-documents-for-client.md): Obtain a list of document types required to complete the onboarding of a new client when the status is not ACTIVE or REJECTED. Required access level: Admin Access (Level 1) • [Create Business Client](https://app.theneo.io/cryptomate/api/api/management/management/create-business-client.md): This endpoint allows you to create a new business client (company/organization) in the system. Business clients undergo KYB (Know Your Business) verification and require more detailed information than individual clients. Authentication This endpoint requires API key authentication via the x-api-key header. Overview When creating a business client, you must provide: Basic business information (legal name, type, industry) Registered address (and optionally a physical address if different) At least one associated person with control and one with signing authority At least one tax identification document (EIN, TIN, VAT, etc.) High-risk activity declarations Business Formation Documentation Ownership Information Proof of Nature of Business High-Risk Business Detection If the business selects any high-risk activity other than none_of_the_above, the following fields become required: account_purpose source_of_funds source_of_funds_description estimated_annual_revenue_usd expected_monthly_payments_usd high_risk_activities_explanation Conditional Fields account_purpose = other —> account_purpose_other conducts_money_services= true —> conducts_money_services_description, compliance_screening_explanation telegram = true —> username Associated Persons Requirements At least one person must have has_control: true At least one person must have is_signer: true The same person can have both roles • [Get Business Industries](https://app.theneo.io/cryptomate/api/api/management/management/get-business-industries.md): Returns an array of business industry objects. • [Get Business Identifications by Country](https://app.theneo.io/cryptomate/api/api/management/management/get-business-identifications-by-country.md): Returns the list of available tax identification types for businesses based on the specified country. • [Operations](https://app.theneo.io/cryptomate/api/api/management/operations.md): Get all the operations available in the platform. You can use this information to create new credentials for your clients. • [Get all operations](https://app.theneo.io/cryptomate/api/api/management/operations/get-all-operations.md): Returns all the operations available in the platform. Required access level: Admin Access (Level 3) • [Get operation](https://app.theneo.io/cryptomate/api/api/management/operations/get-operation.md): Just returns the operations that you want. To use this endpoint, you need to have at least the role: administrator • [Blockchains](https://app.theneo.io/cryptomate/api/api/management/blockchains.md): Get all the blockchains available in the platform. You can use this information to create new credentials for your clients or using every other endpoints that ask for the blockchain where you want to operate. • [Get all blockchains](https://app.theneo.io/cryptomate/api/api/management/blockchains/get-all-blockchains.md): Returns all the blockchains available in the platform. Required access level: Admin Access (Level 3) • [Configurations](https://app.theneo.io/cryptomate/api/api/management/configurations.md): Manage the company configurations from here, like changing the payment destination address for each blockchain. • [Set payment destination](https://app.theneo.io/cryptomate/api/api/management/configurations/set-payment-destination.md): Sets the treasury wallet and the fee wallet that all the payments will sent after being completed. If fee_deposit_address is not provided, you ll not be able to create any payments that contains fees. To remove just the fee address, you cannot send it or send it as null. Required access level: Admin Access (Level 3) • [Get payment destination](https://app.theneo.io/cryptomate/api/api/management/configurations/get-payment-destination.md): G ets the treasury wallet and the fee address for holding the payments received on the selected blockchain Required access level: Admin Access (Level 3) • [Delete payment destination](https://app.theneo.io/cryptomate/api/api/management/configurations/delete-payment-destination.md): Removes the address of the payment destination for the selected blockchain. Required access level: Admin Access (Level 3) • [Contracted Products](https://app.theneo.io/cryptomate/api/api/management/contracted-products.md): Get information about the products that a client has contracted within the platform. This includes resources like wallets and virtual cards. You can use this information to monitor usage, enforce limits, or as a reference when performing operations that depend on the availability or capacity of contracted services. • [Get contracted products](https://app.theneo.io/cryptomate/api/api/management/contracted-products/get-contracted-products.md): Retrieve the number of contracted products for the authenticated client. This includes treasury wallets , virtual wallets , and virtual cards . Required access level: Admin Access (Level 3) • [Get all contracted and used products](https://app.theneo.io/cryptomate/api/api/management/contracted-products/get-contracted-and-used-products.md): Retrieve the number of contracted and currently used products for the authenticated client. This includes treasury wallets , virtual wallets , and virtual cards . Required access level: Admin Access (Level 3) • [Webhooks](https://app.theneo.io/cryptomate/api/webhooks.md): Webhooks provide real-time notifications for API events, enabling your platform to receive timely updates about specific activities. Our system sends these notifications to a designated endpoint within your hosted environment, which is configured to adeptly receive and process them. Leverage webhooks to promptly obtain information about critical API events. These events include occurrences external to your system, such as a new deposit in an MPC wallet or a card transaction at a point-of-sale (POS) terminal.To seamlessly receive and process webhook-enabled events, you need to establish and configure a webhook endpoint within your environment. Each webhook request consists of a common part and a custom payload specific to the event being communicated. The common part includes standard information such as the event type, sub-type, status and a unique Id of of the notification, while the custom payload contains detailed data relevant to the specific event. Title Description Title Field Type Description operation String Indicator of the operation being informed sub_operation String Indicator of the activity of the operation being informed operation_id String Unique identifier of the operation status String Status of the transaction. Possible values: SUCCESS | CANCELLED | FAILED reason String If the status is FAILED the reason of why ll appear here data Object Variable payload of the notification. The content of this will change depending of the notification type. Complete specification of this will be inside each notification page. General payload example: Plain text { "operation": "TREASURY", "sub_operation": "DEPOSIT", "operation_id": "ca0c57d2-b1c9-4bcd-9d5d-8d361cad6fddds1c", "status": "FINISHED", "data": { } } • [Events](https://app.theneo.io/cryptomate/api/webhooks/events.md): The Events section provides detailed information about the notifications that are triggered by our webhook service. Users can leverage this section to gain insights into real-time updates and track significant events within their application. Security: For avoid that someone can call the client side simulating being a real call. The request will have a security header called X-Webhook-Key with the value set on the management configuration The request is composed by the following fields: PRODUCT: string EVENT TYPE: string STATUS: string OPERATION ID: string DATA: object • [New deposit received](https://app.theneo.io/cryptomate/api/webhooks/events/general/new-deposit-received.md): When a deposit is detected on any of your wallets from the products TREASURY and VIRTUAL WALLETS , a notification will be sent to the configured webhook notification (if not configured, nothing will be sent). Each product has a minimum deposit amount required to be processed, which are: Minimum deposit amounts by product: CARDS: 10 USD VIRTUAL WALLETS: 1 USD TREASURY: 1 USD For configure the webhook please sea the management endpoints The request is composed by the following fields: PRODUCT: TREASURY | CARDS | VIRTUAL_WALLETS EVENT TYPE: DEPOSIT STATUS: SUCCESS Data Payload: Title Description Title Field Type Description wallet_id String Unique identifier of the card that needs the approval wallet_address String Address of one of your wallets that received the tokens transaction_hash String Hash of the operation to check on the blockchain blockchain String Blockchain name where the operation was made. For possibles values check the Management/Blockchain endpoint from_wallet_address String Address of the wallet that send the tokens amount Decimal with 2 digit precision Amount received net_amount Decimal with 2 digiti precision Net amount credited to the customer after deductions for fees and operational charges token Object Information of the received token created_at Date Time Date and time when the transaction was created Token payload: Title Description Title Field Type Description name String Full name of the token symbol String Short name of the token address String Address of the token contract Full payload example: Plain text { "product": "TREASURY", "event_type": "DEPOSIT", "operation_id": "0x1234567890123456789012345678901234567890", "status": "SUCCESS", "data": { "wallet_id": "ivZPARvNBLOSZx69q4DCBBGUfVhCMsLw", "wallet_address": "0xff899364c6e15524531ed3739ea3e878eb1c6d86", "transaction_hash": "0xa348fb3f57c8ecc92ca0aaa858c520432a23cd5e5aeeee3e116fba229891e581", "from_wallet_address": "0xde0da9cb48b9133b9011fbc0a073c71e7cc23830", "amount": "100.1", "net_amount": "99.25", "token": { "name": "USD Circle", "symbol": "USDC", "address": "0x41e94eb019c0762f9bfcf9fb1e58725bfb0e7582" }, "created_at": "2024-06-28T10:20:56.654-03:00" } } Response: No response is needed • [Card transaction approval](https://app.theneo.io/cryptomate/api/webhooks/events/cards/card-transaction-approval.md): The request webhook is triggered when a real-time authorization is requested. And should be answered with the correct code less than 1 second (1000 ms) to be processed, if not the operation will be declined and customer purchase reject. For enhanced security, certain online transactions may require 3D Secure (3DS) authentication. When triggered, a verification code is sent either via SMS (default) or through a configured webhook. Learn more about webhook challenges in our 3DS documentation . The request is composed by the following fields: PRODUCT: CARDS EVENT TYPE: AUTHORIZATION STATUS: PENDING Data Payload: Title Description Title Field Type Description card_id String Unique identifier of the card that needs the approval bill_amount Decimal with 2 digit precision Amount of the operation will be billed on the system. Since all our cards are issued on USD, all transactions on the field will be on US Dollar bill_currency_number Number Currency expressed on ISO 4217 format bill_currency_code String Currency short name transaction_amount Decimal with 2 digit precision Amount of the operation that client is going to spend. This is the same value as show on the checkout/POS transaction_currency_number Number Currency expressed on ISO 4217 format transaction_currency_code String Currency short name exchange_rate Number If applied, the conversion rate applied to the amout. If not null will be sent. fees Object Information about the fees that are involved in the transaction merchant_data Object Information about the merchant that is involved in the transaction Fees payload: Title Description Title Field Type Description atm_fees Decimal with 2 digit precision ATM fee charged to the transaction, if apply. Zero if no cost is incurred fx_fees Decimal with 2 digit precision Currency conversion fee charged to the transaction, if apply. Zero if no cost is incurred Merchant payload: Title Description Title Field Type Description id String Unique identifier of the merchant name String Registered of the merchant city String City where the merchant is registered, could be null post_code String Postal code where the merchant is registered, could be null state String State where the merchant is registered, could be null country String Country where the merchant is registered. The country name is represented in 3 letter format ISO 3166-1 alpha-3 . mcc_category String Category name that the merchant has be registered mcc_code String Numeric code of the category that merchant has be registered Full payload example: Plain text { "product": "CARDS", "event_type": "APPROVAL", "operation_id": "ca0c57d2-b1c9-4bcd-9d5d-8d361cad6fddds1c", "status": "PENDING", "data": { "card_id": "ivZPARvNBLOSZx69q4DCBBGUfVhCMsLw", "amount": 100.2, "currency_number": 840, "currency_code": "USD", "exchange_rate": null, "channel": "ECOMMERCE", "created_at": "2024-05-15T21:38:57.677Z", "fees": { "atm_fees": 0, "fx_fees": 0 }, "merchant_data": { "id": "311178830000", "name": "Amazon Es", "city": "Barcelona", "post_code": "16633", "state": "Cataluña", "country": "ESP", "mcc_category": "Electronics Stores", "mcc_code": "5732" } } } Response: In order to approve the transaction a OK (HTTP 200) response is needed in less that 1 second ( 1000 ms ) time and you must respond with a authorization response to know to approve or decline the transaction Title Description Title Field Type Description response_code String Code that represent the result of the transaction.To approve a transaction, you can respond with 00. Otherwise, you may use any of the decline codes to decline the authorization. Response codes: Title Description Title Code Name Description 00 Approved Transaction approved and can be processed. 51 Insufficient funds Respond with this code when the card has insufficient funds to cover the authorized amount. 57 Cardholder problem Transaction is not permitted to the cardholder 61 ATM daily amount exceeded The ATM withdrawal amount limit has been exceeded 62 ATM country not allowed ATM withdrawal is not permitted in the merchant's country. 77 Merchant exclusion The issuer does not participate in that merchant category. 05 Rejected by other reason Transaction reject by any other reason that is not included on the others options Payload example: Plain text { "response_code": "00" } • [Card transaction declined](https://app.theneo.io/cryptomate/api/webhooks/events/cards/card-transaction-declined.md): The request webhook is triggered when the transaction was declined for a several reason like response the transaction approval after the 1 second gap or response the approval with a 05 code. The request is composed by the following fields: PRODUCT: CARDS EVENT TYPE: DECLINED STATUS: SUCCESS Data Payload: Title Description Title Field Type Description card_id String Unique identifier of the card that needs the approval bill_amount Decimal with 2 digit precision Amount of the operation will be billed on the system. Since all our cards are issued on USD, all transactions on the field will be on US Dollar bill_currency_number Number Currency expressed on ISO 4217 format bill_currency_code String Currency short name transaction_amount Decimal with 2 digit precision Amount of the operation that client is going to spend. This is the same value as show on the checkout/POS transaction_currency_number Number Currency expressed on ISO 4217 format transaction_currency_code String Currency short name exchange_rate Number If applied, the conversion rate applied to the amout. If not null will be sent. channel String Name of the channel where the transaction is being made. Possible values ATM , POS , ECOMMERCE or Visa Direct created_at Date Time Date and time when the transaction was created fees Object Information about the fees that are involved in the transaction merchant_data Object Information about the merchant that is involved in the transaction declined_reason Object Information about why the transaction was rejected Fees payload: Title Description Title Field Type Description atm_fees Decimal with 2 digit precision ATM fee charged to the transaction, if apply. Zero if no cost is incurred fx_fees Decimal with 2 digit precision Currency conversion fee charged to the transaction, if apply. Zero if no cost is incurred Merchant payload: Title Description Title Field Type Description id String Unique identifier of the merchant name String Registered of the merchant city String City where the merchant is registered, could be null post_code String Postal code where the merchant is registered, could be null state String State where the merchant is registered, could be null country String Country where the merchant is registered. The country name is represented in 3 letter format ISO 3166-1 alpha-3 . mcc_category String Category name that the merchant has be registered mcc_code String Numeric code of the category that merchant has be registered Declined Reason payload: Title Description Title Field Type Description response_code String Unique code that represents the declined reason description String A more descriptive explanation of the reason of the declined reason Full payload example: Plain text { "product": "CARDS", "event_type": "DECLINED", "operation_id": "ca0c57d2-b1c9-4bcd-9d5d-8d361cad6fddds1c", "status": "SUCCESS", "data": { "card_id": "ivZPARvNBLOSZx69q4DCBBGUfVhCMsLw", "amount": 100.2, "currency_number": 840, "currency_code": "USD", "exchange_rate": null, "channel": "ECOMMERCE", "created_at": "2024-05-15T21:38:57.677Z", "fees": { "atm_fees": 0, "fx_fees": 0 }, "merchant_data": { "id": "311178830000", "name": "Amazon Es", "city": "Barcelona", "post_code": "16633", "state": "Cataluña", "country": "ESP", "mcc_category": "Electronics Stores", "mcc_code": "5732" }, "declined_reason": { "response_code": "DC", "description": "Transaction declined by the client" } } } Response: No response is need it. Payload example: Plain text {} • [Card transaction clearing pending](https://app.theneo.io/cryptomate/api/webhooks/events/cards/card-transaction-clearing-pending.md): The request webhook is triggered when the transaction was authorized and the clearing process is pending to be evaluated. The request is composed by the following fields: PRODUCT: CARDS EVENT TYPE: CLEARING STATUS: PENDING Data Payload: Title Description Title Field Type Description card_id String Unique identifier of the card that needs the approval bill_amount Decimal with 2 digit precision Amount of the operation will be billed on the system. Since all our cards are issued on USD, all transactions on the field will be on US Dollar bill_currency_number Number Currency expressed on ISO 4217 format bill_currency_code String Currency short name transaction_amount Decimal with 2 digit precision Amount of the operation that client is going to spend. This is the same value as show on the checkout/POS transaction_currency_number Number Currency expressed on ISO 4217 format transaction_currency_code String Currency short name exchange_rate Number If applied, the conversion rate applied to the amout. If not null will be sent. channel String Name of the channel where the transaction is being made. Possible values ATM , POS , ECOMMERCE or Visa Direct created_at Date Time Date and time when the transaction was created fees Object Information about the fees that are involved in the transaction merchant_data Object Information about the merchant that is involved in the transaction Fees payload: Title Description Title Field Type Description atm_fees Decimal with 2 digit precision ATM fee charged to the transaction, if apply. Zero if no cost is incurred fx_fees Decimal with 2 digit precision Currency conversion fee charged to the transaction, if apply. Zero if no cost is incurred Merchant payload: Title Description Title Field Type Description id String Unique identifier of the merchant name String Registered of the merchant city String City where the merchant is registered, could be null post_code String Postal code where the merchant is registered, could be null state String State where the merchant is registered, could be null country String Country where the merchant is registered. The country name is represented in 3 letter format ISO 3166-1 alpha-3 . mcc_category String Category name that the merchant has be registered mcc_code String Numeric code of the category that merchant has be registered Full payload example: Plain text { "product": "CARDS", "event_type": "CLEARING", "operation_id": "ca0c57d2-b1c9-4bcd-9d5d-8d361cad6fddds1c", "status": "PENDING", "data": { "card_id": "ivZPARvNBLOSZx69q4DCBBGUfVhCMsLw", "amount": 100.2, "currency_number": 840, "currency_code": "USD", "exchange_rate": null, "channel": "ECOMMERCE", "created_at": "2024-05-15T21:38:57.677Z", "fees": { "atm_fees": 0, "fx_fees": 0 }, "merchant_data": { "id": "311178830000", "name": "Amazon Es", "city": "Barcelona", "post_code": "16633", "state": "Cataluña", "country": "ESP", "mcc_category": "Electronics Stores", "mcc_code": "5732" } } } Response: No response is need it. Payload example: Plain text {} • [Card transaction clearing failed](https://app.theneo.io/cryptomate/api/webhooks/events/cards/card-transaction-clearing-failed.md): The request webhook is triggered when the transaction was authorized but it has been declined therefore the transaction has been fully reversed. The request is composed by the following fields: PRODUCT: CARDS EVENT TYPE: CLEARING STATUS: FAILED Data Payload: Title Description Title Field Type Description card_id String Unique identifier of the card that needs the approval bill_amount Decimal with 2 digit precision Amount of the operation will be billed on the system. Since all our cards are issued on USD, all transactions on the field will be on US Dollar bill_currency_number Number Currency expressed on ISO 4217 format bill_currency_code String Currency short name transaction_amount Decimal with 2 digit precision Amount of the operation that client is going to spend. This is the same value as show on the checkout/POS transaction_currency_number Number Currency expressed on ISO 4217 format transaction_currency_code String Currency short name exchange_rate Number If applied, the conversion rate applied to the amout. If not null will be sent. channel String Name of the channel where the transaction is being made. Possible values ATM , POS , ECOMMERCE or Visa Direct created_at Date Time Date and time when the transaction was created fees Object Information about the fees that are involved in the transaction merchant_data Object Information about the merchant that is involved in the transaction Fees payload: Title Description Title Field Type Description atm_fees Decimal with 2 digit precision ATM fee charged to the transaction, if apply. Zero if no cost is incurred fx_fees Decimal with 2 digit precision Currency conversion fee charged to the transaction, if apply. Zero if no cost is incurred Merchant payload: Title Description Title Field Type Description id String Unique identifier of the merchant name String Registered of the merchant city String City where the merchant is registered, could be null post_code String Postal code where the merchant is registered, could be null state String State where the merchant is registered, could be null country String Country where the merchant is registered. The country name is represented in 3 letter format ISO 3166-1 alpha-3 . mcc_category String Category name that the merchant has be registered mcc_code String Numeric code of the category that merchant has be registered Full payload example: Plain text { "product": "CARDS", "event_type": "CLEARING", "operation_id": "ca0c57d2-b1c9-4bcd-9d5d-8d361cad6fddds1c", "status": "FAILED", "data": { "card_id": "ivZPARvNBLOSZx69q4DCBBGUfVhCMsLw", "amount": 100.2, "currency_number": 840, "currency_code": "USD", "exchange_rate": null, "channel": "ECOMMERCE", "created_at": "2024-05-15T21:38:57.677Z", "fees": { "atm_fees": 0, "fx_fees": 0 }, "merchant_data": { "id": "311178830000", "name": "Amazon Es", "city": "Barcelona", "post_code": "16633", "state": "Cataluña", "country": "ESP", "mcc_category": "Electronics Stores", "mcc_code": "5732" } } } Response: No response is need it. Payload example: Plain text {} • [Card transaction cleared](https://app.theneo.io/cryptomate/api/webhooks/events/cards/card-transaction-cleared.md): The request webhook is triggered when the transaction was approved and therefore the purchase was fulfilled. The request is composed by the following fields: PRODUCT: CARDS EVENT TYPE: CLEARING STATUS: SUCCESS Data Payload: Title Description Title Field Type Description card_id String Unique identifier of the card that needs the approval bill_amount Decimal with 2 digit precision Amount of the operation will be billed on the system. Since all our cards are issued on USD, all transactions on the field will be on US Dollar bill_currency_number Number Currency expressed on ISO 4217 format bill_currency_code String Currency short name transaction_amount Decimal with 2 digit precision Amount of the operation that client is going to spend. This is the same value as show on the checkout/POS transaction_currency_number Number Currency expressed on ISO 4217 format transaction_currency_code String Currency short name exchange_rate Number If applied, the conversion rate applied to the amout. If not null will be sent. channel String Name of the channel where the transaction is being made. Possible values ATM , POS , ECOMMERCE or Visa Direct created_at Date Time Date and time when the transaction was created fees Object Information about the fees that are involved in the transaction merchant_data Object Information about the merchant that is involved in the transaction Fees payload: Title Description Title Field Type Description atm_fees Decimal with 2 digit precision ATM fee charged to the transaction, if apply. Zero if no cost is incurred fx_fees Decimal with 2 digit precision Currency conversion fee charged to the transaction, if apply. Zero if no cost is incurred Merchant payload: Title Description Title Field Type Description id String Unique identifier of the merchant name String Registered of the merchant city String City where the merchant is registered, could be null post_code String Postal code where the merchant is registered, could be null state String State where the merchant is registered, could be null country String Country where the merchant is registered. The country name is represented in 3 letter format ISO 3166-1 alpha-3 . mcc_category String Category name that the merchant has be registered mcc_code String Numeric code of the category that merchant has be registered Full payload example: Plain text { "product": "CARDS", "event_type": "CLEARING", "operation_id": "ca0c57d2-b1c9-4bcd-9d5d-8d361cad6fddds1c", "status": "SUCCESS", "data": { "card_id": "ivZPARvNBLOSZx69q4DCBBGUfVhCMsLw", "amount": 100.2, "currency_number": 840, "currency_code": "USD", "exchange_rate": null, "channel": "ECOMMERCE", "created_at": "2024-05-15T21:38:57.677Z", "fees": { "atm_fees": 0, "fx_fees": 0 }, "merchant_data": { "id": "311178830000", "name": "Amazon Es", "city": "Barcelona", "post_code": "16633", "state": "Cataluña", "country": "ESP", "mcc_category": "Electronics Stores", "mcc_code": "5732" } } } Response: No response is need it. Payload example: Plain text {} • [Card transaction refund](https://app.theneo.io/cryptomate/api/webhooks/events/cards/card-transaction-refund.md): The request webhook is triggered when the transaction was canceled therefore the amount has been refund. The request is composed by the following fields: PRODUCT: CARDS EVENT TYPE: REFUND STATUS: SUCCESS Data Payload: Title Description Title Field Type Description card_id String Unique identifier of the card that needs the approval bill_amount Decimal with 2 digit precision Amount of the operation will be billed on the system. Since all our cards are issued on USD, all transactions on the field will be on US Dollar bill_currency_number Number Currency expressed on ISO 4217 format bill_currency_code String Currency short name transaction_amount Decimal with 2 digit precision Amount of the operation that client is going to spend. This is the same value as show on the checkout/POS transaction_currency_number Number Currency expressed on ISO 4217 format transaction_currency_code String Currency short name exchange_rate Number If applied, the conversion rate applied to the amout. If not null will be sent. channel String Name of the channel where the transaction is being made. Possible values ATM , POS , ECOMMERCE or Visa Direct created_at Date Time Date and time when the transaction was created fees Object Information about the fees that are involved in the transaction merchant_data Object Information about the merchant that is involved in the transaction Fees payload: Title Description Title Field Type Description atm_fees Decimal with 2 digit precision ATM fee charged to the transaction, if apply. Zero if no cost is incurred fx_fees Decimal with 2 digit precision Currency conversion fee charged to the transaction, if apply. Zero if no cost is incurred Merchant payload: Title Description Title Field Type Description id String Unique identifier of the merchant name String Registered of the merchant city String City where the merchant is registered, could be null post_code String Postal code where the merchant is registered, could be null state String State where the merchant is registered, could be null country String Country where the merchant is registered. The country name is represented in 3 letter format ISO 3166-1 alpha-3 . mcc_category String Category name that the merchant has be registered mcc_code String Numeric code of the category that merchant has be registered Full payload example: Plain text { "product": "CARDS", "event_type": "REFUND", "operation_id": "ca0c57d2-b1c9-4bcd-9d5d-8d361cad6fddds1c", "status": "SUCCESS", "data": { "card_id": "ivZPARvNBLOSZx69q4DCBBGUfVhCMsLw", "amount": 100.2, "currency_number": 840, "currency_code": "USD", "exchange_rate": null, "channel": "ECOMMERCE", "created_at": "2024-05-15T21:38:57.677Z", "fees": { "atm_fees": 0, "fx_fees": 0 }, "merchant_data": { "id": "311178830000", "name": "Amazon Es", "city": "Barcelona", "post_code": "16633", "state": "Cataluña", "country": "ESP", "mcc_category": "Electronics Stores", "mcc_code": "5732" } } } Response: No response is need it. Payload example: Plain text {} • [Card transaction reversal](https://app.theneo.io/cryptomate/api/webhooks/events/cards/card-transaction-reversal.md): The request webhook is triggered when the transaction was reversal by the merchant or the card provider. The request is composed by the following fields: PRODUCT: CARDS EVENT TYPE: REVERSAL STATUS: SUCCESS Data Payload: Title Description Title Field Type Description card_id String Unique identifier of the card that needs the approval bill_amount Decimal with 2 digit precision Amount of the operation will be billed on the system. Since all our cards are issued on USD, all transactions on the field will be on US Dollar bill_currency_number Number Currency expressed on ISO 4217 format bill_currency_code String Currency short name transaction_amount Decimal with 2 digit precision Amount of the operation that client is going to spend. This is the same value as show on the checkout/POS transaction_currency_number Number Currency expressed on ISO 4217 format transaction_currency_code String Currency short name exchange_rate Number If applied, the conversion rate applied to the amout. If not null will be sent. channel String Name of the channel where the transaction is being made. Possible values ATM , POS , ECOMMERCE or Visa Direct created_at Date Time Date and time when the transaction was created fees Object Information about the fees that are involved in the transaction merchant_data Object Information about the merchant that is involved in the transaction Fees payload: Title Description Title Field Type Description atm_fees Decimal with 2 digit precision ATM fee charged to the transaction, if apply. Zero if no cost is incurred fx_fees Decimal with 2 digit precision Currency conversion fee charged to the transaction, if apply. Zero if no cost is incurred Merchant payload: Title Description Title Field Type Description id String Unique identifier of the merchant name String Registered of the merchant city String City where the merchant is registered, could be null post_code String Postal code where the merchant is registered, could be null state String State where the merchant is registered, could be null country String Country where the merchant is registered. The country name is represented in 3 letter format ISO 3166-1 alpha-3 . mcc_category String Category name that the merchant has be registered mcc_code String Numeric code of the category that merchant has be registered Full payload example: Plain text { "product": "CARDS", "event_type": "REVERSAL", "operation_id": "ca0c57d2-b1c9-4bcd-9d5d-8d361cad6fddds1c", "status": "SUCCESS", "data": { "card_id": "ivZPARvNBLOSZx69q4DCBBGUfVhCMsLw", "amount": 100.2, "currency_number": 840, "currency_code": "USD", "exchange_rate": null, "channel": "ECOMMERCE", "created_at": "2024-05-15T21:38:57.677Z", "fees": { "atm_fees": 0, "fx_fees": 0 }, "merchant_data": { "id": "311178830000", "name": "Amazon Es", "city": "Barcelona", "post_code": "16633", "state": "Cataluña", "country": "ESP", "mcc_category": "Electronics Stores", "mcc_code": "5732" } } } Response: No response is need it. Payload example: Plain text {} • [Card 3DS challenge](https://app.theneo.io/cryptomate/api/webhooks/events/cards/card-3ds-challenge.md): When an online transaction is initiated, an additional authentication step may be required to verify the cardholder's identity. This security process, known as 3-D Secure (3DS) authentication, helps ensure that the transaction is legitimate. If triggered, a 3DS challenge will be sent based on the card's configuration. The delivery method (SMS or webhook) is determined by the preference settings in 3DS Configuration endpoint . Webhook Challenge Payload When webhook delivery is configured, your endpoint will receive a JSON payload similar to: JSON { "product": "CARDS", "event_type": "NOTIFICATION_3DS_AUTHORIZATION", "operation_id": "254725c4-70d6-4527-8f5a-fbb324ef77d9", "status": "PENDING", "data": { "merchant_name": "Sephora Digital", "merchant_country_code": "840", "transaction_amount": "100.2", "transaction_currency": "840", "transaction_timestamp": "2023-07-26T09:13:01.748Z", "card_id": "ivZPARvNBLOSZx69q4DCBBGUfVhCMsLw", "code": "254725c4-70d6-4527-8f5a-fbb324ef77d9" } } Challenge Response Endpoint To complete the authentication process, you must use the 3DS authentication response endpoint . • [Withdraw completed](https://app.theneo.io/cryptomate/api/webhooks/events/virtual-wallets/new-deposit-received-copy-1.md): When a deposit is detected on any of your wallets from the products TREASURY and VIRTUAL WALLETS, a notification will be sent to de configured webhook notification (if not configured nothing will be sent). For configure the webhook please sea the management endpoints The request is composed by the following fields: PRODUCT: VIRTUAL_WALLETS EVENT TYPE: WITHDRAW STATUS: SUCCESS | FAILED Data Payload: Title Description Title Field Type Description wallet_id String Unique identifier of the card that needs the approval wallet_address String Address of one of your wallets that received the tokens transaction_hash String Hash of the operation to check on the blockchain. If the transfer is between to virtual wallets the hash will be ‘internal’ blockchain String Blockchain name where the operation was made. For possibles values check the Management/Blockchain endpoint to_wallet_address String Address of the wallet where the tokens are sent amount Decimal with 2 digit precision Amount received token Object Information of the received token created_at Date Time Date and time when the transaction was created Token payload: Title Description Title Field Type Description name String Full name of the token symbol String Short name of the token address String Address of the token contract Full payload example: Plain text { "product": "VIRTUAL_WALLETS", "event_type": "WITHDRAW", "operation_id": "0x1234567890123456789012345678901234567890", "status": "SUCCESS", “client_id”: "ABCD123456", "data": { "wallet_id": "ivZPARvNBLOSZx69q4DCBBGUfVhCMsLw", "wallet_address": "0xff899364c6e15524531ed3739ea3e878eb1c6d86", "blockchain": "POLYGON", "transaction_hash": "0xa348fb3f57c8ecc92ca0aaa858c520432a23cd5e5aeeee3e116fba229891e581", "to_wallet_address": "0xde0da9cb48b9133b9011fbc0a073c71e7cc23830", "amount": "100.1", "token": { "name": "USD Circle", "symbol": "USDC", "address": "0x41e94eb019c0762f9bfcf9fb1e58725bfb0e7582" }, "created_at": "2024-06-28T10:20:56.654-03:00" } } Response: No response is needed • [Simulate](https://app.theneo.io/cryptomate/api/webhooks/simulate.md): The Simulate section allows users to test and replicate transaction events within the API Layer using the account's configured mechanisms. By simulating transactions, users can ensure that the API functions correctly and accurately reflects real-world scenarios. This section is essential for developers to validate the behavior of their applications and ensure seamless integration with the API Layer. This feature is only available on Sandbox environment • [Simulate transaction approval](https://app.theneo.io/cryptomate/api/webhooks/simulate/simulate-transaction-approval.md): This section allows users to simulate the approval of a transaction with a virtual card, mimicking real-world card operations. By adjusting daily, weekly, and monthly limits, users can control and test the spending behavior of virtual cards. This feature provides valuable insights into how transactions are processed and approved within the API layer. Required access level: Operational Access (Level 2) • [Simulate transaction clearing](https://app.theneo.io/cryptomate/api/webhooks/simulate/simulate-transaction-clearing.md): his section enables users to simulate the clearing of transactions, providing a way to test and validate transaction approval processes. Users can create scenarios to mimic transaction authorizations and assess the corresponding response codes and authorization IDs. The functionality allows for thorough testing of transaction handling without affecting real transactions. For execute this clear transaction simulation, first a transaction approval simulation is needed with the same Card Id. Required access level: Operational Access (Level 2) • [Virtual Cards](https://app.theneo.io/cryptomate/api/virtual-cards-1.md): The Virtual Cards API provides users with the ability to create and manage virtual cards for secure online transactions. This functionality allows users to: * **Generate Unique Virtual Card Numbers** : Create distinct virtual card numbers for each transaction or vendor, enhancing security and minimizing the risk of fraud. * **Set Spending Limits** : Define specific spending limits for each virtual card to control and manage expenses effectively. • [Transactions](https://app.theneo.io/cryptomate/api/transactions-1.md): The Transactions API section enables users to retrieve detailed information about various transactions within the system. By accessing this section, users can: * **View Transaction Histories** : Access comprehensive histories of all transactions, providing a clear record of financial activities. * **Retrieve Transaction Details** : Obtain in-depth information about individual transactions, including amounts, dates, and involved parties. * **Receive Status Updates (SOON)** : Get real-time status updates on transactions, ensuring users are always informed about the progress and completion of their transactions. This functionality empowers users to effectively track and manage their transactional activities, offering a clear and detailed overview of all financial operations. • [Cards](https://app.theneo.io/cryptomate/api/cards-1.md): The Cards section explains to the user how to manage card information associated with their accounts. Users can add, update, and remove cards, as well as retrieve details such as card number and expiration date. This section provides essential functionality for handling payment methods within the application. _\> \*\*Note:\*\* Deposits made to cards must be at least 10 USD to be processed._ • [Virtual Cards](https://app.theneo.io/cryptomate/api/cards-1/virtual-cards-2.md): The Virtual Cards API provides users with the ability to create and manage virtual cards for secure online transactions. This functionality allows users to: * **Generate Unique Virtual Card Numbers** : Create distinct virtual card numbers for each transaction or vendor, enhancing security and minimizing the risk of fraud. * **Set Spending Limits** : Define specific spending limits for each virtual card to control and manage expenses effectively. • [Transactions](https://app.theneo.io/cryptomate/api/cards-1/transactions-2.md): The Transactions API section enables users to retrieve detailed information about various transactions within the system. By accessing this section, users can: * **View Transaction Histories** : Access comprehensive histories of all transactions, providing a clear record of financial activities. * **Retrieve Transaction Details** : Obtain in-depth information about individual transactions, including amounts, dates, and involved parties. * **Receive Status Updates (SOON)** : Get real-time status updates on transactions, ensuring users are always informed about the progress and completion of their transactions. This functionality empowers users to effectively track and manage their transactional activities, offering a clear and detailed overview of all financial operations. • [Wallets](https://app.theneo.io/cryptomate/api/wallets-1.md): This section comprises all the API endpoints to interact with `Virtual Wallet`, which is the entry point for the user to make deposits on any available blockchain. • [Holding](https://app.theneo.io/cryptomate/api/holding-1.md): A `Holding Wallet` is a wallet that is created when the user requests to create their first virtual wallet for a given blockchain. This wallet will be used to centralize all deposits made to all virtual wallets on such blockchain. Whenever a deposit is done on a `Virtual Wallet`, the tokens get transferred to the `Holding Wallet` almost immediately. This module allows users to get a `Holding Wallet` balance, information (Alias, address and id) and to withdraw tokens from it. • [Configuration](https://app.theneo.io/cryptomate/api/configuration-1.md): Configuration is a group of endpoints that allows users to manage and query system settings. • [Virtual Wallets](https://app.theneo.io/cryptomate/api/virtual-wallets-1.md): This module offers customers the possibility to generate `Virtual Wallets` on various blockchain networks to send, receive and record balances and movements. It simplifies the management of digital assets and allows to establish automated rules for user flows. All the assets will be stored on a `Holding Wallet` that will be created when the first `Virtual Wallet` is created. There is only one `Holding Wallet` for each blockchain. When a deposit is made to one of the addresses it will accredit it instantly. These `Virtual Wallets` will have a `virtual balance`, which represents the amount of tokens that belongs to those addresses. _\> \*\*Note:\*\* Deposits made to virtual wallets must be at least 1 USD to be processed._ **Virtual Wallets:** Virtual wallets are interfaces that allow users to interact with the blockchain in a more accessible and user-friendly way without the need to directly manage the private keys associated with their digital assets. This reduces the technical complexity and risks associated with the loss or mismanagement of these keys, making blockchain technology more accessible to the average user. Virtual Wallets also have the capability to be deactivated, ensuring that they do not occupy space within the pool of available virtual wallets. This feature allows for better management and allocation of resources, ensuring that only active and necessary wallets consume system resources. **Holding Wallet:** At the core of the Virtual Wallet infrastructure is the Holding Wallet. This is a unique wallet designated for each blockchain, where all users' digital assets are stored. The Holding Wallet is responsible for managing the actual funds and executing transactions on behalf of the Virtual Wallets. This centralized approach allows for greater security and efficiency in the management of digital assets. **Virtual Balance:** Virtual Wallets display to users a virtual balance that reflects the amount of tokens allocated to their specific addresses. However, these real assets are centrally stored in the Holding Wallet. This virtual representation allows for more agile and secure management, eliminating the need for users to interact directly with the blockchain for each operation. **Instant Transactions:** One of the key benefits of Virtual Wallets is the ability to perform instant transactions from the user's perspective. When a deposit is made to a Virtual Wallet address, the balance is updated immediately in the user interface, providing a seamless and delay-free experience. Meanwhile, the underlying transaction on the blockchain is processed in the background and may take a bit longer to confirm, depending on network congestion and conditions. **User Flow Automation:** Virtual Wallets also offer advanced automation capabilities, allowing users to set customized rules for managing user flows. This can include setting up automatic transfers, alerts, and notifications, among other features that significantly enhance the user experience. Automation reduces the need for manual intervention, making digital asset management more efficient and secure. **Financial Management:** The Holding Wallet plays a critical role in financial management. It allows for partial withdrawal of the balance, keeping a reserve ratio against the Virtual Wallets, which facilitates the handling of user funds to generate additional benefits. It is essential to maintain a guarantee fund within the Holding Wallet to ensure that customer withdrawals are always covered. Failing to do so would result in insufficient funds errors when attempting withdrawals. Moreover, if assets are transferred from the Holding Wallet to a Virtual Wallet, the balance of the latter will be updated even if the Holding Wallet does not have sufficient funds to cover that amount. This mechanism can create leverage by effectively using capital beyond the immediate balance of the Holding Wallet. • [Wallets](https://app.theneo.io/cryptomate/api/virtual-wallets-1/wallets-2.md): This section comprises all the API endpoints to interact with `Virtual Wallet`, which is the entry point for the user to make deposits on any available blockchain. • [Holding](https://app.theneo.io/cryptomate/api/virtual-wallets-1/holding-2.md): A `Holding Wallet` is a wallet that is created when the user requests to create their first virtual wallet for a given blockchain. This wallet will be used to centralize all deposits made to all virtual wallets on such blockchain. Whenever a deposit is done on a `Virtual Wallet`, the tokens get transferred to the `Holding Wallet` almost immediately. This module allows users to get a `Holding Wallet` balance, information (Alias, address and id) and to withdraw tokens from it. • [Configuration](https://app.theneo.io/cryptomate/api/virtual-wallets-1/configuration-2.md): Configuration is a group of endpoints that allows users to manage and query system settings. • [Accounts](https://app.theneo.io/cryptomate/api/accounts-1.md): The accounts module allows to create and manage multiple accounts, each with their own wallets. This allows to manage crypto assets in a more organized way, and also allows to create multiple wallets for a given blockchain. • [Tokens](https://app.theneo.io/cryptomate/api/tokens-1.md): The Tokens module offers users information about the tokens that are currently listed and available for a given Blockchain • [Treasury](https://app.theneo.io/cryptomate/api/treasury-1.md): The treasury module offers you a seamless way to integrate the functionalities of a decentralized wallet, along with the capability to send and receive your crypto assets. This module covers everything from setting up a single wallet to managing multiple ones, all without delving into the complexities of web3.0 terminology. This ensures a smoother integration and user experience overall. _\> \*\*Note:\*\* Deposits made to treasury wallets must be at least 1 USD to be processed._ • [Accounts](https://app.theneo.io/cryptomate/api/treasury-1/accounts-2.md): The accounts module allows to create and manage multiple accounts, each with their own wallets. This allows to manage crypto assets in a more organized way, and also allows to create multiple wallets for a given blockchain. • [Wallets](https://app.theneo.io/cryptomate/api/treasury-1/wallets-3.md): The wallets module is useful to make transactions directly with a given blockchain. It is the place where you can manage your wallets, transfer tokens or check the balance on those wallets • [Tokens](https://app.theneo.io/cryptomate/api/treasury-1/tokens-2.md): The Tokens module offers users information about the tokens that are currently listed and available for a given Blockchain • [Clients](https://app.theneo.io/cryptomate/api/clients.md): The Management API is your all-in-one powerhouse for steering the ship of account management. It functions as a sophisticated toolkit, empowering users to seamlessly create, tweak, or bid farewell to clients, accounts, users, and access levels. Acting as a refined interface, it grants users granular control over the organizational account landscape, facilitating tasks such as spinning up new clients or tweaking existing configurations on the fly. Need to sculpt user accounts to fit the evolving needs of your operation? You got it. It doesn't stop there – the API lets you fine-tune access levels, ensuring a secure and compliant environment. And when it's time for some digital spring cleaning, the API's deletion functionalities let you tidy up by retiring entities that have overstayed their welcome. It's like having a backstage pass to the techy side of account management without the fuss. For using this API you need to use your API key that have `MANAGEMENT` permission. • [Operations](https://app.theneo.io/cryptomate/api/operations-1.md): Get all the operations available in the platform. You can use this information to create new credentials for your clients. • [Blockchains](https://app.theneo.io/cryptomate/api/blockchains-1.md): Get all the blockchains available in the platform. You can use this information to create new credentials for your clients or using every other endpoints that ask for the blockchain where you want to operate. • [Configurations](https://app.theneo.io/cryptomate/api/configurations-1.md): Manage the company configurations from here, like changing the payment destination address for each blockchain. • [Contracted Products](https://app.theneo.io/cryptomate/api/contracted-products-1.md): Get information about the products that a client has contracted within the platform. This includes resources like wallets and virtual cards. You can use this information to monitor usage, enforce limits, or as a reference when performing operations that depend on the availability or capacity of contracted services. • [Management](https://app.theneo.io/cryptomate/api/management-1.md): The Management API is your all-in-one powerhouse for steering the ship of account management. It functions as a sophisticated toolkit, empowering users to seamlessly create, tweak, or bid farewell to clients, accounts, users, and access levels. Acting as a refined interface, it grants users granular control over the organizational account landscape, facilitating tasks such as spinning up new clients or tweaking existing configurations on the fly. Need to sculpt user accounts to fit the evolving needs of your operation? You got it. It doesn't stop there – the API lets you fine-tune access levels, ensuring a secure and compliant environment. And when it's time for some digital spring cleaning, the API's deletion functionalities let you tidy up by retiring entities that have overstayed their welcome. It's like having a backstage pass to the techy side of account management without the fuss. For using this API you need to use your API key that have `MANAGEMENT` permission. • [Clients](https://app.theneo.io/cryptomate/api/management-1/clients-1.md): The Management API is your all-in-one powerhouse for steering the ship of account management. It functions as a sophisticated toolkit, empowering users to seamlessly create, tweak, or bid farewell to clients, accounts, users, and access levels. Acting as a refined interface, it grants users granular control over the organizational account landscape, facilitating tasks such as spinning up new clients or tweaking existing configurations on the fly. Need to sculpt user accounts to fit the evolving needs of your operation? You got it. It doesn't stop there – the API lets you fine-tune access levels, ensuring a secure and compliant environment. And when it's time for some digital spring cleaning, the API's deletion functionalities let you tidy up by retiring entities that have overstayed their welcome. It's like having a backstage pass to the techy side of account management without the fuss. For using this API you need to use your API key that have `MANAGEMENT` permission. • [Operations](https://app.theneo.io/cryptomate/api/management-1/operations-2.md): Get all the operations available in the platform. You can use this information to create new credentials for your clients. • [Blockchains](https://app.theneo.io/cryptomate/api/management-1/blockchains-2.md): Get all the blockchains available in the platform. You can use this information to create new credentials for your clients or using every other endpoints that ask for the blockchain where you want to operate. • [Configurations](https://app.theneo.io/cryptomate/api/management-1/configurations-2.md): Manage the company configurations from here, like changing the payment destination address for each blockchain. • [Contracted Products](https://app.theneo.io/cryptomate/api/management-1/contracted-products-2.md): Get information about the products that a client has contracted within the platform. This includes resources like wallets and virtual cards. You can use this information to monitor usage, enforce limits, or as a reference when performing operations that depend on the availability or capacity of contracted services. • [Cards](https://app.theneo.io/cryptomate/api/api-1/cards-2.md): The Cards section explains to the user how to manage card information associated with their accounts. Users can add, update, and remove cards, as well as retrieve details such as card number and expiration date. This section provides essential functionality for handling payment methods within the application. _\> \*\*Note:\*\* Deposits made to cards must be at least 10 USD to be processed._ • [Virtual Cards](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3.md): The Virtual Cards API provides users with the ability to create and manage virtual cards for secure online transactions. This functionality allows users to: * **Generate Unique Virtual Card Numbers** : Create distinct virtual card numbers for each transaction or vendor, enhancing security and minimizing the risk of fraud. * **Set Spending Limits** : Define specific spending limits for each virtual card to control and manage expenses effectively. • [Create virtual card](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/create-virtual-card-3.md): Creates a new virtual card. On the creation of the card, you will need to choose the way that each transaction made by the client will be approved. **WEBHOOK** approval method, means that on every purchase that the client will do with the card, a notification will be sent to the configured notification address with the transaction information on it. A response to it ll be required to approve the transaction. **TOPUP** approval method is used to approve transactions based on the balance of a crypto wallet associated with the virtual card. Each virtual card has a unique, dedicated wallet tied to it. When a transaction is attempted, the following rules apply: 1. **Sufficient Balance:** The transaction will only be approved if the associated wallet contains the required amount of cryptocurrency to cover the cost. 2. **Limit Compliance:** The transaction must also respect any pre-defined limits for the card (such as daily, weekly, or monthly transaction limits). Required access level: Operational Access (Level 2) • [Get virtual card](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/get-virtual-card-3.md): Get all the information of a particular virtual card Required access level: Read-Only Access (Level 1) • [List virtual cards](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/list-virtual-cards-3.md): Returns all active cards. Required access level: Read-Only Access (Level 1) • [Delete virtual card](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/delete-virtual-card-3.md): Remove and disable the selected card. After this action the specified card will be permanently disable and the action cannot be undone. Required access level: Operational Access (Level 2) • [Get Top Up wallets](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/get-top-up-wallets-3.md): Get all top-up wallets of a particular virtual card, this is only available for cards of type TOP\_UP Required access level: Read-Only Access (Level 1) • [Get PAN (html)](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/get-pan-html-3.md): Get the PAN of the selected card as a link that needs to be embedded. The link generated can be open only once and it's time to live is of 60 seconds once opened. Required access level: Operational Access (Level 2) • [Update virtual card limits](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/update-virtual-card-limits-3.md): Updates the spending limits of a particular virtual card Required access level: Operational Access (Level 2) • [Update virtual card email](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/update-virtual-card-email-2.md): Required access level: Operational Access (Level 2) • [Update virtual card phone](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/update-virtual-card-phone-2.md): Required access level: Operational Access (Level 2) • [Override virtual balance](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/override-virtual-balance-3.md): Override the virtual balance of a wallet associated with a virtual card. If the card already has a virtual balance, the specified amount will replace the existing balance. Only positive values and zero are allowed; negative values are not permitted. This only works for virtual cards where the approval method is `TOP_UP`. Required access level: Operational Access (Level 2) • [Unblock card](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/unblock-card-2.md): This endpoint reverses the BLOCKED status of a card and reactivates it for use. Cards may be blocked because they exceeded the maximum number of attempts for entering incorrect PIN, CVV, or expiry date information. Required access level: Operational Access (Level 2) Warning: Once this method is successfully called, the card's status will be set to ACTIVE , regardless of its previous status or whether it was unblocked. • [3DS configuration](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/3ds-configuration-2.md): During a transaction authentication, the default option to verify the cardholder’s identity is to send a one-time password (OTP) via SMS. It can opt in for 3DS configuration. By enabling 3DS Configuration, you can decide the method to receive a one-time password (OTP) via SMS or via Webhook (using the URL provide by the webhook configuration). This one-time password (OTP) is sent and is need it to validate the 3DS Challenge using the [3DS Authentication Respond endpoint](676d48ae04b42f4b0fb94bf6/66477b181a27c1b1095be74e/672ce320d695b52539947073/67c5dea9897cf5b079b98046). Required access level: Operational Access (Level 2) • [3DS authentication respond](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/3ds-authentication-respond-2.md): When an online transaction is triggered, the cardholder may or may not need to authenticate their identity as an extra step to ensure this transaction is 3DS certified. Use this endpoint to respond to a notification which we sent you when a 3DS authentication for your card. You need to response using the code with this endpoint within 5 minutes from the transaction timestamp otherwise will be failed. Required access level: Operational Access (Level 2) • [Freeze or Unfreeze card](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/freeze-or-unfreeze-card-2.md): This endpoint allows for the freezing or unfreezing of the card. Required access level: Admin Access (Level 3) • [Update PIN](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/update-pin-3.md): This endpoint allows to update the PIN for the specific card. The PIN must follow these rules: * Length: 4–12 digits. * Non-consecutive identical digits: No more than two identical digits in non-consecutive positions (e.g., 124758). * Consecutive repeated digits: No more than two repeated digits in a row (e.g., 112441). Required access level: Admin Access (Level 3) • [Reissue Card](https://app.theneo.io/cryptomate/api/api-1/cards-2/virtual-cards-3/reissue-card-3.md): Warning: This endpoint allows you to generate a new number, CVV and expiry date for a given card. When a card with a givencardID is lost, damaged or suspected of fraudulent use, this endpoint will generate a new number, CVV and expiry date for your card with the same cardID. If the card was previously tokenized and provisioned to a mobile wallet (e.g. Google Pay), the newly created card should remain linked to the mobile wallet. However, for subscription-based services, the cardholder may need to re-enter the new card details and verify the card again. While the 16-digit Number, CVV, and expiry date will change, the cardIdremains the same as well the balance, movements and other information will remain unchanged. Required access level: Admin Access (Level 3) • [Transactions](https://app.theneo.io/cryptomate/api/api-1/cards-2/transactions-3.md): The Transactions API section enables users to retrieve detailed information about various transactions within the system. By accessing this section, users can: * **View Transaction Histories** : Access comprehensive histories of all transactions, providing a clear record of financial activities. * **Retrieve Transaction Details** : Obtain in-depth information about individual transactions, including amounts, dates, and involved parties. * **Receive Status Updates (SOON)** : Get real-time status updates on transactions, ensuring users are always informed about the progress and completion of their transactions. This functionality empowers users to effectively track and manage their transactional activities, offering a clear and detailed overview of all financial operations. • [Search card transactions](https://app.theneo.io/cryptomate/api/api-1/cards-2/transactions-3/search-card-transactions-2.md): Search the different transactions on specified card. To track when a virtual balance override occurs, include the parameter: * `**operation**` with the value `**OVERRIDE_VIRTUAL_BALANCE**`. When this operation is triggered: * The optional fields `**original_balance**` for the balances before the event and `**new_balance**` setted in the virtual balances of the card will be populated with their respective values. If a transaction is rejected (with the value `**TRANSACTION_REJECTED**`), the response will include an optional `declined_reason` field. For a complete list of possible values and their meanings, refer to the [**Declined Reason**](676d48ae04b42f4b0fb94bf6/66477b181a27c1b1095be74e/6647aa071a27c1b1096098e6/68adc73376bb18a8413bc238) section. • [Virtual Wallets](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2.md): This module offers customers the possibility to generate `Virtual Wallets` on various blockchain networks to send, receive and record balances and movements. It simplifies the management of digital assets and allows to establish automated rules for user flows. All the assets will be stored on a `Holding Wallet` that will be created when the first `Virtual Wallet` is created. There is only one `Holding Wallet` for each blockchain. When a deposit is made to one of the addresses it will accredit it instantly. These `Virtual Wallets` will have a `virtual balance`, which represents the amount of tokens that belongs to those addresses. _\> \*\*Note:\*\* Deposits made to virtual wallets must be at least 1 USD to be processed._ **Virtual Wallets:** Virtual wallets are interfaces that allow users to interact with the blockchain in a more accessible and user-friendly way without the need to directly manage the private keys associated with their digital assets. This reduces the technical complexity and risks associated with the loss or mismanagement of these keys, making blockchain technology more accessible to the average user. Virtual Wallets also have the capability to be deactivated, ensuring that they do not occupy space within the pool of available virtual wallets. This feature allows for better management and allocation of resources, ensuring that only active and necessary wallets consume system resources. **Holding Wallet:** At the core of the Virtual Wallet infrastructure is the Holding Wallet. This is a unique wallet designated for each blockchain, where all users' digital assets are stored. The Holding Wallet is responsible for managing the actual funds and executing transactions on behalf of the Virtual Wallets. This centralized approach allows for greater security and efficiency in the management of digital assets. **Virtual Balance:** Virtual Wallets display to users a virtual balance that reflects the amount of tokens allocated to their specific addresses. However, these real assets are centrally stored in the Holding Wallet. This virtual representation allows for more agile and secure management, eliminating the need for users to interact directly with the blockchain for each operation. **Instant Transactions:** One of the key benefits of Virtual Wallets is the ability to perform instant transactions from the user's perspective. When a deposit is made to a Virtual Wallet address, the balance is updated immediately in the user interface, providing a seamless and delay-free experience. Meanwhile, the underlying transaction on the blockchain is processed in the background and may take a bit longer to confirm, depending on network congestion and conditions. **User Flow Automation:** Virtual Wallets also offer advanced automation capabilities, allowing users to set customized rules for managing user flows. This can include setting up automatic transfers, alerts, and notifications, among other features that significantly enhance the user experience. Automation reduces the need for manual intervention, making digital asset management more efficient and secure. **Financial Management:** The Holding Wallet plays a critical role in financial management. It allows for partial withdrawal of the balance, keeping a reserve ratio against the Virtual Wallets, which facilitates the handling of user funds to generate additional benefits. It is essential to maintain a guarantee fund within the Holding Wallet to ensure that customer withdrawals are always covered. Failing to do so would result in insufficient funds errors when attempting withdrawals. Moreover, if assets are transferred from the Holding Wallet to a Virtual Wallet, the balance of the latter will be updated even if the Holding Wallet does not have sufficient funds to cover that amount. This mechanism can create leverage by effectively using capital beyond the immediate balance of the Holding Wallet. • [Wallets](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/wallets-4.md): This section comprises all the API endpoints to interact with `Virtual Wallet`, which is the entry point for the user to make deposits on any available blockchain. • [Create Virtual Wallet](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/wallets-4/create-virtual-wallet-3.md): Creates a new virtual wallet with an alias, for a specific blockchain. Required access level: Operational Access (Level 2) • [Get all Virtual Wallets](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/wallets-4/get-all-virtual-wallets-3.md): Retrieves all existing virtual wallets for a given blockchain. Required access level: Read-Only Access (Level 1) • [Get Virtual Wallet by ID](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/wallets-4/get-virtual-wallet-by-id-3.md): Retrieves all the information of a virtual wallet by it's ID. Required access level: Read-Only Access (Level 1) • [Update Virtual Wallet](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/wallets-4/update-virtual-wallet-3.md): Updates the virtual wallet's alias. Required access level: Operational Access (Level 2) • [Delete Virtual Wallet](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/wallets-4/delete-virtual-wallet-3.md): Deletes a virtual wallet by ID. If the wallet has some virtual balance it can't be deleted. Required access level: Operational Access (Level 2) • [Get total Virtual Balances by blockchain](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/wallets-4/get-total-virtual-balances-by-blockchain-3.md): Retrieves the total sum of Virtual Balances across all Virtual Wallets within a specific blockchain. This sum is calculated as the combined total of all virtual balances held within the blockchain. Required access level: Read-Only Access (Level 1) • [Get balance from a Virtual Wallet](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/wallets-4/get-balance-from-a-virtual-wallet-3.md): Retrieves the `balance` from a specific `Virtual Wallet` by it's id. Required access level: Read-Only Access (Level 1) • [Withdraw from Virtual Wallet](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/wallets-4/withdraw-from-virtual-wallet-3.md): This initiates a request to transfer tokens from one of the Virtual Wallets to an external wallet, facilitated by the Holding Wallet. When viewing the transaction in the explorer, it will display the transaction as originating from the Holding Wallet address. The Holding Wallet must contain a sufficient balance to complete the transaction, otherwise, an exception will occur, and the transaction will not get executed. Required access level: Operational Access (Level 2) Warning x-idempotency-key Webhook WITHDRAW WEBHOOK • [Enable/disable Virtual Wallet](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/wallets-4/enable-disable-virtual-wallet-3.md): Enable or disable a virtual wallet. If a virtual wallet is disabled then deposits won't be detected automatically. Disable virtual wallets to reduce maintenance costs. Required access level: Operational Access (Level 2) • [Get movements](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/wallets-4/get-movements-3.md): Retrieve the most recent movements associated with a specified wallet, allowing users to track and monitor the financial activity within the selected account. By adjusting the optional parameter "size," users can customize the number of movements returned for more precise analysis. This feature requires Operational Access (Level 2) authorization for secure access to movement data. Obtain the last 4 movement made by the selected wallet. It is possible to change the number of item obtained using the parameter “size” Additionally, using the parameter “paging\_state\_token” you can retreive more options, only if the previous answer has a value in the respose “paging\_state\_token”. Required access level: Operational Access (Level 2) • [Associate client](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/wallets-4/associate-client-3.md): Associates a company client with an Active Management virtual wallet, enabling the client to perform ramp operations using that wallet. Required access level: Operational Access (Level 3) • [Holding](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/holding-3.md): A `Holding Wallet` is a wallet that is created when the user requests to create their first virtual wallet for a given blockchain. This wallet will be used to centralize all deposits made to all virtual wallets on such blockchain. Whenever a deposit is done on a `Virtual Wallet`, the tokens get transferred to the `Holding Wallet` almost immediately. This module allows users to get a `Holding Wallet` balance, information (Alias, address and id) and to withdraw tokens from it. • [Get Holding Wallet balance by blockchain](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/holding-3/get-holding-wallet-balance-by-blockchain-3.md): Retrieves the current balance of the Holding Wallet within a specified blockchain. Required access level: Read-Only Access (Level 1) • [Get Holding Wallet balance info](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/holding-3/get-holding-wallet-balance-info-3.md): Retrieves the information for the Holding Wallet within a specified blockchain. Required access level: Read-Only Access (Level 1) • [Withdraw from Holding Wallet](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/holding-3/withdraw-from-holding-wallet-3.md): This initiates a request to transfer tokens from the user’s Holding Wallet to an external wallet, for a given blockchain. The Holding Wallet must contain a sufficient balance to complete the transaction, otherwise, an exception will occur, and the transaction will not get executed. Required access level: Operational Access (Level 2) Warning x-idempotency-key • [Configuration](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/configuration-3.md): Configuration is a group of endpoints that allows users to manage and query system settings. • [Get available blockchains](https://app.theneo.io/cryptomate/api/api-1/virtual-wallets-2/configuration-3/get-available-blockchains-3.md): This endpoint allows users to retrieve a list of available blockchains for the virtual wallets module. Users can access this endpoint to get a comprehensive list of supported blockchains. Required access level: Read-Only Access (Level 1) • [Treasury](https://app.theneo.io/cryptomate/api/api-1/treasury-2.md): The treasury module offers you a seamless way to integrate the functionalities of a decentralized wallet, along with the capability to send and receive your crypto assets. This module covers everything from setting up a single wallet to managing multiple ones, all without delving into the complexities of web3.0 terminology. This ensures a smoother integration and user experience overall. _\> \*\*Note:\*\* Deposits made to treasury wallets must be at least 1 USD to be processed._ • [Accounts](https://app.theneo.io/cryptomate/api/api-1/treasury-2/accounts-3.md): The accounts module allows to create and manage multiple accounts, each with their own wallets. This allows to manage crypto assets in a more organized way, and also allows to create multiple wallets for a given blockchain. • [Get all accounts](https://app.theneo.io/cryptomate/api/api-1/treasury-2/accounts-3/get-all-accounts-3.md): Retrieves all the accounts. Required access level: Read-Only Access (Level 1) • [Create account](https://app.theneo.io/cryptomate/api/api-1/treasury-2/accounts-3/create-account-3.md): Creates a new account. Required access level: Operational Access (Level 2) • [Edit account](https://app.theneo.io/cryptomate/api/api-1/treasury-2/accounts-3/edit-account-3.md): Modifies the account information. Required access level: Operational Access (Level 2) • [Delete account](https://app.theneo.io/cryptomate/api/api-1/treasury-2/accounts-3/delete-account-3.md): Delete the specified account. An account cannot be deleted if it's has any wallets associated with it. Required access level: Operational Access (Level 2) • [Wallets](https://app.theneo.io/cryptomate/api/api-1/treasury-2/wallets-5.md): The wallets module is useful to make transactions directly with a given blockchain. It is the place where you can manage your wallets, transfer tokens or check the balance on those wallets • [Get wallet](https://app.theneo.io/cryptomate/api/api-1/treasury-2/wallets-5/get-wallet-2.md): Retrieves a wallet by ID. Required access level: Read-Only Access (Level 1) • [Get all wallets](https://app.theneo.io/cryptomate/api/api-1/treasury-2/wallets-5/get-all-wallets-2.md): Retrieves all the wallets for the specified account. Required access level: Read-Only Access (Level 1) • [Create wallet](https://app.theneo.io/cryptomate/api/api-1/treasury-2/wallets-5/create-wallet-2.md): Creates a new wallet on the account. Required access level: Operational Access (Level 2) • [Update wallet](https://app.theneo.io/cryptomate/api/api-1/treasury-2/wallets-5/update-wallet-2.md): Modifies the wallet information. Required access level: Operational Access (Level 2) • [Delete wallet](https://app.theneo.io/cryptomate/api/api-1/treasury-2/wallets-5/delete-wallet-2.md): Required access level: Operational Access (Level 2) • [Get balance](https://app.theneo.io/cryptomate/api/api-1/treasury-2/wallets-5/get-balance-2.md): Returns the balance of all the listed tokens from the blockchain of a wallet, with the amount of them even if they are 0. Required access level: Read-Only Access (Level 1) • [Transfer token](https://app.theneo.io/cryptomate/api/api-1/treasury-2/wallets-5/transfer-token-2.md): Transfer any of the listed tokens that are in your MPC wallet to another wallet (internal or external). The status determines the transaction state. Normally, the service will return `SUCCESSFUL` or `FAILED` . In some cases, if the blockchain is congested, the service may return a `PENDING` state, which means that the transaction is still waiting to be processed. But sometimes, due to variations in gas prices from block to block, a transaction may be in a state where it was sent to be processed but the blockchain did not program it to be executed. In these cases, the transaction will be marked as `MANUAL_CHECK` and will need to be verified manually. Required access level: Operational Access (Level 2) Warning x-idempotency-key • [Tokens](https://app.theneo.io/cryptomate/api/api-1/treasury-2/tokens-3.md): The Tokens module offers users information about the tokens that are currently listed and available for a given Blockchain • [Get listed tokens by blockchain](https://app.theneo.io/cryptomate/api/api-1/treasury-2/tokens-3/get-listed-tokens-by-blockchain-3.md): Returns a list of key-value elements composed by the token ticker and the token contract address. Required access level: Read-Only Access (Level 1) • [Get tokens](https://app.theneo.io/cryptomate/api/api-1/treasury-2/tokens-3/get-tokens-2.md): Returns a list of key-value elements composed by the token ticker and the token contract address. Required access level: Read-Only Access (Level 1) • [Management](https://app.theneo.io/cryptomate/api/api-1/management-2.md): The Management API is your all-in-one powerhouse for steering the ship of account management. It functions as a sophisticated toolkit, empowering users to seamlessly create, tweak, or bid farewell to clients, accounts, users, and access levels. Acting as a refined interface, it grants users granular control over the organizational account landscape, facilitating tasks such as spinning up new clients or tweaking existing configurations on the fly. Need to sculpt user accounts to fit the evolving needs of your operation? You got it. It doesn't stop there – the API lets you fine-tune access levels, ensuring a secure and compliant environment. And when it's time for some digital spring cleaning, the API's deletion functionalities let you tidy up by retiring entities that have overstayed their welcome. It's like having a backstage pass to the techy side of account management without the fuss. For using this API you need to use your API key that have `MANAGEMENT` permission. • [Clients](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2.md): The Management API is your all-in-one powerhouse for steering the ship of account management. It functions as a sophisticated toolkit, empowering users to seamlessly create, tweak, or bid farewell to clients, accounts, users, and access levels. Acting as a refined interface, it grants users granular control over the organizational account landscape, facilitating tasks such as spinning up new clients or tweaking existing configurations on the fly. Need to sculpt user accounts to fit the evolving needs of your operation? You got it. It doesn't stop there – the API lets you fine-tune access levels, ensuring a secure and compliant environment. And when it's time for some digital spring cleaning, the API's deletion functionalities let you tidy up by retiring entities that have overstayed their welcome. It's like having a backstage pass to the techy side of account management without the fuss. For using this API you need to use your API key that have `MANAGEMENT` permission. • [Get Supported Countries](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/get-supported-countries-2.md): Get the three-letter alpha-3 country code, as defined in the ISO 3166-1 spec, and ISO 3166-2 subdivision codes for supported countries. • [Get Identification Types](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/get-identification-types-3.md): Get identification types that CryptoMate will accept for individuals by region needed to create a company client. • [Get Client Requiered Documentation](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/get-client-requiered-documentation-3.md): Retrieves the documentation requirements and KYC checklist needed to create a company client. This endpoint returns astructured checklist that defines which identity documents are required, accepted document types, and imaging requirements (front/back) for client onboarding. • [Create Client](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/create-client-3.md): Creates a new company client with KYC information. Requiered for Bank Ramp and Credit Card Ramp operations. At least one document must be submitted. The `status` field represents the current lifecycle state of the client and can take one of the following values: `REJECTED`, `PENDING`, `ACTIVE`, or `INCOMPLETE`. Upon client creation, the status is set to `PENDING` by default. However, if the request includes `"bank_ramp": false`, the client will be created with `ACTIVE` status instead. The `INCOMPLETE` status indicates that the KYC process has not been successfully completed due to missing or invalid required documentation. The `REJECTED` status indicates that the client has failed compliance or verification checks. Required access level: Admin Access (Level 3) • [Get client](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/get-client-3.md): The `status` field represents the current lifecycle state of the client and can take one of the following values: `REJECTED`, `PENDING`, `ACTIVE`, or `INCOMPLETE`. Upon client creation, the status is set to `PENDING` by default. The `INCOMPLETE` status indicates that the KYC process has not been successfully completed due to missing or invalid required documentation. The `REJECTED` status indicates that the client has failed compliance or verification checks. Required access level: Admin Access (Level 3) • [Delete client](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/delete-client-2.md): Required access level: Admin Access (Level 3) • [Get all clients](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/get-all-clients-2.md) • [Update client](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/update-client-3.md): Required access level: Admin Access (Level 3) • [Create provider customer](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/create-provider-customer-3.md): Creates a new client-provider mapping to enable ramp operations. For individual client ramp operations, set the provider field to `BRIDGE` in the request body. Required access level: Admin Access (Level 3) • [Get Bank Account by ID](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/get-bank-account-by-id-2.md): Required access level: View Access (Level 1) • [Delete Bank Account](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/delete-bank-account-2.md): Required access level: Admin Access (Level 3) • [Get All Bank Accounts](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/get-all-bank-accounts-3.md): Required access level: View Access (Level 1) • [Create US Bank Account](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/create-us-bank-account-2.md): Required access level: Admin Access (Level 3) • [Create SPEI Bank Account](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/create-spei-bank-account-3.md): Required access level: Admin Access (Level 3) • [Create SEPA Bank Account](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/create-sepa-bank-account-3.md): Required access level: Admin Access (Level 3) • [Create PIX Bank Account](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/create-pix-bank-account-3.md): Required access level: Admin Access (Level 3) • [Get Pending Documents for Client](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/get-pending-documents-for-client-3.md): Obtain a list of document types required to complete the onboarding of a new client when the status is not ACTIVE or REJECTED. Required access level: Admin Access (Level 1) • [Create Business Client](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/create-business-client-3.md): This endpoint allows you to create a new business client (company/organization) in the system. Business clients undergo KYB (Know Your Business) verification and require more detailed information than individual clients. Authentication This endpoint requires API key authentication via the x-api-key header. Overview When creating a business client, you must provide: * Basic business information (legal name, type, industry) * Registered address (and optionally a physical address if different) * At least one associated person with control and one with signing authority * At least one tax identification document (EIN, TIN, VAT, etc.) * High-risk activity declarations * Business Formation Documentation * Ownership Information * Proof of Nature of Business High-Risk Business Detection If the business selects any high-risk activity other than none\_of\_the\_above, the following fields become required: * account\_purpose * source\_of\_funds * source\_of\_funds\_description * estimated\_annual\_revenue\_usd * expected\_monthly\_payments\_usd * high\_risk\_activities\_explanation Conditional Fields account\_purpose = other —> account\_purpose\_other conducts\_money\_services= true —> conducts\_money\_services\_description, compliance\_screening\_explanation telegram = true —> username Associated Persons Requirements * At least one person must have has\_control: true * At least one person must have is\_signer: true * The same person can have both roles • [Get Business Industries](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/get-business-industries-3.md): Returns an array of business industry objects. • [Get Business Identifications by Country](https://app.theneo.io/cryptomate/api/api-1/management-2/clients-2/get-business-identifications-by-country-3.md): Returns the list of available tax identification types for businesses based on the specified country. • [Operations](https://app.theneo.io/cryptomate/api/api-1/management-2/operations-3.md): Get all the operations available in the platform. You can use this information to create new credentials for your clients. • [Get all operations](https://app.theneo.io/cryptomate/api/api-1/management-2/operations-3/get-all-operations-3.md): Returns all the operations available in the platform. Required access level: Admin Access (Level 3) • [Get operation](https://app.theneo.io/cryptomate/api/api-1/management-2/operations-3/get-operation-3.md): Just returns the operations that you want. To use this endpoint, you need to have at least the role: administrator • [Blockchains](https://app.theneo.io/cryptomate/api/api-1/management-2/blockchains-3.md): Get all the blockchains available in the platform. You can use this information to create new credentials for your clients or using every other endpoints that ask for the blockchain where you want to operate. • [Get all blockchains](https://app.theneo.io/cryptomate/api/api-1/management-2/blockchains-3/get-all-blockchains-3.md): Returns all the blockchains available in the platform. Required access level: Admin Access (Level 3) • [Configurations](https://app.theneo.io/cryptomate/api/api-1/management-2/configurations-3.md): Manage the company configurations from here, like changing the payment destination address for each blockchain. • [Set payment destination](https://app.theneo.io/cryptomate/api/api-1/management-2/configurations-3/set-payment-destination-3.md): Sets the treasury wallet and the fee wallet that all the payments will sent after being completed. If fee\_deposit\_address is not provided, you ll not be able to create any payments that contains fees. To remove just the fee address, you cannot send it or send it as null. Required access level: Admin Access (Level 3) • [Get payment destination](https://app.theneo.io/cryptomate/api/api-1/management-2/configurations-3/get-payment-destination-3.md): G ets the treasury wallet and the fee address for holding the payments received on the selected blockchain Required access level: Admin Access (Level 3) • [Delete payment destination](https://app.theneo.io/cryptomate/api/api-1/management-2/configurations-3/delete-payment-destination-3.md): Removes the address of the payment destination for the selected blockchain. Required access level: Admin Access (Level 3) • [Contracted Products](https://app.theneo.io/cryptomate/api/api-1/management-2/contracted-products-3.md): Get information about the products that a client has contracted within the platform. This includes resources like wallets and virtual cards. You can use this information to monitor usage, enforce limits, or as a reference when performing operations that depend on the availability or capacity of contracted services. • [Get contracted products](https://app.theneo.io/cryptomate/api/api-1/management-2/contracted-products-3/get-contracted-products-3.md): Retrieve the number of **contracted** products for the authenticated client. This includes treasury wallets , virtual wallets , and virtual cards . Required access level: Admin Access (Level 3) • [Get all contracted and used products](https://app.theneo.io/cryptomate/api/api-1/management-2/contracted-products-3/get-all-contracted-and-used-products-2.md): Retrieve the number of **contracted** and currently **used** products for the authenticated client. This includes treasury wallets , virtual wallets , and virtual cards . Required access level: Admin Access (Level 3) • [Events](https://app.theneo.io/cryptomate/api/events-1.md): The Events section provides detailed information about the notifications that are triggered by our webhook service. Users can leverage this section to gain insights into real-time updates and track significant events within their application. Security: For avoid that someone can call the client side simulating being a real call. The request will have a security header called X-Webhook-Key management configuration The request is composed by the following fields: PRODUCT: string EVENT TYPE: string STATUS: string OPERATION ID: string DATA: object • [Simulate](https://app.theneo.io/cryptomate/api/simulate-1.md): The Simulate section allows users to test and replicate transaction events within the API Layer using the account’s configured mechanisms. By simulating transactions, users can ensure that the API functions correctly and accurately reflects real-world scenarios. This section is essential for developers to validate the behavior of their applications and ensure seamless integration with the API Layer. This feature is only available on Sandbox environment • [Webhooks](https://app.theneo.io/cryptomate/api/webhooks-1.md): Webhooks provide real-time notifications for API events, enabling your platform to receive timely updates about specific activities. Our system sends these notifications to a designated endpoint within your hosted environment, which is configured to adeptly receive and process them. Leverage webhooks to promptly obtain information about critical API events. These events include occurrences external to your system, such as a new deposit in an MPC wallet or a card transaction at a point-of-sale (POS) terminal.To seamlessly receive and process webhook-enabled events, you need to establish and configure a webhook endpoint within your environment. Each webhook request consists of a common part and a custom payload specific to the event being communicated. The common part includes standard information such as the event type, sub-type, status and a unique Id of of the notification, while the custom payload contains detailed data relevant to the specific event. Field Type Description operation String Indicator of the operation being informed sub_operation String Indicator of the activity of the operation being informed operation_id String Unique identifier of the operation status String Status of the transaction. Possible values: SUCCESS | CANCELLED | FAILED reason String If the status is FAILED the reason of why ll appear here data Object Variable payload of the notification. The content of this will change depending of the notification type. Complete specification of this will be inside each notification page. **General payload example:** { "operation": "TREASURY", "sub_operation": "DEPOSIT", "operation_id": "ca0c57d2-b1c9-4bcd-9d5d-8d361cad6fddds1c", "status": "FINISHED", "data": { } } • [Events](https://app.theneo.io/cryptomate/api/webhooks-1/events-2.md): The Events section provides detailed information about the notifications that are triggered by our webhook service. Users can leverage this section to gain insights into real-time updates and track significant events within their application. Security: For avoid that someone can call the client side simulating being a real call. The request will have a security header called X-Webhook-Key management configuration The request is composed by the following fields: PRODUCT: string EVENT TYPE: string STATUS: string OPERATION ID: string DATA: object • [Simulate](https://app.theneo.io/cryptomate/api/webhooks-1/simulate-2.md): The Simulate section allows users to test and replicate transaction events within the API Layer using the account’s configured mechanisms. By simulating transactions, users can ensure that the API functions correctly and accurately reflects real-world scenarios. This section is essential for developers to validate the behavior of their applications and ensure seamless integration with the API Layer. This feature is only available on Sandbox environment • [Simulate transaction approval](https://app.theneo.io/cryptomate/api/webhooks-1/simulate-2/simulate-transaction-approval-2.md): This section allows users to simulate the approval of a transaction with a virtual card, mimicking real-world card operations. By adjusting daily, weekly, and monthly limits, users can control and test the spending behavior of virtual cards. This feature provides valuable insights into how transactions are processed and approved within the API layer. Required access level: Operational Access (Level 2) • [Simulate transaction clearing](https://app.theneo.io/cryptomate/api/webhooks-1/simulate-2/simulate-transaction-clearing-2.md): his section enables users to simulate the clearing of transactions, providing a way to test and validate transaction approval processes. Users can create scenarios to mimic transaction authorizations and assess the corresponding response codes and authorization IDs. The functionality allows for thorough testing of transaction handling without affecting real transactions. For execute this clear transaction simulation, first a transaction approval simulation is needed with the same Card Id. Required access level: Operational Access (Level 2)