For the nerds

API Documentation

Documentation for embedding or integration our services

If you are running a site selling goods or services or are offering a service within the DeFi space and want to accept banktransfer, VISA or MobilePay payments from your customers, then you have come to the right place. By building our service into your solution, you remove yourself from the hassle of payment acceptance and simply get bitcoins to your wallet.

Seamlessly integrating our “online ATM solution” into the existing structure of any eCommerce platform enables you to accept credit card payments in bitcoins and receive the funds directly in your digital wallet. It’s an extraordinarily valuable merchant tool, which enables you to reap the immediate, inherent benefits of Bitcoin.

Connect to the world’s first borderless payment network where it’s possible to send and receive bitcoins anywhere in the world at any given moment.

IMPORTANT!

Please beware that by using this solution, we DO NOT help you accept payments. We simply offer a solution where we help your customers buy (or sell) bitcoins, that they can then use to pay for goods and services. Please see our Acceptable Use section below.

 

Acceptable Use Policy

Who can use this service and how?

So, what does it take to use this solution

Firstly, we are so happy that you are interested in our solution, and are considering referring your customers to us, as an intregate part of your solution.

However, there is a few ground rules that you will need to follow in order for your customers experience a smooth orderprocess:

The goods or service you offer needs to be legal in both our juristiction as well as in the juristiction of the customer.

Examples of non-legal goods and services may include: drugs, prostetution, weapons but also forums wherein illigal activities are coordinated and in some juristictions also gambling and online gaming

You will need to “sign” the referral cusotmer, meaning that you will need to include your own URL when referring customers to buy bitcoins from us. This is done by including the returnURL parameter in the call. You can find more on this here

By using our service, you also need to follow these rules:

Refrain from ANY wording suggesting that your customers can pay for your services with a creditcard or banktransfer. Instead tell the customer that they are going to get referred to monni.com to buy bitcoins (like withdrawing cash from an ATM), that they can then use to buy your services

And lastly…

Do not use the VISA/Mastercard logo when referring customers to us! We have implemented a popup-box where these customer can see these logos as the first thing they see when they order.

And if you have any questions, please contact our support, that will be more than happy to help.

The endpoints

First things first; here is the base URL’s or endpoint you need

Where do i point my guns?

We offer 2 endpoints, a test and a production endpoint, so that you will be able to test the entire flow before launching the integration. Please remember to change the link from test to production before accepting payments, since no funds will be deducted from the customer’s card and of course, no payout will be made for the test endpoint.

Test: https://test.app.monni.com (TESTNET COINS ONLY!)

Production: https://app.monni.com (REAL MONEY, USE WITH CAUTION!)

Since we use testnet coins on the Test endpoint, this is particularly usefull for DeFi applications

1. How does it work?

Our payment service works more or less like an ATM. Customers can withdraw cash (in this case bitcoins), but our service reverses the payment and addresses the desired amount to you – simple as that. Where can I use it? You can implement our payment solution on your eCommerce channel or in your emails. You do so by bringing our customized link on your website or email of choice. From there, it’ll display a traditional credit card payment window to your customers and enable you to receive their payment as bitcoins in your Bitcoin wallet. 

2. Where can i use it?

The best way to get started is to pre-fill the order form with important information like a Bitcoin address and amount and currency. It’s also possible to include the name, phone number and email address of the customer, if you already have an order form on your website.

DISCLAIMER We do not accept payments on your behalf. We don’t assume any responsibility, nor do we provide any kind of consultation regarding transactions between customers and your store.

3. How do i implement a payment link on my website?

On your own website (or in emails) you can place a link to our “Online ATM Solution”, which will present a paymentflow to your customers, and you will ultimately receive bitcoins into your own wallet.

The way this works is just like having an ATM on your website. Here customers can withdraw cash (in this case bitcoin) and then turn around and pay the desired amount to you. We do not accept payments on your behalf and do not hold any responsibility or offer any kind of support for matters relating to the transaction between the customer and your shop.

4. Okay, so how do i construct a payment URL?

You can easily pass on data to us about the customer and transaction by following (example) URL:

https://test.app.monni.com/?amount=100&currency=EUR&cryptoAddress=17ZTzymw2djXZtYdwaqjs1XMjszyzToC1t&name=John%20Doe&email=john@doe.com&phoneCode=45&phonenumber=88774455&returnurl=http://www.coindesk.com

Please remember to remove switch from test.app.monni.com to app.monni.com when you want to go live!

And please note, that the returnURL parameter is MANDATORY and is your way of letting us know where the customer is being referred from. So please include this parameter in ANY call you make to us!

It is further important, that you remember to include the “https://” in the beginning of the URL, else we will not be able to process payments. All parameters and variables shown in the example above are optional; except the Return URL parameter. If you only have the Bitcoin address, amount and currency, then you just drop the rest of the parameters and only include these like this:

https://test.app.monni.com/?amount=100&currency=EUR&cryptoAddress=17ZTzymw2djXZtYdwaqjs1XMjszyzToC1t&returnurl=https://coindesk.com

below you can find a list of all available paramenters.

The Monni Payment Widget

Unleash the power of Monni, directly at your website

1. Introduction

