Onboard your users to crypto

Let your users buy, swap and sell crypto easily by adding our crypto-fiat gateway to your web or mobile app in a few lines of code.

IntegrateRight angle white icon

Trusted by

Ether.fi
Temple Wallet
Beefy
Shapeshift
Thor Wallet
AirGap
Swiss Bitcoin Pay
Alby
Umami Wallet
Trocador
Frankencoin
BTCPay Server

Built for what you need

One integration, eight use cases. Enable what you need for your project.

👛 Virtual IBANs

Personal crypto IBANs for your users, so they can on/off-ramp in their own name.

Try

💳 On-ramp

Let your users buy 30+ cryptocurrencies via bank transfer, card, Apple Pay or Google Pay.

Try

🏦 Off-ramp

Help them cash out their crypto into 18 fiat currencies that land smoothly on their bank account.

Try

🔄 Swaps

Provide swaps for 30+ cryptocurrencies with guaranteed price: no slippage nor price impact.

Try

🔗 Bridge

Let them move funds across the 16 blockchains we support, including Bitcoin and Lightning.

Try

🛒 Checkout

3-in-1 solution to accept payments for your business: card, transfer or crypto. Paid in fiat or crypto.

Try

🧾 Invoice payments

With us, your users can pay CHF and EUR bills to third parties, using their cryptocurrencies.

Try

❤️ Donations

Collect cryptocurrencies as donations for your charity, association or foundation. Receive funds in fiat.

Personal IBANs

We can issue IBANs in the name of verified users, who can then use it to receive bank transfers (from themselves, employers or institutions) directly converted in one of our supported crypto, and send bank transfers to anyone using crypto.

Being made in the name of the user, bank transfers made with a personal IBAN just look like any other standard bank transfer to others.

About the IBANRight angle white icon

Integration modes

Example of a Mt Pelerin API integration customized for Frankencoin ZCHF

API

Build the ideal UI/UX that will fit your project just right. Connect all our exposed functions to run our service in the background.

API features
Example of a Mt Pelerin widget customized for Bitcoin

Widget

Add our service in one line of code, customize everything you need with our large choice of parameters, and go live in a day.

Widget docs

Why integrate Mt Pelerin?

👍 Fast & easy

Our onboarding is quick and simple, you can go live in a few days.

💸 Low exchange fee

Users get the spot prices, no spread. We only charge a low transparent fee.

💰 Earn revenue

We share back to you 25% to 50% of the fees we charge to your users.

📜 Built-in compliance

We handle all the KYC/AML compliance and support for your users' transactions.

🥇 First class support

Our friendly team is fast and reactive to answer your users' questions in six languages.

🔎 Better privacy

We process and secure your data ourselves, we don't use third party services for sensitive personal info.

Our supported payment methods

Apple Pay
Google Pay
Visa
Mastercard
SEPA
SWIFT
Swiss bank transfer
Swiss QR-bill
Cash at SBB train ticket vending machines
Cash at Swiss Post offices
Zero percent

Best pricing on the market

Our exchange fee starts at 0%, hard to beat that! We only charge a small decreasing fee from CHF 500 (or equivalent) per end user and per calendar year.

We also apply the spot market rates for all the crypto we support, no spread or hidden costs. Your users always see a live price with a transparent fee. No surprises.

Our pricingRight angle white icon

Supported networks

Onboard your users exactly where you want them to. With our service, they can buy, swap, bridge and sell 30+ cryptocurrencies directly on 16 blockchains:

Arbitrum
Avalanche
Base
Bitcoin
Lightning
BNB Chain
Celo
Ethereum
Gnosis Chain
Optimism
Polygon
Rootstock
Sonic
Tempo
Tezos
zkSync Era

Supported crypto

Avalanche (AVAX)

AVAX

Binance Coin (BNB)

BNB

Bitcoin (BTC)

BTC

Bitcoin Avalanche Bridged (BTC.b)

BTC.b

Binance Bitcoin pegged token (BTCB)

BTCB

Coinbase Wrapped Bitcoin (cbBTC)

cbBTC

Celo (CELO)

CELO

DAI

DAI

Ethereum (ETH)

ETH

EURC

EURC

Frax USD (frxUSD)

frxUSD

f(x) USD (fxUSD)

fxUSD

GHO

GHO

Pax Gold (PAXG)

PAXG

Polygon (POL)

POL

Smart Bitcoin (RBTC)

RBTC

Rootstock Infrastructure Token (RIF)

RIF

Sonic (S)

S

Lightning BTC (sat)

LN sat

Swissgrams Gold (SGG)

SGG

tzBTC

tzBTC

USDC

USDC

USDC.e

USDC.e

USDRIF

USDRIF

Tether (USDT)

USDT

Wrapped Bitcoin (WBTC)

WBTC

Wrapped Ether (WETH)

WETH

Tether Gold (XAUt)

XAUt

XDAI

XDAI

Tezos (XTZ)

XTZ

Frankencoin (ZCHF)

ZCHF

Supported fiat

Australian dollar (AUD)

AUD

Canadian dollar (CAD)

CAD

Swiss franc (CHF)

CHF

Czech koruna (CZK)

CZK

Danish krone (DKK)

DKK

Euro (EUR)

EUR

British pound (GBP)

GBP

Hong Kong dollar (HKD)

HKD

Hungarian forint (HUF)

