{
  "format": "dataset-manifest/1",
  "slug": "financial-transactions-ledger",
  "version": 3,
  "seed": "financial-transactions-ledger:1",
  "spec": {
    "format": "dataset/1",
    "slug": "financial-transactions-ledger",
    "name": "Financial Transactions Ledger",
    "tagline": "Financial transactions, including invoices and journal entries, from a cloud-based accounting system.",
    "description": "Businesses manage their financial transactions with precision and transparency, allowing users to track invoices, purchases, and bank reconciliations while ensuring compliance with tax regulations and fiscal years. This synthetic dataset provides a model of such operations, emphasizing the importance of recording journal entries and the interplay between various financial elements within an organization. At its core, the dataset revolves around journal entries that capture the essence of transactions, estimates for financial planning, and the department structures that facilitate effective management of these operations.\n\nThe tables in this dataset include departments, journal_entries, invoices, purchases, tax_rates, and depreciation_schedules. Each row in the departments table represents a unique department within the organization, allowing for a structured approach to tracking financial activities. The journal_entries table serves as the main record of all transactions, linking to invoices and purchases through unique identifiers that ensure traceability. Invoices and purchases table rows indicate financial transactions occurring between departments and external vendors, detailing amounts and associated tax rates. Tax_rates provide a framework for compliance, while depreciation_schedules capture the financial impact of asset usage over time.\n\nQuestions that the data answers include understanding expenditure patterns across departments, tracking outstanding invoices, and analyzing the impact of different tax rates on overall profitability. This dataset is ideal for practicing financial analysis, creating reports, and developing insights into the fiscal health of a business. Users can explore various analytical queries such as month-end reconciliations, departmental spending trends, and the effectiveness of tax compliance measures, all of which reflect typical business activity.\n\nAs a synthetic dataset, it allows practitioners to familiarize themselves with essential financial concepts and processes in a risk-free environment, offering a realistic view of how cloud-based accounting systems operate.",
    "domain": "fintech",
    "shape": "ledger",
    "useCases": [
      "sql-practice",
      "teaching"
    ],
    "keywords": [
      "financial transactions",
      "accounting",
      "invoices",
      "journal entries",
      "purchases",
      "departments",
      "ledger",
      "financial data",
      "synthetic data"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "departments": {
        "description": "This table lists business departments, including their unique IDs and names, which are referenced in financial transactions.",
        "rows": 10,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for the department."
          },
          "name": {
            "kind": "fullName",
            "description": "Name of the department.",
            "nullable": true
          }
        }
      },
      "journal_entries": {
        "description": "This table captures all journal entries, linking them to specific invoices and purchases, and categorizing them by department.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for the journal entry."
          },
          "date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Date of the journal entry.",
            "trend": "growing"
          },
          "department_id": {
            "kind": "fk",
            "ref": "departments.id",
            "description": "Reference to the department making the entry."
          },
          "amount": {
            "kind": "decimal",
            "min": 1,
            "max": 10000,
            "scale": 2,
            "description": "Amount of the transaction.",
            "distribution": "long-tail"
          },
          "description": {
            "kind": "sentence",
            "max": 200,
            "description": "Description of the transaction.",
            "nullable": true
          }
        }
      },
      "invoices": {
        "description": "This table details invoices issued to customers, linking them to journal entries for tracking payments.",
        "rows": 150,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for the invoice."
          },
          "journal_entry_id": {
            "kind": "fk",
            "ref": "journal_entries.id",
            "description": "Reference to the corresponding journal entry."
          },
          "customer_name": {
            "kind": "fullName",
            "description": "Name of the customer associated with the invoice.",
            "nullable": true
          },
          "amount": {
            "kind": "decimal",
            "min": 10,
            "max": 5000,
            "scale": 2,
            "description": "Total amount of the invoice.",
            "distribution": "long-tail"
          },
          "due_date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Due date for payment of the invoice.",
            "nullable": true,
            "trend": "seasonal"
          }
        }
      },
      "purchases": {
        "description": "This table captures purchase transactions made by the business, linking them to journal entries and categorizing by department.",
        "rows": 100,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for the purchase."
          },
          "journal_entry_id": {
            "kind": "fk",
            "ref": "journal_entries.id",
            "description": "Reference to the corresponding journal entry."
          },
          "supplier_name": {
            "kind": "fullName",
            "description": "Name of the supplier for the purchase.",
            "nullable": true
          },
          "amount": {
            "kind": "decimal",
            "min": 5,
            "max": 10000,
            "scale": 2,
            "description": "Total amount of the purchase.",
            "distribution": "long-tail"
          },
          "purchase_date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Date of the purchase.",
            "trend": "growing"
          }
        }
      },
      "tax_rates": {
        "description": "This table provides unique tax rates applicable to different transactions, allowing for accurate calculations.",
        "rows": 20,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for the tax rate."
          },
          "description": {
            "kind": "sentence",
            "max": 100,
            "description": "Description of the tax rate.",
            "nullable": true
          },
          "rate": {
            "kind": "decimal",
            "min": 0.01,
            "max": 0.3,
            "scale": 4,
            "description": "The tax rate as a decimal."
          }
        }
      },
      "depreciation_schedules": {
        "description": "This table details unique depreciation schedules for assets, including frequency and rate, used for journal entries.",
        "rows": 30,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for the depreciation schedule."
          },
          "description": {
            "kind": "sentence",
            "max": 100,
            "description": "Description of the depreciation schedule."
          },
          "rate": {
            "kind": "decimal",
            "min": 0.01,
            "max": 0.2,
            "scale": 4,
            "description": "Depreciation rate as a decimal.",
            "nullable": true,
            "when": {
              "column": "frequency",
              "in": [
                "monthly",
                "quarterly",
                "annually"
              ]
            }
          },
          "frequency": {
            "kind": "enum",
            "values": [
              "monthly",
              "quarterly",
              "annually"
            ],
            "description": "Frequency of depreciation.",
            "weights": [
              6,
              2,
              1
            ]
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "monetary",
      "timestamped",
      "categorical",
      "nullable"
    ],
    "analysisQuestions": [
      "What is the total amount invoiced by each department?",
      "Which suppliers have the highest total purchase amounts?",
      "How do tax rates vary by transaction type?",
      "What is the average delay in payment for invoices?",
      "How is depreciation affecting the financial statements over time?"
    ],
    "suggestedQueries": [
      {
        "title": "List all invoices with their corresponding journal entries",
        "sql": "SELECT invoices.id, invoices.amount, journal_entries.date FROM invoices JOIN journal_entries ON invoices.journal_entry_id = journal_entries.id;",
        "dialect": "postgres"
      },
      {
        "title": "Calculate total purchases by department",
        "sql": "SELECT departments.name, SUM(purchases.amount) AS total_purchases FROM purchases JOIN journal_entries ON purchases.journal_entry_id = journal_entries.id JOIN departments ON journal_entries.department_id = departments.id GROUP BY departments.name;",
        "dialect": "postgres"
      },
      {
        "title": "Find average invoice amounts grouped by due date month",
        "sql": "SELECT DATE_TRUNC('month', due_date) AS month, AVG(amount) AS average_invoice FROM invoices GROUP BY month;",
        "dialect": "postgres"
      },
      {
        "title": "Identify overdue invoices and their respective departments",
        "sql": "SELECT invoices.id, invoices.due_date, departments.name FROM invoices JOIN journal_entries ON invoices.journal_entry_id = journal_entries.id JOIN departments ON journal_entries.department_id = departments.id WHERE invoices.due_date < CURRENT_DATE;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Accounting Educators",
        "body": "Educators in accounting can use this dataset to teach students about financial transactions, journal entries, and the importance of accurate record-keeping. By guiding students through practical exercises using SQL queries, educators can help them understand real-world applications and compliance with accounting standards."
      },
      {
        "title": "Financial Analysts",
        "body": "Financial analysts can utilize this dataset to practice their SQL skills and analyze financial data patterns. By exploring journal entries, invoices, and purchase trends, they can gain insights into a company's financial health and make informed recommendations based on their analyses."
      },
      {
        "title": "Business Owners",
        "body": "Business owners can leverage this dataset to better understand their financial transactions and departmental performance. By analyzing invoice amounts and purchase history, they can identify areas for cost savings and optimize their cash flow management, ensuring financial stability."
      },
      {
        "title": "Software Developers",
        "body": "Software developers working on accounting applications can use this dataset as a mock data source. By integrating it into their applications, they can test features like invoice generation, expense tracking, and financial reporting, ensuring their software meets user needs effectively."
      }
    ]
  },
  "counts": {
    "departments": 10,
    "depreciation_schedules": 30,
    "journal_entries": 200,
    "invoices": 150,
    "purchases": 100,
    "tax_rates": 20
  },
  "stats": {
    "departments": {
      "rows": 10,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 10,
          "min": 1,
          "max": 10
        },
        "name": {
          "nulls": 1,
          "distinct": 9,
          "min": "Amir Reyes",
          "max": "Yusuf Cruz"
        }
      }
    },
    "journal_entries": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "date": {
          "nulls": 0,
          "distinct": 150,
          "min": "2023-01-03",
          "max": "2023-12-31"
        },
        "department_id": {
          "nulls": 0,
          "distinct": 10,
          "min": 1,
          "max": 10
        },
        "amount": {
          "nulls": 0,
          "distinct": 200,
          "min": 1.23,
          "max": 9862.86
        },
        "description": {
          "nulls": 26,
          "distinct": 174
        }
      }
    },
    "invoices": {
      "rows": 150,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 150,
          "min": 1,
          "max": 150
        },
        "journal_entry_id": {
          "nulls": 0,
          "distinct": 106,
          "min": 1,
          "max": 200
        },
        "customer_name": {
          "nulls": 17,
          "distinct": 133,
          "min": "Amir Demir",
          "max": "Zara Hassan"
        },
        "amount": {
          "nulls": 0,
          "distinct": 150,
          "min": 10.64,
          "max": 4989.59
        },
        "due_date": {
          "nulls": 13,
          "distinct": 113,
          "min": "2023-01-02",
          "max": "2023-12-30"
        }
      }
    },
    "purchases": {
      "rows": 100,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 100,
          "min": 1,
          "max": 100
        },
        "journal_entry_id": {
          "nulls": 0,
          "distinct": 81,
          "min": 2,
          "max": 200
        },
        "supplier_name": {
          "nulls": 11,
          "distinct": 87,
          "min": "Amir Lee",
          "max": "Zara Hassan"
        },
        "amount": {
          "nulls": 0,
          "distinct": 100,
          "min": 5.02,
          "max": 9984.01
        },
        "purchase_date": {
          "nulls": 0,
          "distinct": 87,
          "min": "2023-01-08",
          "max": "2023-12-31"
        }
      }
    },
    "tax_rates": {
      "rows": 20,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 20,
          "min": 1,
          "max": 20
        },
        "description": {
          "nulls": 4,
          "distinct": 16
        },
        "rate": {
          "nulls": 0,
          "distinct": 20,
          "min": 0.0164,
          "max": 0.2923
        }
      }
    },
    "depreciation_schedules": {
      "rows": 30,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 30,
          "min": 1,
          "max": 30
        },
        "description": {
          "nulls": 0,
          "distinct": 30
        },
        "rate": {
          "nulls": 0,
          "distinct": 30,
          "min": 0.01,
          "max": 0.1879
        },
        "frequency": {
          "nulls": 0,
          "distinct": 3,
          "min": "annually",
          "max": "quarterly"
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/departments.csv",
      "format": "csv",
      "table": "departments",
      "key": "datasets/financial-transactions-ledger/v3/csv/departments.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/financial-transactions-ledger/v3/csv/departments.csv",
      "bytes": 146,
      "sha256": "e3cef900b63ccbf7914b7c41891261c6fb5ad5424ae00902b588a08a9b184935",
      "rows": 10,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/depreciation_schedules.csv",
      "format": "csv",
      "table": "depreciation_schedules",
      "key": "datasets/financial-transactions-ledger/v3/csv/depreciation_schedules.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/financial-transactions-ledger/v3/csv/depreciation_schedules.csv",
      "bytes": 2306,
      "sha256": "dc156599069e1a4ce616aa66f41281f9036dbb0a8cc2c715d3be0283725fc5ff",
      "rows": 30,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/journal_entries.csv",
      "format": "csv",
      "table": "journal_entries",
      "key": "datasets/financial-transactions-ledger/v3/csv/journal_entries.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/financial-transactions-ledger/v3/csv/journal_entries.csv",
      "bytes": 14917,
      "sha256": "26c61ed3417b8e4119f04e1d6bac537620fa164d0026798c4166cc9a69086163",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/invoices.csv",
      "format": "csv",
      "table": "invoices",
      "key": "datasets/financial-transactions-ledger/v3/csv/invoices.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/financial-transactions-ledger/v3/csv/invoices.csv",
      "bytes": 5489,
      "sha256": "b0a904d2bc4b1d02693759b1f5ceb0389e76673a934a53149d18409d26ad2283",
      "rows": 150,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/purchases.csv",
      "format": "csv",
      "table": "purchases",
      "key": "datasets/financial-transactions-ledger/v3/csv/purchases.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/financial-transactions-ledger/v3/csv/purchases.csv",
      "bytes": 3731,
      "sha256": "89cfb3300634997432dcd4ca9691d25d855af5a331b7416d8008b384b8895545",
      "rows": 100,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/tax_rates.csv",
      "format": "csv",
      "table": "tax_rates",
      "key": "datasets/financial-transactions-ledger/v3/csv/tax_rates.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/financial-transactions-ledger/v3/csv/tax_rates.csv",
      "bytes": 1146,
      "sha256": "6829eee575dfe191de00ef159dc5482d7b8958c16b6439fd1dd5268cca5da3ec",
      "rows": 20,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "financial-transactions-ledger.json",
      "format": "json",
      "table": null,
      "key": "datasets/financial-transactions-ledger/v3/financial-transactions-ledger.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/financial-transactions-ledger/v3/financial-transactions-ledger.json",
      "bytes": 82323,
      "sha256": "ba430340c95b730279f5d3becb53c0ea631d26e91e7262a1e5cc9a336669b168",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/financial-transactions-ledger/v3/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/financial-transactions-ledger/v3/sql/postgres.sql",
      "bytes": 37566,
      "sha256": "d69b4ec648c1f719661d2f74d1a46a3dd330cbb3728875ad2d6959ccc25ad9c1",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/financial-transactions-ledger/v3/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/financial-transactions-ledger/v3/sql/mysql.sql",
      "bytes": 36863,
      "sha256": "e0d6fa9ee2ad10a85102b4b4c1fe5a92c95f2aea78c9b6a4e88d67791cc77d37",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/financial-transactions-ledger/v3/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/financial-transactions-ledger/v3/sql/mssql.sql",
      "bytes": 38230,
      "sha256": "60c79de27f971a22e3da45888a2f2eaa086002a755c7ed2ec25403dfbd89baa8",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/financial-transactions-ledger/v3/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/financial-transactions-ledger/v3/sql/sqlite.sql",
      "bytes": 36679,
      "sha256": "a95a0f6137b6cf0bac9e80a4d0c13ee17031b810f373427618d2320771ec2aa7",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/financial-transactions-ledger/v3/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/financial-transactions-ledger/v3/prisma/seed.ts",
      "bytes": 66832,
      "sha256": "5f6c7d6e4343be6324dfa3f309d4211271c89e3cc2e00c127baa57ee393cf78b",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/financial-transactions-ledger/v3/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/financial-transactions-ledger/v3/django/fixtures.json",
      "bytes": 105756,
      "sha256": "fe7bceb7093c5044dbe2c14e4cf7286490bda77b9ba00bd928a0d5c6b53778d4",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788766840205,
  "updatedAt": 1788784002003
}