Embedding a payment window into your existing site, can be used for several different purposes, and can do wonders in terms of conversion, since the customer does not have to leave your site to make a payment. Our widget is highly flexible and will allow you to accept payments with a few clicks. The widget is still under development, and may not be the rounded and smooth product you may have expected. We hope that you will bear with us while we develop this further, and are extremely eager to hear your feedback and critique on how this works.

If you have any questions regarding this, please reach out to our support staff, and they will be happy to help.

2. The code

Here you see the snippet you will need to insert into the HTML code of your site. For instructions on how to embed an iFrame into your site, please ask Google. However, it is important that you have a valid SSL certificate on the site you use to host the widget, else the payment will fail.

<iframe src=”https://test.app.monni.com/?Amount=50&paymentMethod=bank&Currency=EUR&cryptoAddress=mpN4x7xwjH9iBxVexck2a1GBq1z4XEQhT7&name=John%20Doe&email=john@doe.com&phoneCode=45&phonenumber=88774455&compact=true&returnurl=https://www.monni.com” width=”1000″ height=”1000″ scrolling=”yes” style=”overflow-y: hidden; border: none” > Can’t load widget </iframe>

In the string starting after src= you will be able to add or remove parameters in accordance with the documentation described in the section above. While testing, please use the apptest endpoint as seen in the example above, and when going into production, please remember to use the app endpoint.

The width and height of the widget has the recommended size, but since we recommend scrolling to be enabled, you are free to play around with it as you see fit. We recommend that you leave the scrolling parameter to “yes”, due to the fact that we will serve a 3D secure window during the payment process. This content is served by the card-issuing banks and can vary significantly in size and shape, so not to have your customers strand, due to a too small payment window.

Ticker API

Get live rates directly from our server

1. Introduction

You can integrate to our live ticker, and have it show on your own website or use it in your project in some other way. Our ticker display prices in a variety of currencies and also have the capabilities of picking the currency based on the culture code of the individual visitor’s browser.

2. The URL

The basic URL for this call is: https://app.wemovecoins.com/LatestBTCRate

This URL will return the bitcoin price at present, in the currency related to your browser settings. Please note that only the following currencies are available, so if you are from any other country then one that uses one of these, the URL will fall back to DKK as standard.

EUR, DKK, ISK, CHF, SEK, NOK, TRY, GBP, ALL, AZN, BYR, BAM, HRK, CZK, GEL, HUF, MKD MDL, PLN, RSD, ZAR and INR.

You may also tell our service in what currency you want the rate. This is done by including the currency in the URL when you call our service.

Here you see an example, where we want to get the price in Indian Rupees (INR): https://app.wemovecoins.com/LatestBTCRate?currency=INR

Payment Parameters

What parameters can i pass to you in order to make it even easier for my customers to pay via Monni?

1. Introduction

Below you can see a list of all available parameters along with a description of these. Please refer to the example above on how to moderate these. The order in which they appear is not important, and no other parameter then returnURL is mandatory.

2. The Parameter list

Parameter (case sensitive)

Description

Allowed values

Comment

returnurl

The URL the customer should be returned to, if logo or the “Back” button is clicked

MANDATORY

Your site URL (along with “https://”)

Should be URL to a page on your site, where we will be able to see what your are selling and who you are

amount

The amount of fiat to be paid by customer

Equivalent of 10 EUR as a minimum and a maximum of 1000 EUR

Please check with the GUI, for user specific limits

currency

The fiat currency to be paid by the customer

EUR and DKK

More can be added at request

cryptoAddress

The bitcoin deposit address, relevant for the transaction.

Only addresses of BTC (Bitcoin Core).

If a BCH (Bitcoin Cash) is input, the coins sent might not be redeemable.

name

The name of the customer paying

Must include a first name AND last name, and must match the name on passport and possible the payment card

Proper syntax for space between first name and last name is: %20

email

The e-mail address of the customer

Any valid e-mail address

We will sent instructional and confirmation mails to the customer

phoneCode

The country code of the customers phone number

See Appendix for list of phone prefix

Does not cover USA and these territories + North Korea

phonenumber

The customers phone number

The correct length of phone digits

returnurl

The URL the customer should be returned to, if logo or the “Back” button is clicked

Any valid URL

Could be URL to a page on your site.

bcc

An e-mail controlled by you

Any valid e-mail

By adding this parameter, you will get a copy of all e-mails sent to your customers, including requests for extra information and confirmations order completion.

partnerID

N/A

N/A

To be used for our Partnership Program only, for registering commission and transactions on your account

compact

Removes the header from the page

true or false

Ideal for use in an iFrame

paymentMethod

Gives the customer the option of paying using a bank transfer.

Bank or Credit Card

Please see the country table below

dev

Overwrites the “Sold-out” page if up. No order execution guarantee is given if this parameter is used.

1 or 0

Remember that orders are still real, and payouts made to wrong bitcoin addresses during testing with this parameter cannot and will not be reversed or refunded

You may use any of these parameters when referring your customers to us. Going forward, we are looking to modify the content of the window/site based on the what parameters are filled, so please make sure to pass on as much information as possible, to avoid your customers typing in content multiple times.

Are you finding these features valuable?

If you are using any of these features or calls in your project or business, or would like to see us build some feature that you need, we would love to hear from you. The more feedback we get, the better decisions we can make on how to make the best products for you and your needs, so we together can make bitcoin and blockchain technology easier and ever more convenient.