card-data-parsers


Namecard-data-parsers JSON
Version 0.17.0 PyPI version JSON
download
home_pagehttps://www.fylehq.com
SummaryParsing bank feed data files
upload_time2024-11-26 13:36:05
maintainerNone
docs_urlNone
authorSiva Narayanan
requires_pythonNone
licenseMIT
keywords fyle api python sdk cards parsers amex visa cdf vcf s3df happay mastercard diners club
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # fyle-bank-feed-parser-sdk-py

[![test](https://github.com/fylein/fyle-bank-feed-parser-sdk-py/actions/workflows/test.yml/badge.svg)](https://github.com/fylein/fyle-bank-feed-parser-sdk-py/actions/workflows/test.yml) [![pythonpublish](https://github.com/fylein/fyle-bank-feed-parser-sdk-py/actions/workflows/pythonpublish.yml/badge.svg)](https://github.com/fylein/fyle-bank-feed-parser-sdk-py/actions/workflows/pythonpublish.yml)

Bank feeds parsers collection.


## Usage

To use the VCF parser, use the VCFParser class:

```
from card_data_parsers import VCFParser, ParserError

try:
  with open(dir + '/input.vcf') as input_file:
    result = VCFParser.parse(
      file_obj=input_file,
      account_number_mask_begin=4,
      account_number_mask_end=4
    )
  print(result)
except ParserError as e:
  print(f'Omg! error {e}')
```

Similarly, you can use AmexParser, CDFParser, S3DFParser and HappayParser for the right file types.


## Development

```
pip install -r requirements.txt
```
Check implemented parsers for examples.


### Run tests

```
chmod +x test.sh

./test.sh
```


## Releasing a new version

To release new version to Pypi:
- Create a new release [here](https://github.com/fylein/fyle-bank-feed-parser-sdk-py/releases/new).
  <center>OR</center>
- Create a git tag and push that tag(after merge) with version number like: 
  ```
  git tag v0.1.0
  git push origin v0.1.0
  ```



## Versioning semantics

The parse method is supposed to return a list of transactions. This is a list of python dict objects that looks like this:

```
[{"bank_name": "Test BANK", "vendor": "Test", "sync_type": "BANK FEED - VCF", "transaction_type": "debit", "currency": "EUR", "amount": "124.74", "transaction_date": "2018-11-30T10:00:00.000000Z", "account_number": "4142********6333", "transaction_dt": "2018-11-30T10:00:00.000000Z", "external_id": "b2a242d1d9814394b594044b77f36f2f"}]
```

If there is any non-backward compatible change to this structure e.g. a key is deleted, then bump up major number. Otherwise, bump up minor number.

            

Raw data

            {
    "_id": null,
    "home_page": "https://www.fylehq.com",
    "name": "card-data-parsers",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "fyle, api, python, sdk, cards, parsers, amex, visa, cdf, vcf, s3df, happay, mastercard, diners club",
    "author": "Siva Narayanan",
    "author_email": "siva@fyle.in",
    "download_url": "https://files.pythonhosted.org/packages/4d/1c/13886f9a1e923a65050b6bce550f1d96ce2f95650ce90887b888b573a37b/card_data_parsers-0.17.0.tar.gz",
    "platform": null,
    "description": "# fyle-bank-feed-parser-sdk-py\n\n[![test](https://github.com/fylein/fyle-bank-feed-parser-sdk-py/actions/workflows/test.yml/badge.svg)](https://github.com/fylein/fyle-bank-feed-parser-sdk-py/actions/workflows/test.yml) [![pythonpublish](https://github.com/fylein/fyle-bank-feed-parser-sdk-py/actions/workflows/pythonpublish.yml/badge.svg)](https://github.com/fylein/fyle-bank-feed-parser-sdk-py/actions/workflows/pythonpublish.yml)\n\nBank feeds parsers collection.\n\n\n## Usage\n\nTo use the VCF parser, use the VCFParser class:\n\n```\nfrom card_data_parsers import VCFParser, ParserError\n\ntry:\n  with open(dir + '/input.vcf') as input_file:\n    result = VCFParser.parse(\n      file_obj=input_file,\n      account_number_mask_begin=4,\n      account_number_mask_end=4\n    )\n  print(result)\nexcept ParserError as e:\n  print(f'Omg! error {e}')\n```\n\nSimilarly, you can use AmexParser, CDFParser, S3DFParser and HappayParser for the right file types.\n\n\n## Development\n\n```\npip install -r requirements.txt\n```\nCheck implemented parsers for examples.\n\n\n### Run tests\n\n```\nchmod +x test.sh\n\n./test.sh\n```\n\n\n## Releasing a new version\n\nTo release new version to Pypi:\n- Create a new release [here](https://github.com/fylein/fyle-bank-feed-parser-sdk-py/releases/new).\n  <center>OR</center>\n- Create a git tag and push that tag(after merge) with version number like: \n  ```\n  git tag v0.1.0\n  git push origin v0.1.0\n  ```\n\n\n\n## Versioning semantics\n\nThe parse method is supposed to return a list of transactions. This is a list of python dict objects that looks like this:\n\n```\n[{\"bank_name\": \"Test BANK\", \"vendor\": \"Test\", \"sync_type\": \"BANK FEED - VCF\", \"transaction_type\": \"debit\", \"currency\": \"EUR\", \"amount\": \"124.74\", \"transaction_date\": \"2018-11-30T10:00:00.000000Z\", \"account_number\": \"4142********6333\", \"transaction_dt\": \"2018-11-30T10:00:00.000000Z\", \"external_id\": \"b2a242d1d9814394b594044b77f36f2f\"}]\n```\n\nIf there is any non-backward compatible change to this structure e.g. a key is deleted, then bump up major number. Otherwise, bump up minor number.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Parsing bank feed data files",
    "version": "0.17.0",
    "project_urls": {
        "Homepage": "https://www.fylehq.com"
    },
    "split_keywords": [
        "fyle",
        " api",
        " python",
        " sdk",
        " cards",
        " parsers",
        " amex",
        " visa",
        " cdf",
        " vcf",
        " s3df",
        " happay",
        " mastercard",
        " diners club"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b5d270ae719cde5fda93ab996c88d8e26a3411005fec7be4a3a0b8495e76a017",
                "md5": "cd35ded107a225f82d70aaac3692f394",
                "sha256": "4eea08a0fc47d2efc29e95fe529ae1944046e9e5751cc7470dc64820cc8bdbaa"
            },
            "downloads": -1,
            "filename": "card_data_parsers-0.17.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "cd35ded107a225f82d70aaac3692f394",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 20710,
            "upload_time": "2024-11-26T13:36:04",
            "upload_time_iso_8601": "2024-11-26T13:36:04.233914Z",
            "url": "https://files.pythonhosted.org/packages/b5/d2/70ae719cde5fda93ab996c88d8e26a3411005fec7be4a3a0b8495e76a017/card_data_parsers-0.17.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4d1c13886f9a1e923a65050b6bce550f1d96ce2f95650ce90887b888b573a37b",
                "md5": "b2ccee8df19a3e18c2f90aaed172f215",
                "sha256": "1a6ee5066f93ffafcf2e66466efead2eb87e2251ecf16fff04e599afe87fbad2"
            },
            "downloads": -1,
            "filename": "card_data_parsers-0.17.0.tar.gz",
            "has_sig": false,
            "md5_digest": "b2ccee8df19a3e18c2f90aaed172f215",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 15405,
            "upload_time": "2024-11-26T13:36:05",
            "upload_time_iso_8601": "2024-11-26T13:36:05.763733Z",
            "url": "https://files.pythonhosted.org/packages/4d/1c/13886f9a1e923a65050b6bce550f1d96ce2f95650ce90887b888b573a37b/card_data_parsers-0.17.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-26 13:36:05",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "card-data-parsers"
}
        
Elapsed time: 0.35777s