INTEGRATION
TRANSACTION ASSURANCE
CHARGES
DISPUTES & FRAUD
Reporting
We aim to support acquiring workflows by providing the relevant information on the Silverflow platform. One way of doing that is exposing information through our Reports. Our reports include information on authorisations, transactions, compliance, disputes and more. We provide item-level reports as well as dedicated formats for specific use cases. Some workflow examples that we support through our reports include daily financial reconciliation, merchant payout calculations, quarterly scheme reporting (GOC/QMR), monthly scheme fee invoice reconciliation, and dispute management. Our dedicated reporting team continuously adds new reports to the suite as well as improving the infrastructure to deliver them.
If you have specific questions about our infrastructure, the content of a report, or would like to request a new one, please contact your account manager or reach us at support@silverflow.com.
Current reporting suite
Functionality
Our asynchronous generation and retrieval reporting infrastructure allows for large report generation while remaining high performance (see next chapter).
Receive push notifications on report status updates through our events subscriptions.
Reports can be created and accessed through our API as well as through the Acquirer Portal in the Reports section.
Reports may be available in JSON, CSV, and Excel formats.
Our reports follow a strict change management policy to ensure continuity of performance (both JSON formats on the API as well as file downloads).
We ensure secure delivery of reports through authentication and permissions, as well as maintaining security protocols.
Users are able to create report schedules with a variety of intervals (quarterly, daily, hourly).
Asynchronous reporting infrastructure
As described in the Functionality above, our report generation is asynchronous, meaning that Agents can trigger a report generation, which will be enqueued for generation, and when the report is created Agents can retrieve it via a different endpoint. The infrastructure is designed this way to handle larger reports while maintaining performance, without timing out the API response. It works as follows:
Users generate a report through the
POST /v1/reports/{reportName}
endpoints. The response will list the report object created with a reportkey
.The report object is enqueued and we will start generating the report file. Users can receive a status update by calling our
GET /v1/reports/{key}
endpoint.Once the report file creation is finalised, the report object will receive a completed status and the report is ready for access. Silverflow sends out a notification that the report with its
key
has beencompleted
through the event sourcehttps://silverflow.com/reports
.Users can retrieve the report file with the
GET /v1/reports/{key}/file
.
Tips for best-in-class integration
Integrate continuously: For daily item-level or transaction-level reports, make sure to properly integrate with the time elements. For example for daily reports, the user should generate reports from 00:00:00 to 23:59:99 on D+0, and then again from 00:00:00 to 23:59:99 on D+1
Use event notifications for always up to date information: In order to stay updated on the report object status, users may integrate to our event notifications, which will be pushed once the report object received its Completed status.
How to’s
Generate and retrieve individual reports via the API
In order to generate and retrieve individual reports the user should follow the following flow:
Users generate a report through the POST reports/{report name}
endpoints. The response will list the report object created with a report key
. An example request for a reconciliationDetails
report looks like the following:
The report is then scheduled for generation. Users can receive a status update by calling our GET reports/{Key}
endpoint using the key
received when creating the request.
Note that in order to omit the need of periodically calling the GET report endpoint in step 2, clients may subscribe to our Report Event Notifications. Agents will receive an Completed update once the report has been finalised and is available for retrieval.
Users can retrieve the report file with the GET reports/{Key}/file
using the key that was provided during creation of the report.
Generate and retrieve individual reports via the Acquirer Portal
Authenticate and access the Acquirer Portal, navigate to the Reports Download section
Generate a report via the “Generate report” button
Select the report name and parameters relevant to the report name, in this case the “Date Range”. Click “Generate Report”
Navigate back to the reports download section. The report status will initially mention
scheduled
. Once the status iscompleted
, click the download button on the right to retrieve the report.
Schedule report generation
A user can create a new report schedule using the POST /v1/reportSchedules
endpoint using the parameters mentioned above. For example, the following request will create a SchemeFeeDetails report on an hourly basis by setting the following parameters. Note that the report will be build in JSON format because of its mimeType.
After a new report schedule is created, new report entities will be created following the type
and cadence
interval. To confirm the successful scheduling of the report, the user will receive a 200 response. In the response, you will find the status
as active
.
In order to retrieve the report schedule object(s), the user may call GET /v1/reportSchedules
to list all report schedules or GET /v1/reportSchedules/{reportScheduleKey}
using the key
of the report schedule. Lastly, to archive a report schedule, the user may call DELETE /v1/reportSchedules/{reportScheduleKey}
which will change its status to archived
.