{"id":28436613,"url":"https://github.com/pace/openfsc-client-js","last_synced_at":"2025-06-27T19:31:49.039Z","repository":{"id":48510682,"uuid":"313442279","full_name":"pace/openfsc-client-js","owner":"pace","description":"OpenFSC client library written in TypeScript","archived":false,"fork":false,"pushed_at":"2022-08-23T14:19:40.000Z","size":199,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-06-05T22:42:01.047Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://connectedfueling.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pace.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-11-16T22:24:34.000Z","updated_at":"2021-10-21T12:28:04.000Z","dependencies_parsed_at":"2022-09-04T22:20:57.899Z","dependency_job_id":null,"html_url":"https://github.com/pace/openfsc-client-js","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pace/openfsc-client-js","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pace%2Fopenfsc-client-js","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pace%2Fopenfsc-client-js/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pace%2Fopenfsc-client-js/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pace%2Fopenfsc-client-js/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pace","download_url":"https://codeload.github.com/pace/openfsc-client-js/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pace%2Fopenfsc-client-js/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262319023,"owners_count":23292997,"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","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":[],"created_at":"2025-06-05T22:39:43.117Z","updated_at":"2025-06-27T19:31:49.024Z","avatar_url":"https://github.com/pace.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# FSC SDK\n\n## Description\nA JavaScript library which implements the [FSC-API](https://www.notion.so/pacetelematics/PACE-Fueling-Site-Connect-API-dc609d941f5c410fadf567892158c8b0) and communicates with the FSC\nserver through a web socket connection.\n\n## Installation\n### As NPM package\n```bash\nyarn add @pace/fsc-sdk\n```\n\n## Build\n```bash\nyarn build\n```\n\n## Type-checking the repo\n\n```sh\nyarn type-check\n```\n\nRun in `--watch` mode:\n\n```sh\nyarn type-check:watch\n```\n\n## Usage\n\n```js\n// index.js\nimport FSC from '@pace/fsc-sdk';\n\nconst session = new FSC({\n\n  onPrices: function (session) {\n    session.price(1, '0100', \"LTR\", \"EUR\", 1.339, 'Super Plus');\n    session.price(1, '0200', \"LTR\", \"EUR\", 1.229, 'Super 95');\n    session.price(1, '0300', \"LTR\", \"EUR\", 1.499, 'Super 95 e5');\n  },\n\n  onProducts: function (session) {\n    session.product(1, '0100', 'ron98e5', 19.0);\n    session.product(1, '0200', 'ron95e10', 19.0);\n    session.product(1, '0300', 'ron95e5', 19.0);\n  },\n\n  onPumps: function (session) {\n    session.pump(1, 'in-use');\n    session.pump(2, 'out-of-order');\n    session.pump(3, 'free');\n    session.pump(4, 'ready-to-pay');\n  },\n\n  onPumpStatus: function (session, pumpNr, updateTTL) {\n    if (updateTTL \u0026\u0026 updateTTL !== 0) {\n      session.pump(pumpNr, 'free');\n      setTimeout(function () {\n        session.pump(pumpNr, 'in-use');\n      }, updateTTL * 1000);\n      setTimeout(function () {\n        session.pump(pumpNr, 'ready-to-pay');\n      }, updateTTL * 1000 * 2);\n    } else {\n      session.pump(pumpNr, 'free');\n    }\n  },\n\n  onTransactions: function (session) {\n    console.log('onTransactions ', session);\n\n    session.transaction(3, 'c71b9838ad3dfc15', 'open', '0100', 'EUR',\n      86.83, 72.978, 19.0, 13.65, 'LTR', 54.40, 1.339);\n  },\n\n  onClear: function (session, pumpNr, siteTransactionId, paceTransactionId) {\n    console.log(pumpNr, siteTransactionId, paceTransactionId);\n  }\n});\n\nconst site1 = session.connect({\n  siteID: '9eb56d5e-6563-430a-9d39-5ddf567e73d5',\n  secret: '1d3b755d3bce8f09b4f8ff08dabf1796'\n});\n\n```\n\n\n## License\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpace%2Fopenfsc-client-js","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpace%2Fopenfsc-client-js","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpace%2Fopenfsc-client-js/lists"}