Wallets

Create report schedule

Creates a new scheduled report that will be automatically generated and delivered according to the specified frequency and delivery preferences. Each user can create only one schedule per account.

post/ledger/v1/report-schedules

Request

Request body

timestring required

Time of day when the report should be generated and sent, in 24-hour format (HH:MM).

timezonestring required

Timezone to use for scheduling the report generation. Must be a valid IANA timezone identifier. Use Get Supported Timezones endpoint to get the list of timezones.

frequencyType'DAILY' | 'WEEKLY' | 'MONTHLY' required

Frequency at which the report should be generated. The report is generated for the previous time period.

For example, if the DAILY report is generated on 1st of January, it will contain the data for the previous day (31st of December). If the WEEKLY report is scheduled for Wednesday, it will contain the data for the previous Tuesday to this week's Wednesday.

frequencyDayinteger

Specific day (1=Monday, 7=Sunday) for report generation. Only for frequencyType WEEKLY.

To schedule a report for every day, set this value to 1.

format'CSV' | 'PDF' | 'JSON' required

File format for the generated report.

channel'webhook' | 'email' required

Delivery method for the report:

  • webhook for API delivery

  • email for delivery via email.

emailstring email

Email address for report delivery. Required when channel is email, ignored for the webhook channel.

Example request

{
  "time": "12:00",
  "timezone": "Europe/London",
  "frequencyType": "DAILY",
  "frequencyDay": 1,
  "format": "CSV",
  "channel": "webhook",
  "email": "reports@company.com",
  "reportParams": {
    "reportType": "TRANSACTION",
    "walletId": "a:02502251969431:yyDut96:1"
  }
}

Response

Report schedule created successfully

idstring uuid

Unique identifier for the created report schedule

createdBystring

Base64 encoded identifier of the user who created the schedule

namestring

Optional name for the report schedule

accountReferencestring uuid

Reference to the account this report schedule belongs to

timestring

The scheduled time for report generation in 24-hour format

timezonestring

The timezone used for scheduling

frequencyType'DAILY' | 'WEEKLY' | 'MONTHLY'

The frequency of report generation

frequencyDayinteger

The specific day for report generation based on frequency type

format'CSV' | 'PDF' | 'JSON'

The file format of the generated report (uppercase in response)

channel'WEBHOOK' | 'EMAIL'

The delivery method for the report (uppercase in response)

emailstring email

Email address for delivery (null when channel is WEBHOOK)

createdAtstring date-time

Timestamp when the report schedule was created

Example response

{
  "id": "3afd38a6-fc31-4775-87e0-eaa556447825",
  "createdBy": "yOVN4ejn3xuZqGI5IW7Clwv9YO8MCboZWdXTxYuZR/4=",
  "accountReference": "4e9d4fa8-29d7-11ed-84d9-0a878439b77f",
  "time": "12:00",
  "timezone": "Europe/London",
  "frequencyType": "DAILY",
  "frequencyDay": 1,
  "format": "CSV",
  "channel": "WEBHOOK",
  "reportParams": {
    "reportType": "TRANSACTION",
    "walletId": "a:02502251969431:yyDut96:1"
  },
  "createdAt": "2026-01-12T16:02:46Z"
}

Changes

No recorded changes to this operation across all 3 revisions of this API.