HUF

Japanese yen (JPY)

JPY

Mexican peso (MXN)

MXN

Norwegian krone (NOK)

NOK

New Zealand dollar (NZD)

NZD

Polish zloty (PLN)

PLN

Swedish krona (SEK)

SEK

Singapore dollar (SGD)

SGD

US dollar (USD)

USD

South African rand (ZAR)

ZAR

DCA supported

Our bank transfer information doesn't change for a combination of crypto, network and receiving address. Your users can therefore set up crypto savings plans and DCA strategies through permanent orders of the amount and time interval of their choice.

Self custodial

Users buy, swap and sell crypto directly to / from the self custodial wallet of their choice. No deposits, only direct crypto-fiat transfers between bank accounts and wallets.

Global support

1B+

volume

200k+

users

30+

crypto

16

chains

18

fiat

164

countries

6

languages

Reuse your Sumsub KYC

If your project already verifies its users via Sumsub, no need to make them verify twice. You can share with us your Sumsub data and we will use it for verification instead of running our own KYC process, which removes most of the KYC friction for your users.

How KYC sharing worksRight angle white icon

First class customer service

We know crypto can be intimidating, that's why our team is always here to help your users! We reply in English, French, German, Italian, Spanish and Portuguese.

100% compliant

We are an affiliated financial intermediary in Switzerland with live operations since 2018, which are audited several times a year. Swiss KYC/AML regulations are among the strictest in the world, and we have a first-rate track record in complying with them. We are here to stay in the long run, therefore we take compliance very seriously and we work hard to make our processes bulletproof.

Go live in three steps

👩‍💻 1. Build

Use our localhost test key to test your integration and prepare everything you need. No account and no paperwork needed to start.

✉️ 2. Contact us

Email us at [email protected] with more info about your project. We may require your KYB.

🔑 3. Get your key

Once approved, we will provide an integration key for your project. It works right away, so you can go live immediately.

FAQ about integrating our service

It depends on the method you pick. A direct link, an iFrame or a modal window takes minutes to hours. Our React Native SDK takes hours to days. A full REST API integration, where you build your own interface, takes about a week.


Email us at [email protected] with the URL of the web or mobile app where you want to integrate our service. We review it and may require your KYB depending on your project. Once done, you receive your integration key and you can go live with it immediately. We do not issue production keys to projects that are still under development, so use our free test key on localhost until yours is ready.


Yes, your users can pay with Visa, Mastercard, Apple Pay and Google Pay, in all the fiat currencies we support. Card payments are not enabled by default: you must first complete KYB and sign an integration agreement with us.


On the way in, your users can pay via local CHF transfers from Switzerland and by SEPA for EUR transfers from the SEPA zone (both free of transfer fees), by SWIFT for other currencies (subject to fees from intermediary banks), or by card, Apple Pay and Google Pay. In Switzerland they can also settle a QR-bill, or pay in cash at SBB ticket machines and Swiss Post offices. On the way out, they can cash out through the same SIC, SEPA and SWIFT networks, on the same terms.


You can be informed of successful transactions via API queries, or by passing your own internal order ID as parameter in our widget URL. In such case, we call your webhook once a transaction completes and transmit your order id, our own transaction ID, the amount and the currency. Inside the widget you can also subscribe to our events and react to each stage of a transaction directly in your own interface.


Yes, our regulation demands we verify that each user actually controls the wallet address involved. They are normally asked to sign a short message inside the widget, but if your app already provides self-custodial wallets, you can automate the signature of that message on your side and pass us the proof. Then the user has nothing to sign and nothing to do for that step. It works the same way on every chain we support, only the signature encoding changes between chain families.

More than 30 cryptocurrencies across 16 blockchains: Arbitrum, Avalanche, Base, Bitcoin, Bitcoin Lightning, BNB Chain, Celo, Ethereum, Gnosis Chain, Optimism, Polygon, Rootstock, Sonic, Tempo, Tezos and zkSync Era. You can keep your own asset list in sync automatically with our supported chains and assets API.


Yes. Every transaction settles directly between your user's own bank account and their own self-custodial wallet. There is no deposit step and we never take custody of their funds.


It depends which flow you use. In the buy, sell and swap flows the receiving address has to be unique for each end user and belong to them, so a single shared project address is rejected. If you want to receive the funds yourself, use our checkout widget instead: your customers pay by card, bank transfer or crypto, and you receive the proceeds converted into the fiat or crypto in your own account or wallet. The same checkout flow covers donations.


We handle it entirely, either through our own verification flow or by reusing a Sumsub verification your project already has. Verified users can transact up to CHF 100,000 per transaction. Card payments always require verification, other transactions can be done without verification up to CHF 999 per 30 days (or equivalent). You can also query a user's verification status through our API.


The only users that we cannot accept are US persons, as well as residents in sanctioned countries. You can pull the current exclusion list from our unsupported countries API and filter your audience before they even start a transaction.


The fees you generate are tracked with the rfr parameter. We can then share 25% to 50% of those fees back to you, sent monthly in USDC on Polygon to a wallet address you have verified on your account, together with a summary of the month's activity by email.

Have a question?

Have a look at our docs, which contain all the information about integrating us. If you still have questions, would like to report bugs or request features, please contact us:

DocsRight angle white iconEmailRight angle white iconDiscordRight angle white icon