card-data-parsers


Namecard-data-parsers JSON
Version 0.15.0 PyPI version JSON
download
home_pagehttps://www.fylehq.com
SummaryParsing bank feed data files
upload_time2023-08-03 12:32:43
maintainer
docs_urlNone
authorSiva Narayanan
requires_python
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": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "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/b3/06/a1ede0d30bfd05dfa4df700562c69dc7b04da31b6161bcc250cd368d25af/card_data_parsers-0.15.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.15.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": "1f2c0e3b0ff580d2bf16ce95ae7e2b9e7bf6e25bd74902151920d5153fd0ebfe",
                "md5": "8b51abaa401f093b700a2afc4b630376",
                "sha256": "c60aecf455d760957a33df17762e905a34d96a3561eaafe3dac41e69f7672af1"
            },
            "downloads": -1,
            "filename": "card_data_parsers-0.15.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8b51abaa401f093b700a2afc4b630376",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 20651,
            "upload_time": "2023-08-03T12:32:42",
            "upload_time_iso_8601": "2023-08-03T12:32:42.677047Z",
            "url": "https://files.pythonhosted.org/packages/1f/2c/0e3b0ff580d2bf16ce95ae7e2b9e7bf6e25bd74902151920d5153fd0ebfe/card_data_parsers-0.15.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b306a1ede0d30bfd05dfa4df700562c69dc7b04da31b6161bcc250cd368d25af",
                "md5": "428fba56b7c9cc5ba7d394d8ff70b248",
                "sha256": "edae5391b8d9e75bae45c6306b64eada02b34866d5d143c032c0248edda068fc"
            },
            "downloads": -1,
            "filename": "card_data_parsers-0.15.0.tar.gz",
            "has_sig": false,
            "md5_digest": "428fba56b7c9cc5ba7d394d8ff70b248",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 15248,
            "upload_time": "2023-08-03T12:32:43",
            "upload_time_iso_8601": "2023-08-03T12:32:43.890421Z",
            "url": "https://files.pythonhosted.org/packages/b3/06/a1ede0d30bfd05dfa4df700562c69dc7b04da31b6161bcc250cd368d25af/card_data_parsers-0.15.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-08-03 12:32:43",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "card-data-parsers"
}
        
Elapsed time: 0.12110s