# Report Ledger The /reports/ledger endpoint provides access to detailed reports of ledger entries within the Easypay reconciliation system. This endpoint retrieves comprehensive financial data for each transaction recorded in the ledger, including captures, refunds, fees, and other financial operations, and it was designed to help users generate precise and relevant financial reports, aiding in effective account reconciliation and financial management. By using this endpoint, clients can obtain an itemized list of all ledger entries, including relevant financial details such as transaction amounts, fees, taxes, and net transferred amounts. The data returned by this endpoint is ideal for accounting, auditing, and financial analysis purposes, as it ensures transparency and accuracy in financial reporting. Endpoint: GET /report/ledger Version: 2.0 Security: accountId, apiKey ## Query parameters: - `cursor` (string) The cursor parameter is used for pagination. It specifies the pointer to the start of the next set of results in a sequence of paginated data. Typically, this is a unique identifier of the last item from the previous response. If not provided, the API fetches the first page of results. - `limit` (number) The maximum number of records to return in a single response. This value determines how many items are included in each page of the results. The default value is 100, and the maximum allowable limit is 100. If not specified, the default limit will be used. Adjust the limit to control the size of the response and manage the data load for each request. - `created_at` (string) Filter records by creation datetime interval in UTC. Maximum allowed range is 30 days. Format: interval(YYYY-MM-DD HH:MM,YYYY-MM-DD HH:MM). Example: "interval(2006-01-02 15:04,2006-01-02 15:04)" - `transaction_type` (string) Filter by LedgerTransactionType Enum: "CP", "RF", "RV", "FEE", "SP", "MAN", "TB", "OT", "CB", "OP", "TF" - `transfer_batch` (string) Filter by LedgerTransferBatch Example: "584" ## Response 200 fields (application/json): - `metadata` (object) An object containing additional information about the response. It includes details that help manage and navigate the retrieved data. - `metadata.next_cursor` (string) Provides the cursor for the next set of records. This value should be used as the cursor parameter in subsequent requests to continue paginating through the data. If the cursor is an empty string or null, it indicates that there are no more results. To retrieve all available results, continue making subsequent requests until next_cursor is empty or null. Example: "lL_j7ilk7rc" - `metadata.count` (number) The total number of records in the current response. This field indicates the number of items returned in the current set of results. Example: 10 - `data` (array) - `data.id` (string) A unique identifier for the ledger entry, represented as a UUID. This ID is used to uniquely track and reference individual entries within the ledger system. Example: "\"38c65c65-6b66-42e8-b3db-3a3361ef23e4\"" - `data.created_at` (string) The timestamp indicating when the resource was created. It is formatted as ISO 8601. Example: "2019-08-24T14:15:22Z" - `data.transaction_timestamp` (string) The exact timestamp of when the associated transaction occurred. It is formatted as "YYYY-MM-DD HH:MM". - `data.transaction_type` (string) LedgerTransactionType is a string enum that represents various types of financial transactions recorded in a ledger. Each transaction type is abbreviated with a code and corresponds to a specific financial operation. The following are the possible values and their descriptions: • CP (Capture): Represents the capture of funds, typically after a payment authorization. This transaction finalizes a payment and moves the funds from the payer's account to the payee's account. • RF (Refund): Represents a refund transaction where previously captured funds are returned to the payer's account. This transaction often occurs when a customer returns goods or services. • RV (Revert): Indicates a revert transaction that undoes a previously made transaction, often used to correct errors or reverse transactions. • SP (Split Payment): Represents a split payment transaction, where a payment is divided among multiple recipients or for different purposes within the same transaction. • FEE (Fee): Represents a fee transaction, which is a charge applied for a specific service or transaction. This could include service fees, processing fees, or other types of charges. • MAN (Manual Movement): Represents a manual movement of funds, typically entered manually by an administrator or accountant to adjust balances or correct errors. • TB (Bank Transfer): Represents a bank transfer transaction, where funds are moved between different bank accounts. This can be a transfer within the same bank or across different banks. • OT (Out Transfer): Indicates an out transfer transaction, where funds are transferred out of the current ledger or account to another external account or ledger. • CB (Chargeback): Represents a chargeback transaction, typically initiated by the payer's bank to reverse a disputed or fraudulent transaction. This transaction withdraws the funds from the payee's account and returns them to the payer. • OP (Out Payment): Represents an out payment transaction, where funds are paid out from the ledger to an external party or account. This transaction is usually used to settle debts or make external payments. • TF (Transfer Funds): Represents a movement of funds from an Easypay account to a bank account. Enum: "CP", "RF", "RV", "FEE", "SP", "MAN", "TB", "OT", "CB", "OP", "TF" - `data.amount_details` (object) An object containing detailed financial information related to the transaction. Provides a breakdown of various components of the transaction, such as fees , requested and payed amounts. - `data.amount_details.requested_amount` (object) The money type is a data structure used to represent a monetary value in a specific currency. It includes both the amount and the currency type to accurately define the value of money in various contexts, such as financial transactions, pricing, and accounting. - `data.amount_details.requested_amount.amount` (string) Represents the numerical value of the money. The amount should be a string formatted to include up to two decimal places to accurately represent cents or subunits of currency. For example, "123.45" represents one hundred twenty-three units and forty-five subunits of the currency. - `data.amount_details.requested_amount.currency` (string) Indicates the type of currency associated with the amount. This should follow standard currency codes (ISO 4217), such as "USD" for US Dollar, "EUR" for Euro, or "JPY" for Japanese Yen, to specify which currency the amount is denominated in. - `data.amount_details.payed_amount` (object) The money type is a data structure used to represent a monetary value in a specific currency. It includes both the amount and the currency type to accurately define the value of money in various contexts, such as financial transactions, pricing, and accounting. - `data.amount_details.fees` (array) An array of fee objects, where each fee represents a specific charge or cost associated with a transaction. Each fee includes details such as the amount and currency, and may represent different types of fees like fixed, variable, or VAT. - `data.amount_details.fees.fixed_amount` (object) The money type is a data structure used to represent a monetary value in a specific currency. It includes both the amount and the currency type to accurately define the value of money in various contexts, such as financial transactions, pricing, and accounting. - `data.amount_details.fees.variable_amount` (object) The money type is a data structure used to represent a monetary value in a specific currency. It includes both the amount and the currency type to accurately define the value of money in various contexts, such as financial transactions, pricing, and accounting. - `data.amount_details.fees.vat_amount` (object) The money type is a data structure used to represent a monetary value in a specific currency. It includes both the amount and the currency type to accurately define the value of money in various contexts, such as financial transactions, pricing, and accounting. - `data.transfer_batch_date` (string) The date when the transfer batch is scheduled or processed. The date is represented in ISO 8601 format (YYYY-MM-DD), indicating the year, month, and day. - `data.transfer_batch` (string) A unique identifier for the transfer batch, typically represented as a string. This value is used to track and reference a specific batch of transfers within the system. Example: "\"584\"" - `data.descriptive` (string) A brief, user-friendly description of the ledger entry. This is used to provide additional context or notes that describe the nature of the transaction in plain language. - `data.details` (object) An object containing detailed information about a specific operation and payment. This includes unique identifiers, the method used for the payment, and the type of payment. - `data.details.operation_id` (string) A unique identifier for the operation, represented as a UUID. Example: "502b0844-13a8-4788-b775-5e4cc8194a50" - `data.details.operation_key` (string) A merchant-specific identification key for the operation. - `data.details.method` (string) The payment method used for the transaction (e.g., CC for credit card). Example: "CC" - `data.details.payment_id` (string) A unique identifier for the payment, represented as a UUID. Example: "235934c2-467d-44fa-9e81-9cbd9d1a6f61" - `data.details.payment_type` (string) The type of payment, such as 'single' for a one-time payment. Example: "single" - `data.details.payment_key` (string) A merchant-specific identification key for the payment. - `data.amount` (object) The money type is a data structure used to represent a monetary value in a specific currency. It includes both the amount and the currency type to accurately define the value of money in various contexts, such as financial transactions, pricing, and accounting. ## Response 403 fields (application/json): - `status` (string, required) - `message` (array, required) An array of human-readable messages included in the response. These messages provide detailed information about the success of the operation or explain the reasons for any failure. This field is always present in the response to ensure clarity and transparency regarding the outcome of the API request. ## Response 412 fields (application/json): - `status` (string, required) - `message` (array, required) An array of human-readable messages included in the response. These messages provide detailed information about the success of the operation or explain the reasons for any failure. This field is always present in the response to ensure clarity and transparency regarding the outcome of the API request. ## Response 500 fields (application/json): - `status` (string, required) - `message` (array, required) An array of human-readable messages included in the response. These messages provide detailed information about the success of the operation or explain the reasons for any failure. This field is always present in the response to ensure clarity and transparency regarding the outcome of the API request.