Reporting APIs

Version

Current Specification Version: V8.2.8

View Change History

General Information


Overview  

The purpose of this document is to provide documentation for 3rd parties to integrate with the gateway reporting module.

Financial reporting data is accessible through the gateway in two ways:

1. The most common and recommended method is the reporting API (MosoPay reporting module) allowing to generate and export reports in CSV/PDF/data formats depending on the report type.

2. For the cases when a single front-end system is interacting with the gateway, there is an additional mechanism of Data Export. It enables the front-end system to obtain financial data from the gateway database tables and use it to generate the necessary reports on the integrator’s side.

Connectivity Information  

The connection URL for the sandbox server is: https://216.83.195.33/reports/[report-name].[report-format]?[parameters], where
  • [report-name] is a name of a report;
  • [report-format] - format in which the report is generated, see integration notes for more information;
  • [parameters] - fields in the report request, indicating what data is going to be included in the report.
For example, to generate a merchant-statement-list report in the CSV format, connection URL should look similar to the following one:
https://216.83.195.33/reports/merchant-statement-list.csv?userName=myUsername&password=myP%40ssword&fromDate=10180101&toDate=20180131&accountId=2001

Authorization is done via service users. To access the API, a service user is required to be granted with a corresponding privilege. A user can submit API requests using either associated credentials or temporary password generated via authentication operation.

When submitting an API request, you can use either UniPay server URL or the Sanitizing Data Filter (Unibroker) server URL as an endpoint.
Requests that contain tokenized card numbers/bank account numbers can be submitted directly to {Unipay} server.
To reduce PCI exposure, requests with non-tokenized (raw) account data should be passed through the sanitizing data filter server. Otherwise, L04 error will be returned (Processing of raw account data is not allowed through the specified API end-point for the current user).
If you don’t have a specific reason, we recommend sending all the requests to the same endpoint (data filter).
To learn more about service users and end-points used for API submission, review Security Management guide.
See Security Management guide for more information.

Request method is GET. The content-type must be set to application/x-www-form-urlencoded.
Request fields are passed within HTTPS request body (including cases with callbacks) and are required to be URL-encoded.
Response fields are passed within HTTPS response body.
Both request and response field values are passed using name1=key1&name2=key2 format.

Supported Reports

Database Export

statement-list-export   
Corresponds to StatementListExport database table. The table contains general information about merchant statements including total and net amounts of submissions, merchant fees, reserves, splits, etc.
statement-detail-list-export   
Corresponds to StatementDetailListExport database table. The table contains information about statement details grouped by submission ID and stereotype.

statement-fee-detail-list-export   
Corresponds to StatementFeeDetailListExport database table.
The table contains information about all fee amounts and rates related to merchant statements, including per item, flat, intercharge, assessment, and service fees.
transaction-list-export   
Corresponds to TransactionListExport database table. The table contains the list of transactions contained in merchant statements and details of the transactions including the identifiers of associated entities (merchant account, reseller), payment account and billing information, and related fees amounts.
data-registry-export   
Corresponds to DataRegistryExport database table. The table contains information about each record (i.e. merchant statement) generated and exported by the gateway, such as it’s data type, associated entities’ identifiers, and dates.

merchant-statement-list   
Retrieve merchant statements to analyze account deposits, fees, and transaction details within a specified date range.

> **Note:** Available in CSV (comma-separated) and data (pipe-delimited) formats. Specify the desired format by adding .csv or .data to the endpoint URL. Pipe-delimited format is recommended for easier parsing and better performance in reconciliation tools.
> **Warning:** Information about returns, chargebacks, and reversals is only updated once per day. Consider this when reconciling financial data or analyzing settlement patterns.

> **Tip:** Use this report for comprehensive financial reconciliation, fee analysis, and deposit verification. Access the report through environment-specific endpoints: sandbox-portal.zift.io (testing) or portal.zift.io (production).
merchant-statement   
Retrieve merchant statements to access detailed transaction and funding activity records in PDF format.

> **Note:** Each statement includes your transaction history, deposits, processing fees, and related account activity. Available as deposit statements (daily funding) or reconciliation statements (monthly summaries).

> **Warning:** Information about returns, chargebacks, and reversals is only updated once per day. Statement availability depends on your merchant configuration and processing history.

