{"id":29795488,"url":"https://github.com/milesstoetzner/stoetzms-ghostfolio-importer","last_synced_at":"2025-10-07T20:24:51.388Z","repository":{"id":250002742,"uuid":"824926892","full_name":"milesstoetzner/stoetzms-ghostfolio-importer","owner":"milesstoetzner","description":"ghostfolio-importer is a simple utility to import transactions from Scalable Capital and Trade Republic into Ghostfolio.","archived":false,"fork":false,"pushed_at":"2024-09-05T20:06:09.000Z","size":62,"stargazers_count":8,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-12T21:07:25.045Z","etag":null,"topics":["export","ghostfolio","import","scalablecapital","traderepublic"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/milesstoetzner.png","metadata":{"files":{"readme":".github/README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-06T10:03:02.000Z","updated_at":"2025-08-20T09:52:58.000Z","dependencies_parsed_at":"2024-11-14T13:20:36.671Z","dependency_job_id":"f122b65c-8a52-48ea-9138-a4625ec25c7e","html_url":"https://github.com/milesstoetzner/stoetzms-ghostfolio-importer","commit_stats":null,"previous_names":["milesstoetzner/stoetzms-ghostfolio-importer"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/milesstoetzner/stoetzms-ghostfolio-importer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/milesstoetzner%2Fstoetzms-ghostfolio-importer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/milesstoetzner%2Fstoetzms-ghostfolio-importer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/milesstoetzner%2Fstoetzms-ghostfolio-importer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/milesstoetzner%2Fstoetzms-ghostfolio-importer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/milesstoetzner","download_url":"https://codeload.github.com/milesstoetzner/stoetzms-ghostfolio-importer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/milesstoetzner%2Fstoetzms-ghostfolio-importer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278839233,"owners_count":26054888,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-07T02:00:06.786Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["export","ghostfolio","import","scalablecapital","traderepublic"],"created_at":"2025-07-28T04:11:10.361Z","updated_at":"2025-10-07T20:24:51.353Z","avatar_url":"https://github.com/milesstoetzner.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ghostfolio Importer\n\n[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.0-blue.svg)](https://vintner.opentosca.org/code-of-conduct)\n[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n[![npm](https://img.shields.io/badge/npm-ghostfolio--importer-blue)](https://www.npmjs.com/package/ghostfolio-importer)\n\n`ghostfolio-importer` is a simple utility to import transactions from Scalable Capital and Trade Republic into Ghostfolio.\n\n## Usage\n\n```\nnpx ghostfolio-importer transform [options]\n```\n\n## Internal Transaction Format\n\nWe use the following internal format for transactions.\n\n| Property | Mandatory | Value                     | Description |\n|----------|-----------|---------------------------|-------------|\n| type     | true      | `BUY`, `SELL`, `DIVIDEND` |             |\n| ISIN     | true      | string                    |             |\n| quantity | true      | number                    |             |\n| price    | true      | number                    |             |\n| currency | true      | `EUR`, `USD`              |             |\n| date     | true      | date                      |             |\n| _meta    | false     | any                       |             |\n\n## Input Providers\n\n### Scalable Capital\n\nImport transactions from Scalable Capital.\n\n| Option         | Mandatory | Value              | Description |\n| -------------- | --------- | ------------------ | ----------- |\n| input-filter   | false     | string             |             |\n| input-dir      | true      | string             |             |\n| input-provider | true      | `scalable-capital` |             |\n| input-format   | true      | `pdf`              |             |\n\n### Trade Republic\n\nImport transactions from Trade Republic.\n\n| Option         | Mandatory | Value            | Description |\n| -------------- | --------- | ---------------- | ----------- |\n| input-filter   | false     | string           |             |\n| input-dir      | true      | string           |             |\n| input-provider | true      | `trade-republic` |             |\n| input-format   | true      | `pdf`            |             |\n\n### None\n\nImport transactions from a file using the internal transaction format.\n\n| Option         | Mandatory | Value          | Description |\n| -------------- | --------- | -------------- | ----------- |\n| input-file     | false     | string         |             |\n| input-provider | true      | `none`         |             |\n| input-format   | true      | `json`, `yaml` |             |\n\n## Output Providers\n\n### Ghostfolio\n\nExport transactions for Ghostfolio ...\n\n| Option                | Mandatory | Value                                 | Description |\n| --------------------- | --------- | ------------------------------------- | ----------- |\n| output-provider       | true      | `ghostfolio`                          |             |\n| output-format         | true      | `console`, `yaml`, `json`, `endpoint` |             |\n| ghostfolio-account-id | true      | string                                |             |\n| ghostfolio-map        | false     | string                                |             |\n\n... into the console.\n\n| Option        | Mandatory | Value     | Description |\n| ------------- | --------- | --------- | ----------- |\n| output-format | true      | `console` |             |\n\n... into a file.\n\n| Option        | Mandatory | Value          | Description |\n| ------------- | --------- | -------------- | ----------- |\n| output-format | true      | `json`, `yaml` |             |\n| output-file   | true      | string         |             |\n\n... into Ghostfolio.\n\n| Option              | Mandatory | Value      | Description |\n| ------------------- | --------- | ---------- | ----------- |\n| output-format       | true      | `endpoint` |             |\n| ghostfolio-endpoint | true      | string     |             |\n| ghostfolio-token    | true      | string     |             |\n\n### None\n\nExport transactions not for a specific provider but using the internal transaction format.\n\n| Option          | Mandatory | Value     | Description |\n| --------------- | --------- | --------- | ----------- |\n| output-provider | true      | `none`    |             |\n| output-format   | true      | `console` |             |\n\n## Limitations\n\n-   We do not support fees.\n-   We do not support taxes.\n-   We do only support EUR and USD.\n-   We do rely on a config to map ISINs to symbols that Ghostfolio understands.\n-   We do rely on transactions provided by PDF.\n\n## Similar Projects\n\nIt is worth to check out the following projects.\n\n-   [VibeNL/GhostfolioSidekick](https://github.com/VibeNL/GhostfolioSidekick)\n-   [roboes/neobroker-portfolio-importer](https://github.com/roboes/neobroker-portfolio-importer)\n\n## Keywords\n\nghostfolio, scalable capital, stock, stocks, ETF, ETFs, portfolio, import, importer, export, exporter, extract, pdf, json, yaml\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmilesstoetzner%2Fstoetzms-ghostfolio-importer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmilesstoetzner%2Fstoetzms-ghostfolio-importer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmilesstoetzner%2Fstoetzms-ghostfolio-importer/lists"}