COINQVEST is now Whalestack

You are looking at a blog post that was published when Whalestack was still known as COINQVEST. The content might be referencing our old name.

Blog Guide

May 28, 2020

Merchant Payouts with COINQVEST - Withdrawing Funds to Bank Accounts and Cryptocurrency Wallets

This guide walks you through programmatic (API) and browser-based (UI) withdrawals of settled payments on the COINQVEST platform. Instant payouts on-demand. Learn how to release funds any time you need them.

Merchant Payouts with COINQVEST -  Withdrawing Funds to Bank Accounts and Cryptocurrency Wallets

The most exciting part about COINQVEST is when customers start making payments. Soon after the integration into a web shop, online business, WordPress blog or e-commerce website, sales made on blockchains like Bitcoin, Ethereum or the Stellar Network start rolling in. Eventually, it's payday! In a few simple steps, this guide shows how to withdraw funds to a bank account or cryptocurrency wallet programmatically or via web browser.

Browser Based Withdrawals

Account administrators and users with finance privileges initiate withdrawals by selecting the source asset in the dashboard and then clicking the Withdraw button. In the below example, the merchant has accrued 975.30 EUR in payments originating on the Bitcoin, Ethereum, and Litecoin networks. The funds originating on these blockchains have been automatically converted into EUR, the merchant's preferred settlement currency, which he can now withdraw to his bank account.



Clicking the Withdraw button opens a window overlay with an interface to initiate the payout.

1. Select Source Amount

The merchant selects the amount he would like to withdraw. This can be anywhere from the minimum withdrawal amount for this currency to the total funds in the account. Since you will never encounter chargebacks on blockchain payments there is no "hold period" for captured payments on COINQVEST. Funds are available the instant they arrive in the account.



2. Select Target Network

The merchant decides on whether to withdraw the funds to a blockchain or bank account.


Although there are Euro in the account, the merchant doesn't necessarily have to withdraw them to a Euro bank account. Funds can be automatically converted into a different national or cryptocurrency during the withdrawal process. They can be withdrawn to Bitcoin, any asset on the Stellar Network or a bank account denominated in a different national currency.

With COINQVEST, merchants operating in markets with an unstable national currency can settle in a major currency with lower volatility (e.g. EUR or USD), then convert to Argentinian Peso or Turkish Lira during the withdrawal process. This way, settled funds retain purchasing power while in their COINQVEST account, and aren't exposed to foreign exchange risks.

Additionally, COINQVEST checkouts are perfectly suited for an internationalized marketplace. Buyers located in the United States can pay in US Dollars, Canadians in CAD, all the while merchants get paid with their desired currency, e.g. Euro.

The conversion and fund transfer happens using path payments on the Stellar Decentralized Exchange and integrations with asset issuers on the Stellar Network. In the below, example we're going to initiate a withdrawal to an NGN-based bank account.



Once a target bank network is selected, COINQVEST displays the conversion rate in the selected target asset. The UI displays which entity (usually a financial institution) will process the transfer from COINQVEST to the bank account. In the below example, the payment will be processed by Cowrie and the merchant receives 318,909 NGN in exchange for his 975.30 EUR. A one time fee for the asset issuer who processes the withdrawal into the bank account is factored out of the deposited amount.



Afterwards, the merchant specifies where the funds are sent by providing the bank account information for this withdrawal. In this example, we're withdrawing to a FirstBank account in Lagos.



3. Review and Submit

Last but not least, the entered information is aggregated in a summary and the merchant reviews his data before confirming the withdrawal by entering their password and submitting the request.



The payment arrives in the bank account within minutes.

API Based Withdrawals

All of the above can be done programmatically with just a few lines of code. Integration with COINQVEST's merchant API is possible with any programming language by itself or with the support of one of our software development kits.

The API request for above withdrawal invokes the POST /withdrawal endpoint and looks as follows:

{
"sourceAsset":"EURT:GAP5LETOV6YIE62YAM56STDANPRDO7ZFDBGSNHJQIYGGKSMOZAHOOS2S",
   "sourceAmount":975.30,
   "targetNetwork":"NGN",
   "targetAccount":{
      "nuban":"4791494548",
      "bankName":"FirstBank"
   }
}

In response, the API returns the conversion rate from EUR to NGN and the target amount promised in the bank account. Upon review of the response, and if everything is okay, the withdrawal is confirmed and committed with a subsequent request to the POST /withdrawal/commit endpoint.

This guide is a good starting point to learn more about the COINQVEST merchant API and compliant cryptocurrency payment processing in any programming language.

Withdrawal Details

Once a withdrawal is initiated it instantly becomes available as a record in the merchant dashboard and can be inspected and exported for accounting purposes, either by itself or batched with other transactions within a given time period, e.g. a fiscal year.



The Details page contains information about the source and target amount, related blockchain transactions, the payment processor, and related API requests (if any).

Get Started

If you would like to start getting paid, sign up for a merchant account and have a look out our guides for non-developers and programmers.

We love to help!

If you have questions, please feel free to contact us directly anytime.

guidewithdrawals
Marcin Olszowy
Marcin Olszowy Co-Founder