> **Tip:** To retrieve a specific statement, add the .pdf extension to the endpoint URL (e.g., .../merchant-statement.pdf).
reseller-statement-list   
Provides all reseller statements associated with the specified reseller. The report is used to analyze all fees and deposits processed by the merchants/accounts under the reseller within a specified date range. Generated in CSV and data formats.
reseller-statement   
Provides a reseller statement with aggregated information across all merchants associated with a particular reseller. Generated in PDF format.
reseller-statement-breakdown   
Provides a reseller statement with information for one merchant associated with the specified reseller. Generated in PDF format.
deposit-list   
Retrieve deposit transactions to track funds received to your account over specific date ranges. Supports CSV and pipe-delimited data formats for seamless reconciliation.

> **Note:** Specify the response format by appending .data (pipe-delimited, recommended) or .csv (comma-separated) to the API endpoint URL.
> **Warning:** Information about returns, chargebacks, and reversals is only updated once per day. Ensure your reconciliation processes account for this update frequency.
> **Tip:** Use the pipe-delimited (.data) format for more reliable parsing, especially if your data contains commas.
transaction-list   
Retrieve transaction data in a customizable report format to analyze payment history and reconcile accounts.

> **Note:** Responses available in pipe-delimited (.data, recommended) or comma-separated (.csv) formats. Specify one or more transaction types using pipe-delimited values in the type parameter.
> **Warning:** TransactionDate and settlementDate may vary depending on transaction type. Information about returns, chargebacks, and reversals is updated only once daily. When using date filters, remember that time defaults to 00:00:00 - use precise timestamps (e.g., fromDate=20230510000000, toDate=20230510235959) for accurate results.

> **Tip:** For complete implementation details, see Transaction Reporting integration guide. Useful for reconciliation, transaction monitoring, and audit-related workflows.
transaction-list~related   
Provides a list of the related transactions associated with the specified one. Generated in CSV and data formats.
Note: This report is available for Vantiv Tandem and TrustCommerce processors only.
The report is available only for transactions processed in realtime. If the requested transaction has been processed in a batch file, S29 (No data is available for the specified criteria) error is returned.

transaction-receipt   
Generate a transaction receipt in PDF format to give customers a downloadable and printable payment confirmation.

> **Note:** The receipt is associated with the specified transaction identifier and delivered in PDF format. The PDF format is indicated by appending .pdf to the endpoint URL.
> **Warning:** Information about returns, chargebacks, and reversals is only updated once per day.
> **Tip:** Use this operation to automatically deliver receipts to customers after successful transactions to enhance customer experience and provide essential payment documentation.
terminal-list   
Provides a list of terminals associated with the specified reseller or account. Generated in CSV and data formats.
split-list   
Provides a list of split transactions associated with the specified account. The report is available for the transactions that are not older than 92 days. Generated in CSV and data formats.
monthly-statement   
Generate monthly PDF account statements and reconciliation reports for tracking and analysis.

> **Note:** All statements are returned in PDF format; no alternative formats are currently supported.

> **Warning:** Information about returns, chargebacks, and reversals is only updated once per day, which may affect reconciliation accuracy.
> **Tip:** Use this operation for end-of-month reconciliation, audit preparation, and reviewing transaction history. Access through environment-specific endpoints: Sandbox (https://sandbox-portal.zift.io/reports/monthly-statement.pdf) or Production (https://portal.zift.io/reports/monthly-statement.pdf).
transaction-summary-by-day   
Generate daily summaries to track transaction trends and ensure accurate reconciliation.

> **Note:** Available in multiple formats: pipe-delimited (.data, recommended) or comma-separated (.csv). Specify desired format in the endpoint URL extension.
> **Warning:** Information about returns, chargebacks, and reversals is updated only once per day, which may affect real-time reporting accuracy.
> **Tip:** Use this report for daily financial reconciliation, performance tracking, and identifying processing patterns. Use sandbox endpoints for testing prior to production deployment.

Message Formats


Usage:

R - required in request/always present in response for direct debit transactions and credit card transactions of all levels (I, II, III).
O - optional in request/not always present in response.
C - conditional; conditions of the usage are defined below the corresponding section.
E - echo back from request; if present in request, it is present in response, if it is not present in request, it is not present in response.
R2 - required in request/always present in response for credit card transactions of level II and III only; optional for direct debit and level I credit card transactions.
R3 - required in request/always present in response for credit card transactions of III only; optional for direct debit and level I, II credit card transactions.
SR - required in request/always present in response for split transactions only.
I - for internal use only.
N - not used.
* - required fields in these specific sections are only required if this specific feature is used.