ofxstatement-nordigen 0.1__tar.gz → 0.1.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of ofxstatement-nordigen might be problematic. Click here for more details.

Files changed (16) hide show
  1. {ofxstatement_nordigen-0.1/src/ofxstatement_nordigen.egg-info → ofxstatement_nordigen-0.1.1}/PKG-INFO +1 -1
  2. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/pyproject.toml +1 -1
  3. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/src/ofxstatement_nordigen/schemas.py +12 -11
  4. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1/src/ofxstatement_nordigen.egg-info}/PKG-INFO +1 -1
  5. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/tests/test_schemas.py +17 -0
  6. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/MANIFEST.in +0 -0
  7. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/README.rst +0 -0
  8. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/setup.cfg +0 -0
  9. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/src/ofxstatement_nordigen/__init__.py +0 -0
  10. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/src/ofxstatement_nordigen/plugin.py +0 -0
  11. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/src/ofxstatement_nordigen.egg-info/SOURCES.txt +0 -0
  12. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/src/ofxstatement_nordigen.egg-info/dependency_links.txt +0 -0
  13. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/src/ofxstatement_nordigen.egg-info/entry_points.txt +0 -0
  14. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/src/ofxstatement_nordigen.egg-info/requires.txt +0 -0
  15. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/src/ofxstatement_nordigen.egg-info/top_level.txt +0 -0
  16. {ofxstatement_nordigen-0.1 → ofxstatement_nordigen-0.1.1}/tests/test_sample.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ofxstatement-nordigen
3
- Version: 0.1
3
+ Version: 0.1.1
4
4
  Summary: ofxstatement plugin for Nordigen bank statements
5
5
  Author-email: Jimmy Stammers <jimmy.stammers@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/jstammers/ofxstatement-nordigen/
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "ofxstatement-nordigen"
7
- version = "0.1"
7
+ version = "0.1.1"
8
8
  authors = [
9
9
  { name="Jimmy Stammers", email="jimmy.stammers@gmail.com" },
10
10
  ]
@@ -22,24 +22,25 @@ class Amount(BaseModel):
22
22
  return value
23
23
 
24
24
 
25
- class InstructedAmount(Amount):
26
- targetCurrency: Optional[Currency] = None
25
+ class Account(BaseModel):
26
+ bban: Optional[str] = None
27
+
28
+
29
+ class CurrencyExchange(BaseModel):
27
30
  sourceCurrency: Optional[Currency] = None
31
+ targetCurrency: Optional[Currency] = None
32
+ unitCurrency: Optional[Currency] = None
28
33
  exchangeRate: Optional[float] = None
34
+ instructedAmount: Optional[Amount] = None
29
35
 
30
- @field_validator("targetCurrency", "sourceCurrency", mode="before")
36
+ @field_validator("sourceCurrency", "targetCurrency", "unitCurrency", mode="before")
31
37
  def validate_currency(cls, value):
32
38
  if isinstance(value, str):
33
39
  return Currency(value)
34
40
  return value
35
41
 
36
-
37
- class Account(BaseModel):
38
- bban: Optional[str] = None
39
-
40
-
41
- class ReportExchangeRate(BaseModel):
42
- instructedAmount: Optional[InstructedAmount] = None
42
+ class Config:
43
+ arbitrary_types_allowed = True
43
44
 
44
45
 
45
46
  class NordigenTransactionModel(BaseModel):
@@ -56,7 +57,7 @@ class NordigenTransactionModel(BaseModel):
56
57
  creditorAgent: Optional[str] = None
57
58
  creditorId: Optional[str] = None
58
59
  creditorName: Optional[str] = None
59
- currencyExchange: Optional[Union[ReportExchangeRate, InstructedAmount]] = None
60
+ currencyExchange: Optional[CurrencyExchange] = None
60
61
  debtorAccount: Optional[Account] = None
61
62
  debtorAgent: Optional[str] = None
62
63
  debtorName: Optional[str] = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ofxstatement-nordigen
3
- Version: 0.1
3
+ Version: 0.1.1
4
4
  Summary: ofxstatement plugin for Nordigen bank statements
5
5
  Author-email: Jimmy Stammers <jimmy.stammers@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/jstammers/ofxstatement-nordigen/
@@ -42,8 +42,25 @@ from ofxstatement_nordigen.schemas import NordigenTransactionModel
42
42
  },
43
43
  "internalTransactionId": "anonymized_internal_transaction_id",
44
44
  },
45
+ {
46
+ "transactionId": "anonymized_transaction_id",
47
+ "bookingDate": "2025-04-05",
48
+ "bookingDateTime": "2025-05-05T07:20:42.19Z",
49
+ "transactionAmount": {"amount": "-100.0000", "currency": "GBP"},
50
+ "currencyExchange": {
51
+ "instructedAmount": {"amount": "204.5010", "currency": "AUD"},
52
+ "sourceCurrency": "AUD",
53
+ "exchangeRate": "2.04501",
54
+ "unitCurrency": "GBP",
55
+ "targetCurrency": "GBP",
56
+ },
57
+ "remittanceInformationUnstructured": "anonymized_remittance_information",
58
+ "proprietaryBankTransactionCode": "anonymized_code",
59
+ "internalTransactionId": "anonymized_internal_transaction_id",
60
+ },
45
61
  ],
46
62
  )
47
63
  def test_go_cardless_transaction_model(data):
48
64
  validated = NordigenTransactionModel(**data)
65
+ print(validated)
49
66
  assert validated is not None