Wildfish logo
Wildfish logo


8 October 2015Joao Neves

Intro to MangoPay usage for startups

  • digital wallet
  • django
  • mangopay
Intro to MangoPay usage for startups

MangoPay presents itself as "Payments for Marketplaces", but it's far from being just a payment provider, adding a wallet management and KYC (know your costumer) processes management, enabling a whole new range of service offerings.

Having analysed their offer recently, here's the breakdown of the use cases with some warnings from our design experience.

The basic concepts are:

wallet A wallet that receives money or from which a money is sent. Think of it as a bank account.

transaction A movement of money between to models.

pay-in A transaction from outside MangoPay to a wallet (eg: credit card payment, bank transfer).

pay-out A transaction out of MangoPay from a wallet (eg: to another bank account).

user A MangoPay user. Each wallet is owned by a user. You'll get a MangoPay user as part of your enrolment process. Always use your MangoPay user for the wallets you create unless you are required to do otherwise. See Use case 4 for more details.

Use case 1: Payment Provider

MangoPay can be used as a simple payment provider. On this situation you have a single wallet and any payment done to you is a pay-in and any withdraw to the account is a pay-out.

You can choose to apply the fees to either the pay-ins or pay-outs.

Use case 2: Seller Escrow

If you are a site that sells products from various providers you can use a wallet per provider to keep the money as if in escrow.

You can then show each user it's wallet content, ut only allow pay-outs when a service is provided or a product is shipped.

Use case 3: Marketplace

If you have a full marketplace where users trade money between themselves, you can use MangoPay to create a wallet per user so that, in practice, all the wallet related operations are not handled by you.

Use case 4: KYC management

If you find yourself obligated to do KYC (Know Your Client) processes (eg: for regulatory reasons or fraud prevention), you only need to create a MangoPay user and then upload the required documents through the API.

Be careful that before the KYC process is successfully finished, all the money on the wallets for those users is frozen. It's not possible to do pay-outs, transactions that take money out of those wallets or even cancel transactions that put money on the wallet.

If possible, don't ever create/use a wallet with a non-KYC approved user. It will save you some grief.


Final notes

If you use Python 3 the next release (as of August, 2015) will have full support for it. You can already use that code if you install from the github repository at https://github.com/MangoPay/mangopay2-python-sdk/

When designing a payment process through MangoPay, always be careful where you charge the fees, so you can make sure you get the fees back from the MangoPay-only managed fee wallet on a refund operation. You can't execute refunds on wallets where the KYC process is still ongoing for example.

The fee wallet is not visible to you (not even through the API). The fee you charge on the transactions is paid to you monthly after the MangoPay fees are deducted and will not be available or visible before that.

Thanks to Svetlana and Carrie from MangoPay for the provided assistance.

You must accept cookies and allow javascript to view and post comments
Wildfish logo


We really are quite an approachable bunch! Simply give us a call or email. Alternatively if you’d prefer, drop into the office for a chat!