Mangopay provides the ability to generate reports so you can download a large amount of data in CSV format for accounting or analysis purposes. 

Two types of report are available via the API:

Transactions report

Provides the pay-ins, payouts, transfers, and conversions made on the platform. This includes all natures of transaction (regular, refund, repudiation, and settlement).

The report period can’t exceed 6 months, and transactions can’t be more than 36 months past their creation date.

Wallets report

Provides all the wallets created on the platform, whether they are the end user’s, or the platform’s (repudiation and fees wallets).

The report period can’t exceed 24 months by a wallet’s creation date.

Report creation flow

When creating a report with the dedicated endpoints, its Status is PENDING at first, until it becomes ready for download. There is a short waiting time, (usually a few seconds) which depends on the size of the requested report.

When the report status becomes READY_FOR_DOWNLOAD, a notification is sent to the CallbackURL (if set) with the following format:

https://www.example.com?EventType=REPORT_READY_FOR_DOWNLOAD&ResourceId=ReportId&Date=ReportDate

Using the ReportId, you can use the View a Report endpoint to get the DownloadURL, where the report is available for download.

A report expires after 24 hours (i.e., you can no longer download it after this period). You can still generate a new report with the same filters and information easily.

Setting up a transactions report

Columns

On the POST Create a Transactions Report endpoint, you can add the following values in the Columns parameter to choose which information should be included in the report.

ColumnDescription
AliasThe partially hidden number of the card used for the transaction.
AuthorIdThe unique identifier of the user at the source of the transaction.
BankAccountIdThe unique identifier of the bank account to which the payout is made.
BankWireRefCustom description to appear on the user’s bank statement along with the platform name.
CardIdThe unique identifier of the card used for the transaction.
CardTypeThe type of the card among the following: CB_VISA_MASTERCARD, AMEX, MAESTRO, P24, IDEAL, BCMC.
CountryThe country of the card (which is the same as the country of the issuer).
CreationDateThe date and time at which the transaction was created.
CreationDate:ISOThe date and time at which the transaction was created in the following format: dd/MM/yyyy HH:mm:ss.
CreditedFundsAmountThe amount of credited funds (CreditedFunds = DebitedFunds - Fees).
CreditedFundsCurrencyThe currency of the credited funds.
CreditedUserIdThe unique identifier of the user whose wallet is credited.
CreditedWalletIdThe unique identifier of the credited wallet.
CultureThe language in which the redirection page is displayed.
DebitedFundsAmountThe amount of debited funds.
DebitedFundsCurrencyThe currency of the debited funds.
DebitedWalletIdThe unique identifier of the debited wallet.
DeclaredDebitedFundsAmountThe amount of the declared debited funds for a direct bank wire pay-in.
DeclaredDebitedFundsCurrencyThe currency of the declared debited funds for a direct bank wire pay-in.
DeclaredFeesAmountThe amount of the declared fees for a direct bank wire pay-in.
DeclaredFeesCurrencyThe currency of the declared fees for a direct bank wire pay-in.
ExecutionDateThe date and time at which the status changed to SUCCEEDED, indicating that the transaction occurred.
ExecutionDate:ISOThe date and time at which the transaction status changed to SUCCEEDED, in the following format: dd/MM/yyyy HH:mm:ss.
ExecutionTypeThe type of execution for a pay-in: WEB, DIRECT, EXTERNAL_INSTRUCTION.
ExpirationDateThe date at which the card used for the transaction will expire.
FeesAmountThe amount of the fees taken by the platform for this transaction (and hence transferred to the Fees Wallet).
FeesCurrencyThe currency of the fees taken by the platform for this transaction (and hence transferred to the Fees Wallet).
IdThe unique identifier of the transaction.
NatureThe nature of the transaction, providing more information about the context in which the transaction occurred: REGULAR, REPUDIATION, REFUND, SETTLEMENT.
PaymentTypeThe type of payment: CARD, BANK_WIRE, DIRECT_DEBIT, PAYPAL.
PreauthorizationIdThe unique identifier of the Preauthorization object against which a preauthorized pay-in can be made.
ResultCodeThe code indicating the result of the operation.
ResultMessageThe explanation of the result code.
StatusThe status of the transaction (created, succeeded, or failed).
TagCustom data that can be added to the transaction.
TypeThe type of the transaction: PAYIN, TRANSFER, PAYOUT.
WireReferenceThe reference which the end user must provide when making a direct bank wire pay-in.

Filters

In order to optimize the report, you can take advantage of a series of filters available in the Create a Transactions Report endpoint documentation.

Thanks to the BeforeDate and AfterDate filters, you can define a time range based on the CreationDate of the transactions. The date range can’t exceed 6 months, and you can’t view transactions which occurred more than 36 months in the past.

Setting up a wallets report

Columns

On the POST Create a Wallets Report endpoint, you can add the following values in the Columns parameter to choose which information should be included in the report.

ColumnDescription
IdThe unique identifier of the wallet.
TagCustom data that can be added to the wallet.
CreationDateThe date and time at which the wallet was created in a timestamp format.
CreationDate:ISOThe date and time at which the wallet was created in the following format: dd/MM/yyyy HH:mm:ss.
OwnersThe Id of the user attached to the wallet.
DescriptionThe description of the wallet. It can be a name, a type, anything that can help you clearly identify the wallet on the platform (and for your end users).
BalanceAmountThe current balance of the wallet.
BalanceCurrencyThe currency of the balance of the wallet.
CurrencyThe currency of the wallet.
FundsTypeThe type of funds in the wallet, which can be DEFAULT, FEES, or CREDIT.

Filters

In order to optimize the report, you can take advantage of a series of filters available in the POST Create a Wallets Report endpoint documentation.

Thanks to the BeforeDate and AfterDate filters, you can define a time range based on the CreationDate of the wallets. The date range can’t exceed 24 months.

Endpoints

The Report object