qonto_ofx 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +2 -0
  3. data/.rubocop.yml +1 -0
  4. data/.rubocop_todo.yml +68 -0
  5. data/Gemfile +6 -0
  6. data/Gemfile.lock +60 -0
  7. data/LICENSE.txt +21 -0
  8. data/README.md +34 -0
  9. data/Rakefile +11 -0
  10. data/bin/qonto_ofx +24 -0
  11. data/bin/setup +8 -0
  12. data/lib/api_gateway.rb +47 -0
  13. data/lib/base_validator.rb +17 -0
  14. data/lib/converter.rb +158 -0
  15. data/lib/ofx_validator.rb +17 -0
  16. data/lib/organization_validator.rb +17 -0
  17. data/lib/qonto_ofx/version.rb +3 -0
  18. data/lib/transactions_listing_validator.rb +17 -0
  19. data/qonto_ofx.gemspec +32 -0
  20. data/qonto_organization_schema.json +63 -0
  21. data/qonto_transactions_schema.json +175 -0
  22. data/schema/.DS_Store +0 -0
  23. data/schema/OFX2_Protocol.xsd +783 -0
  24. data/schema/OFX3_Protocol_dotNET.xsd +691 -0
  25. data/schema/OFX_Banking.xsd +119 -0
  26. data/schema/OFX_Banking_Message_Wrappers.xsd +399 -0
  27. data/schema/OFX_Banking_Messages.xsd +431 -0
  28. data/schema/OFX_BillPay.xsd +223 -0
  29. data/schema/OFX_BillPay_Message_Wrappers.xsd +343 -0
  30. data/schema/OFX_BillPay_Messages.xsd +412 -0
  31. data/schema/OFX_BillerDelivery.xsd +263 -0
  32. data/schema/OFX_BillerDelivery_Message_Wrappers.xsd +295 -0
  33. data/schema/OFX_BillerDelivery_Messages.xsd +259 -0
  34. data/schema/OFX_BillerDirectory.xsd +132 -0
  35. data/schema/OFX_BillerDirectory_Message_Wrappers.xsd +56 -0
  36. data/schema/OFX_BillerDirectory_Messages.xsd +86 -0
  37. data/schema/OFX_Common.xsd +2329 -0
  38. data/schema/OFX_CreditCard.xsd +45 -0
  39. data/schema/OFX_CreditCard_Message_Wrappers.xsd +88 -0
  40. data/schema/OFX_CreditCard_Messages.xsd +102 -0
  41. data/schema/OFX_Email.xsd +25 -0
  42. data/schema/OFX_Email_Message_Wrappers.xsd +129 -0
  43. data/schema/OFX_Email_Messages.xsd +72 -0
  44. data/schema/OFX_Image_Message_Wrappers.xsd +31 -0
  45. data/schema/OFX_Image_Messages.xsd +35 -0
  46. data/schema/OFX_InterTransfer.xsd +24 -0
  47. data/schema/OFX_InterTransfer_Message_Wrappers.xsd +195 -0
  48. data/schema/OFX_InterTransfer_Messages.xsd +256 -0
  49. data/schema/OFX_Investment.xsd +1358 -0
  50. data/schema/OFX_Investment_Message_Wrappers.xsd +162 -0
  51. data/schema/OFX_Investment_Messages.xsd +149 -0
  52. data/schema/OFX_Loan_Message_Wrappers.xsd +1 -0
  53. data/schema/OFX_Loan_Messages.xsd +124 -0
  54. data/schema/OFX_Loans.xsd +200 -0
  55. data/schema/OFX_Messages.xsd +18 -0
  56. data/schema/OFX_Profile.xsd +959 -0
  57. data/schema/OFX_Profile_Message_Wrappers.xsd +55 -0
  58. data/schema/OFX_Profile_Messages.xsd +96 -0
  59. data/schema/OFX_SecuritiesList.xsd +357 -0
  60. data/schema/OFX_SecuritiesList_Message_Wrappers.xsd +55 -0
  61. data/schema/OFX_SecuritiesList_Messages.xsd +55 -0
  62. data/schema/OFX_Signon.xsd +243 -0
  63. data/schema/OFX_Signon_Message_Wrappers.xsd +120 -0
  64. data/schema/OFX_Signon_Messages.xsd +211 -0
  65. data/schema/OFX_Signup.xsd +114 -0
  66. data/schema/OFX_Signup_Message_Wrappers.xsd +222 -0
  67. data/schema/OFX_Signup_Messages.xsd +153 -0
  68. data/schema/OFX_Tax1098.xsd +123 -0
  69. data/schema/OFX_Tax1098_Message_Wrappers.xsd +52 -0
  70. data/schema/OFX_Tax1098_Messages.xsd +65 -0
  71. data/schema/OFX_Tax1099.xsd +371 -0
  72. data/schema/OFX_Tax1099_Message_Wrappers.xsd +52 -0
  73. data/schema/OFX_Tax1099_Messages.xsd +50 -0
  74. data/schema/OFX_TaxW2.xsd +204 -0
  75. data/schema/OFX_TaxW2_Message_Wrappers.xsd +52 -0
  76. data/schema/OFX_TaxW2_Messages.xsd +58 -0
  77. data/schema/OFX_TypeDefinitions.xsd +98 -0
  78. data/schema/OFX_WireTransfer.xsd +88 -0
  79. data/schema/OFX_WireTransfer_Message_Wrappers.xsd +101 -0
  80. data/schema/OFX_WireTransfer_Messages.xsd +116 -0
  81. data/test/sample/ofx/invalid.xml +34 -0
  82. data/test/sample/ofx/malformed.xml +38 -0
  83. data/test/sample/ofx/test_result.xml +101 -0
  84. data/test/sample/ofx/valid.xml +38 -0
  85. data/test/sample/organization/invalid_format.txt +1 -0
  86. data/test/sample/organization/malformed.txt +1 -0
  87. data/test/sample/organization/valid_one_account.txt +1 -0
  88. data/test/sample/organization/valid_two_accounts.txt +1 -0
  89. data/test/sample/transactions/corp-1234-bank-account-1-FR0000000000000000000000001.txt +60 -0
  90. data/test/sample/transactions/corp-1234-bank-account-2-FR0000000000000000000000002-p1.txt +28 -0
  91. data/test/sample/transactions/corp-1234-bank-account-2-FR0000000000000000000000002-p2.txt +28 -0
  92. data/test/sample/transactions/invalid_format.txt +1 -0
  93. data/test/sample/transactions/malformed.txt +1 -0
  94. data/test/sample/transactions/valid.txt +1 -0
  95. data/test/test_converter.rb +51 -0
  96. data/test/test_ofx_validator.rb +25 -0
  97. data/test/test_organization_validator.rb +28 -0
  98. data/test/test_transactions_listing_validator.rb +23 -0
  99. metadata +314 -0
@@ -0,0 +1,243 @@
1
+ <?xml version="1.0" encoding="utf-8" standalone="no"?>
2
+
3
+ <!--
4
+
5
+ Open Financial Exchange Specification (c)1996-2003 ("Specification") by all of its publishers:
6
+ CheckFree Corp., Intuit Inc., and Microsoft Corporation. All rights reserved.
7
+
8
+ Revision History:
9
+
10
+ Version Date Editor Email Addr Short Description
11
+
12
+ p18 2002-02-11 altenburgd@businesslogic.com Initial revision
13
+ p21 2002-03-17 altenburgd@businesslogic.com Changed elementFormDefault to "unqualified"
14
+ Changed namespace to "http://ofx.net/types/2003/04"
15
+ p23 2002-05-13 altenburgd@businesslogic.com Bugfixes based on Intuit Schema QA
16
+ RC4 2002-06-24 gil_clark@intuit.com Added collapse to int types.
17
+ p24 2006-04-12 smithp@businesslogic.com Added AccessKeyType
18
+ MFAChallenge
19
+ MFAPhraseLabelType
20
+ MFAChallengeAnswer
21
+ MFAChallengeAnswerContent
22
+ 2006-06-14 wendy_dubois@intuit.com more MFA changes
23
+ -->
24
+
25
+ <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
26
+ elementFormDefault="unqualified"
27
+ xmlns:ofx="http://ofx.net/types/2003/04"
28
+ targetNamespace="http://ofx.net/types/2003/04">
29
+ <xsd:include schemaLocation = "OFX_Common.xsd" />
30
+
31
+ <xsd:complexType name="FinancialInstitution">
32
+ <xsd:annotation>
33
+ <xsd:documentation>
34
+ The OFX element "FI" is of type "FinancialInstitution"
35
+ </xsd:documentation>
36
+ </xsd:annotation>
37
+
38
+ <xsd:sequence>
39
+ <xsd:element name="ORG" type="ofx:GenericNameType" />
40
+
41
+ <xsd:element name="FID" type="ofx:FinancialInstitutionIdType" minOccurs="0"
42
+ maxOccurs="1" />
43
+ </xsd:sequence>
44
+ </xsd:complexType>
45
+
46
+
47
+ <xsd:simpleType name="ApplicationIdType">
48
+ <xsd:annotation>
49
+ <xsd:documentation>
50
+ The OFX element "APPID" is of type "ApplicationIdType"
51
+ </xsd:documentation>
52
+ </xsd:annotation>
53
+
54
+ <xsd:restriction base="xsd:string">
55
+ <xsd:minLength value="1"/>
56
+ <xsd:maxLength value="5" />
57
+ </xsd:restriction>
58
+ </xsd:simpleType>
59
+
60
+ <xsd:simpleType name="FinancialInstitutionCertificateIdType">
61
+ <xsd:annotation>
62
+ <xsd:documentation>
63
+ The OFX element "FICERTID" is of type "FinancialInstitutionCertificateIdType"
64
+ </xsd:documentation>
65
+ </xsd:annotation>
66
+
67
+ <xsd:restriction base="xsd:string">
68
+ <xsd:minLength value="1"/>
69
+ <xsd:maxLength value="64" />
70
+ </xsd:restriction>
71
+ </xsd:simpleType>
72
+
73
+ <xsd:simpleType name="IntegerType">
74
+ <xsd:annotation>
75
+ <xsd:documentation>
76
+ The OFX element "INT" is of type "IntegerType"
77
+ </xsd:documentation>
78
+ </xsd:annotation>
79
+
80
+ <xsd:restriction base="xsd:string">
81
+ <xsd:minLength value="1"/>
82
+ <xsd:maxLength value="4"/>
83
+ <xsd:pattern value="[0-9]+"/>
84
+ <xsd:whiteSpace value="collapse"/>
85
+ </xsd:restriction>
86
+ </xsd:simpleType>
87
+
88
+ <xsd:simpleType name="NumberNCEType">
89
+ <xsd:annotation>
90
+ <xsd:documentation>
91
+ The OFX element "NONCE" is of type "NumberNCEType"
92
+ </xsd:documentation>
93
+ </xsd:annotation>
94
+
95
+ <xsd:restriction base="xsd:string">
96
+ <xsd:minLength value="1"/>
97
+ <xsd:maxLength value="16" />
98
+ </xsd:restriction>
99
+ </xsd:simpleType>
100
+
101
+ <xsd:simpleType name="PasswordType">
102
+ <xsd:annotation>
103
+ <xsd:documentation>
104
+ The OFX element "PASSWORD" is of type "PasswordType"
105
+ </xsd:documentation>
106
+ </xsd:annotation>
107
+
108
+ <xsd:restriction base="xsd:string">
109
+ <xsd:minLength value="1"/>
110
+ <xsd:maxLength value="171" />
111
+ </xsd:restriction>
112
+ </xsd:simpleType>
113
+
114
+ <xsd:simpleType name="SessionCookieType">
115
+ <xsd:annotation>
116
+ <xsd:documentation>
117
+ The OFX element "SESSCOOKIE" is of type "SessionCookieType"
118
+ </xsd:documentation>
119
+ </xsd:annotation>
120
+
121
+ <xsd:restriction base="xsd:string">
122
+ <xsd:minLength value="1"/>
123
+ <xsd:maxLength value="1000" />
124
+ </xsd:restriction>
125
+ </xsd:simpleType>
126
+
127
+ <xsd:simpleType name="UserKeyType">
128
+ <xsd:annotation>
129
+ <xsd:documentation>
130
+ The OFX element "USERKEY" is of type "UserKeyType"
131
+ </xsd:documentation>
132
+ </xsd:annotation>
133
+
134
+ <xsd:restriction base="xsd:string">
135
+ <xsd:minLength value="1"/>
136
+ <xsd:maxLength value="64" />
137
+ </xsd:restriction>
138
+ </xsd:simpleType>
139
+
140
+ <xsd:simpleType name="AccessKeyType">
141
+ <xsd:annotation>
142
+ <xsd:documentation>
143
+ The OFX element "ACCESSKEY" is of type "AccessKeyType".
144
+ </xsd:documentation>
145
+ </xsd:annotation>
146
+
147
+ <xsd:restriction base="xsd:string">
148
+ <xsd:minLength value="1"/>
149
+ <!--
150
+ Typical GUIDs (i.e. RFC 4122 ver 1 UUIDs) are 39 chars when you
151
+ count the {}s.
152
+ -->
153
+ <xsd:maxLength value="1000"/>
154
+ </xsd:restriction>
155
+ </xsd:simpleType>
156
+
157
+ <xsd:complexType name="MFAChallenge">
158
+ <xsd:annotation>
159
+ <xsd:documentation>
160
+ The OFX element "MFACHALLENGE" is of type "MFAChallenge"
161
+ </xsd:documentation>
162
+ </xsd:annotation>
163
+
164
+ <xsd:sequence>
165
+ <xsd:element name="MFAPHRASEID" type="ofx:IdType"/>
166
+ <xsd:element name="MFAPHRASELABEL" type="ofx:MFAPhraseType"
167
+ minOccurs="0" maxOccurs="1"/>
168
+ </xsd:sequence>
169
+ </xsd:complexType>
170
+
171
+ <xsd:complexType name="MFAChallengeAnswer">
172
+ <xsd:annotation>
173
+ <xsd:documentation>
174
+ The OFX element "MFACHALLENGEANSWER" is of type "MFAChallengeAnswer".
175
+ </xsd:documentation>
176
+ </xsd:annotation>
177
+
178
+ <xsd:sequence>
179
+ <xsd:element name="MFAPHRASEID" type="ofx:IdType"/>
180
+ <xsd:element name="MFAPHRASEA" type="ofx:MFAPhraseType"/>
181
+ </xsd:sequence>
182
+ </xsd:complexType>
183
+
184
+ <xsd:simpleType name="MFAPhraseType">
185
+ <xsd:annotation>
186
+ <xsd:documentation>
187
+ The OFX element "MFAPHRASEA" is of type "MFAPhraseType".
188
+ The OFX element "MFAPHRASELABEL" is of type "MFAPhraseType".
189
+ </xsd:documentation>
190
+ </xsd:annotation>
191
+ <xsd:restriction base="xsd:string">
192
+ <xsd:minLength value="1"/>
193
+ <xsd:maxLength value="64"/>
194
+ </xsd:restriction>
195
+ </xsd:simpleType>
196
+
197
+ <xsd:simpleType name="UserCredType">
198
+ <xsd:annotation>
199
+ <xsd:documentation>
200
+ The OFX element "USERCRED1" is of type "UserCredType".
201
+ The OFX element "USERCRED2" is of type "UserCredType".
202
+ The effective size of USERCRED1 and USERCRED2 is A-32. If Type 1
203
+ security is used, then the actual field length is A-171.
204
+ </xsd:documentation>
205
+ </xsd:annotation>
206
+
207
+ <xsd:restriction base="xsd:string">
208
+ <xsd:minLength value="1"/>
209
+ <xsd:maxLength value="171"/>
210
+ </xsd:restriction>
211
+ </xsd:simpleType>
212
+
213
+ <xsd:simpleType name="AuthTokenType">
214
+ <xsd:annotation>
215
+ <xsd:documentation>
216
+ The OFX element "AUTHTOKEN" is of type "AuthTokenType".
217
+ The effective size of AUTHTOKEN is A-32. If Type 1
218
+ security is used, then the actual field length is A-171.
219
+ </xsd:documentation>
220
+ </xsd:annotation>
221
+
222
+ <xsd:restriction base="xsd:string">
223
+ <xsd:minLength value="1"/>
224
+ <xsd:maxLength value="171"/>
225
+ </xsd:restriction>
226
+ </xsd:simpleType>
227
+
228
+ <xsd:simpleType name="ClientUidType">
229
+ <xsd:annotation>
230
+ <xsd:documentation>
231
+ The OFX element "CLIENTUID" is of type "ClientUidType"
232
+ </xsd:documentation>
233
+ </xsd:annotation>
234
+
235
+ <xsd:restriction base="xsd:string">
236
+ <xsd:minLength value="1"/>
237
+ <xsd:maxLength value="36" />
238
+ </xsd:restriction>
239
+ </xsd:simpleType>
240
+
241
+ </xsd:schema>
242
+
243
+
@@ -0,0 +1,120 @@
1
+ <?xml version="1.0" encoding="utf-8" standalone="no"?>
2
+
3
+ <!--
4
+
5
+ Open Financial Exchange Specification (c)1996-2003 ("Specification") by all of its publishers:
6
+ CheckFree Corp., Intuit Inc., and Microsoft Corporation. All rights reserved.
7
+
8
+ Revision History:
9
+
10
+ Version Date Editor Email Addr Short Description
11
+
12
+ p18 2002-02-11 altenburgd@businesslogic.com Initial revision
13
+ p21 2002-03-17 altenburgd@businesslogic.com Changed elementFormDefault to "unqualified"
14
+ Changed namespace to "http://ofx.net/types/2003/04"
15
+ -->
16
+
17
+ <xsd:schema
18
+ elementFormDefault="unqualified"
19
+ targetNamespace="http://ofx.net/types/2003/04"
20
+ xmlns:ofx="http://ofx.net/types/2003/04"
21
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
22
+
23
+ <xsd:include schemaLocation="OFX_Signon_Messages.xsd"/>
24
+
25
+ <xsd:complexType name="ChallengeTransactionRequest">
26
+ <xsd:annotation>
27
+ <xsd:documentation>
28
+ The OFX element "CHALLENGETRNRQ" is of type "ChallengeTransactionRequest"
29
+ </xsd:documentation>
30
+ </xsd:annotation>
31
+
32
+ <xsd:complexContent>
33
+ <xsd:extension base="ofx:AbstractTransactionRequest">
34
+ <xsd:sequence>
35
+ <xsd:element name="CHALLENGERQ" type="ofx:ChallengeRequest"/>
36
+ </xsd:sequence>
37
+ </xsd:extension>
38
+ </xsd:complexContent>
39
+ </xsd:complexType>
40
+
41
+ <xsd:complexType name="ChallengeTransactionResponse">
42
+ <xsd:annotation>
43
+ <xsd:documentation>
44
+ The OFX element "CHALLENGETRNRS" is of type "ChallengeTransactionResponse"
45
+ </xsd:documentation>
46
+ </xsd:annotation>
47
+ <xsd:complexContent>
48
+ <xsd:extension base="ofx:AbstractTransactionResponse">
49
+ <xsd:sequence>
50
+ <xsd:element name="CHALLENGERS" type="ofx:ChallengeResponse" minOccurs="0"/>
51
+ </xsd:sequence>
52
+ </xsd:extension>
53
+ </xsd:complexContent>
54
+ </xsd:complexType>
55
+
56
+ <xsd:complexType name="PinChangeTransactionRequest">
57
+ <xsd:annotation>
58
+ <xsd:documentation>
59
+ The OFX element "PINCHTRNRQ" is of type "PinChangeTransactionRequest"
60
+ </xsd:documentation>
61
+ </xsd:annotation>
62
+
63
+ <xsd:complexContent>
64
+ <xsd:extension base="ofx:AbstractTransactionRequest">
65
+ <xsd:sequence>
66
+ <xsd:element name="PINCHRQ" type="ofx:PinChangeRequest"/>
67
+ </xsd:sequence>
68
+ </xsd:extension>
69
+ </xsd:complexContent>
70
+ </xsd:complexType>
71
+
72
+ <xsd:complexType name="PinChangeTransactionResponse">
73
+ <xsd:annotation>
74
+ <xsd:documentation>
75
+ The OFX element "PINCHTRNRS" is of type "PinChangeTransactionResponse"
76
+ </xsd:documentation>
77
+ </xsd:annotation>
78
+
79
+ <xsd:complexContent>
80
+ <xsd:extension base="ofx:AbstractTransactionResponse">
81
+ <xsd:sequence>
82
+ <xsd:element name="PINCHRS" type="ofx:PinChangeResponse" minOccurs="0"/>
83
+ </xsd:sequence>
84
+ </xsd:extension>
85
+ </xsd:complexContent>
86
+ </xsd:complexType>
87
+
88
+ <xsd:complexType name="MFAChallengeTransactionRequest">
89
+ <xsd:annotation>
90
+ <xsd:documentation>
91
+ The OFX element "MFACHALLENGETRNRQ" is of type "MFAChallengeTransactionRequest"
92
+ </xsd:documentation>
93
+ </xsd:annotation>
94
+
95
+ <xsd:complexContent>
96
+ <xsd:extension base="ofx:AbstractTransactionRequest">
97
+ <xsd:sequence>
98
+ <xsd:element name="MFACHALLENGERQ" type="ofx:MFAChallengeRequest"/>
99
+ </xsd:sequence>
100
+ </xsd:extension>
101
+ </xsd:complexContent>
102
+ </xsd:complexType>
103
+
104
+ <xsd:complexType name="MFAChallengeTransactionResponse">
105
+ <xsd:annotation>
106
+ <xsd:documentation>
107
+ The OFX element "MFACHALLENGETRNRS" is of type "MFAChallengeTransactionResponse"
108
+ </xsd:documentation>
109
+ </xsd:annotation>
110
+
111
+ <xsd:complexContent>
112
+ <xsd:extension base="ofx:AbstractTransactionResponse">
113
+ <xsd:sequence>
114
+ <xsd:element name="MFACHALLENGERS" type="ofx:MFAChallengeResponse" minOccurs="0"/>
115
+ </xsd:sequence>
116
+ </xsd:extension>
117
+ </xsd:complexContent>
118
+ </xsd:complexType>
119
+
120
+ </xsd:schema>
@@ -0,0 +1,211 @@
1
+ <?xml version="1.0" encoding="utf-8" standalone="no"?>
2
+
3
+ <!--
4
+
5
+ Open Financial Exchange Specification (c)1996-2003 ("Specification") by all of its publishers:
6
+ CheckFree Corp., Intuit Inc., and Microsoft Corporation. All rights reserved.
7
+
8
+ Revision History:
9
+
10
+ Version Date Editor Email Addr Short Description
11
+
12
+ p18 2002-02-11 altenburgd@businesslogic.com Initial revision
13
+ p21 2002-03-17 altenburgd@businesslogic.com Changed elementFormDefault to "unqualified"
14
+ Changed namespace to "http://ofx.net/types/2003/04"
15
+ p22 2006-04-12 smithp@businesslogic.com Added SignonRequest MFA Extensions
16
+ SignonResponse MFA Extensions
17
+ MFAChallengeRequest
18
+ MFAChallengeResponse
19
+ 2006-05-12 Wendy_dubois@intuit.com More MFA changes
20
+ -->
21
+
22
+ <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
23
+ elementFormDefault="unqualified"
24
+ xmlns:ofx="http://ofx.net/types/2003/04"
25
+ targetNamespace="http://ofx.net/types/2003/04">
26
+
27
+
28
+ <xsd:include schemaLocation = "OFX_Signon.xsd" />
29
+
30
+ <xsd:complexType name="ChallengeRequest">
31
+ <xsd:annotation>
32
+ <xsd:documentation>
33
+ The OFX element "CHALLENGERQ" is of type "ChallengeRequest"
34
+ </xsd:documentation>
35
+ </xsd:annotation>
36
+
37
+ <xsd:sequence>
38
+ <xsd:element name="USERID" type="ofx:IdType" />
39
+
40
+ <xsd:element name="FICERTID" type="ofx:FinancialInstitutionCertificateIdType"
41
+ minOccurs="0" maxOccurs="1" />
42
+ </xsd:sequence>
43
+ </xsd:complexType>
44
+
45
+ <xsd:complexType name="ChallengeResponse">
46
+ <xsd:annotation>
47
+ <xsd:documentation>
48
+ The OFX element "CHALLENGERS" is of type "ChallengeResponse"
49
+ </xsd:documentation>
50
+ </xsd:annotation>
51
+
52
+ <xsd:sequence>
53
+ <xsd:element name="USERID" type="ofx:IdType" />
54
+
55
+ <xsd:element name="NONCE" type="ofx:NumberNCEType" />
56
+
57
+ <xsd:element name="FICERTID" type="ofx:FinancialInstitutionCertificateIdType" />
58
+ </xsd:sequence>
59
+ </xsd:complexType>
60
+
61
+ <xsd:complexType name="PinChangeRequest">
62
+ <xsd:annotation>
63
+ <xsd:documentation>
64
+ The OFX element "PINCHRQ" is of type "PinChangeRequest"
65
+ </xsd:documentation>
66
+ </xsd:annotation>
67
+
68
+ <xsd:sequence>
69
+ <xsd:element name="USERID" type="ofx:IdType" />
70
+
71
+ <xsd:element name="NEWUSERPASS" type="ofx:PasswordType" />
72
+ </xsd:sequence>
73
+ </xsd:complexType>
74
+
75
+
76
+ <xsd:complexType name="PinChangeResponse">
77
+ <xsd:annotation>
78
+ <xsd:documentation>
79
+ The OFX element "PINCHRS" is of type "PinChangeResponse"
80
+ </xsd:documentation>
81
+ </xsd:annotation>
82
+
83
+ <xsd:sequence>
84
+ <xsd:element name="USERID" type="ofx:IdType" />
85
+
86
+ <xsd:element name="DTCHANGED" type="ofx:DateTimeType"
87
+ minOccurs="0" maxOccurs="1" />
88
+ </xsd:sequence>
89
+ </xsd:complexType>
90
+
91
+ <xsd:complexType name="SignonRequest">
92
+ <xsd:annotation>
93
+ <xsd:documentation>
94
+ The OFX element "SONRQ" is of type "SignonRequest"
95
+ </xsd:documentation>
96
+ </xsd:annotation>
97
+
98
+ <xsd:sequence>
99
+ <xsd:element name="DTCLIENT" type="ofx:DateTimeType" />
100
+
101
+ <xsd:choice>
102
+ <xsd:sequence>
103
+ <xsd:element name="USERID" type="ofx:IdType" />
104
+
105
+ <xsd:element name="USERPASS" type="ofx:PasswordType" />
106
+ </xsd:sequence>
107
+
108
+ <xsd:element name="USERKEY" type="ofx:UserKeyType" />
109
+ </xsd:choice>
110
+
111
+ <xsd:element name="GENUSERKEY" type="ofx:BooleanType"
112
+ minOccurs="0" maxOccurs="1" />
113
+
114
+ <xsd:element name="LANGUAGE" type="ofx:LanguageEnum" />
115
+
116
+ <xsd:element name="FI" type="ofx:FinancialInstitution" minOccurs="0"
117
+ maxOccurs="1" />
118
+
119
+ <xsd:element name="SESSCOOKIE" type="ofx:SessionCookieType"
120
+ minOccurs="0" maxOccurs="1" />
121
+
122
+ <xsd:element name="APPID" type="ofx:ApplicationIdType" />
123
+
124
+ <xsd:element name="APPVER" type="ofx:IntegerType" />
125
+
126
+ <xsd:element name="CLIENTUID" type="ofx:ClientUidType" minOccurs="0"
127
+ maxOccurs="1"/>
128
+
129
+ <xsd:sequence minOccurs="0" maxOccurs="1">
130
+ <xsd:element name="USERCRED1" type="ofx:UserCredType"/>
131
+
132
+ <xsd:element name="USERCRED2" type="ofx:UserCredType" minOccurs="0"
133
+ maxOccurs="1"/>
134
+ </xsd:sequence>
135
+
136
+ <xsd:element name="AUTHTOKEN" type="ofx:AuthTokenType" minOccurs="0"
137
+ maxOccurs="1"/>
138
+
139
+ <xsd:element name="ACCESSKEY" type="ofx:AccessKeyType" minOccurs="0"
140
+ maxOccurs="1"/>
141
+
142
+ <xsd:element name="MFACHALLENGEANSWER" type="ofx:MFAChallengeAnswer"
143
+ minOccurs="0" maxOccurs="unbounded"/>
144
+
145
+ </xsd:sequence>
146
+ </xsd:complexType>
147
+
148
+ <xsd:complexType name="SignonResponse">
149
+ <xsd:annotation>
150
+ <xsd:documentation>
151
+ The OFX element "SONRS" is of type "SignonResponse"
152
+ </xsd:documentation>
153
+ </xsd:annotation>
154
+
155
+ <xsd:sequence>
156
+ <xsd:element name="STATUS" type="ofx:Status" />
157
+
158
+ <xsd:element name="DTSERVER" type="ofx:DateTimeType" />
159
+
160
+ <xsd:element name="USERKEY" type="ofx:UserKeyType"
161
+ minOccurs="0" maxOccurs="1" />
162
+
163
+ <xsd:element name="TSKEYEXPIRE" type="ofx:DateTimeType"
164
+ minOccurs="0" maxOccurs="1" />
165
+
166
+ <xsd:element name="LANGUAGE" type="ofx:LanguageEnum" />
167
+
168
+ <xsd:element name="DTPROFUP" type="ofx:DateTimeType"
169
+ minOccurs="0" maxOccurs="1" />
170
+
171
+ <xsd:element name="DTACCTUP" type="ofx:DateTimeType"
172
+ minOccurs="0" maxOccurs="1" />
173
+
174
+ <xsd:element name="FI" type="ofx:FinancialInstitution" minOccurs="0"
175
+ maxOccurs="1" />
176
+
177
+ <xsd:element name="SESSCOOKIE" type="ofx:SessionCookieType"
178
+ minOccurs="0" maxOccurs="1" />
179
+
180
+ <xsd:element name="ACCESSKEY" type="ofx:AccessKeyType"
181
+ minOccurs="0" maxOccurs="1"/>
182
+
183
+ </xsd:sequence>
184
+ </xsd:complexType>
185
+
186
+ <xsd:complexType name="MFAChallengeRequest">
187
+ <xsd:annotation>
188
+ <xsd:documentation>
189
+ The OFX element "MFACHALLENGERQ" is of type "MFAChallengeRequest"
190
+ </xsd:documentation>
191
+ </xsd:annotation>
192
+
193
+ <xsd:sequence>
194
+ <xsd:element name="DTCLIENT" type="ofx:DateTimeType" />
195
+ </xsd:sequence>
196
+ </xsd:complexType>
197
+
198
+ <xsd:complexType name="MFAChallengeResponse">
199
+ <xsd:annotation>
200
+ <xsd:documentation>
201
+ The OFX element "MFACHALLENGERS" is of type "MFAChallengeResponse"
202
+ </xsd:documentation>
203
+ </xsd:annotation>
204
+
205
+ <xsd:sequence>
206
+ <xsd:element name="MFACHALLENGE" type="ofx:MFAChallenge" minOccurs="1"
207
+ maxOccurs="unbounded"/>
208
+ </xsd:sequence>
209
+ </xsd:complexType>
210
+
211
+ </xsd:schema>
@@ -0,0 +1,114 @@
1
+ <?xml version="1.0" encoding="utf-8" standalone="no"?>
2
+
3
+ <!--
4
+
5
+ Open Financial Exchange Specification (c)1996-2003 ("Specification") by all of its publishers:
6
+ CheckFree Corp., Intuit Inc., and Microsoft Corporation. All rights reserved.
7
+
8
+ Revision History:
9
+
10
+ Version Date Editor Email Addr Short Description
11
+
12
+ p14 2002-02-03 altenburgd@businesslogic.com Created abstract type 'ServiceAction'
13
+ and changed ServiceAdd, ServiceChange,
14
+ and ServiceDelete to extend that type
15
+ p18 2002-02-11 Gil_Clark@intuit.com
16
+ p21 2002-03-17 altenburgd@businesslogic.com Renamed ServiceAction to AbstractServiceAction
17
+ p21 2002-03-17 altenburgd@businesslogic.com Changed elementFormDefault to "unqualified"
18
+ Changed namespace to "http://ofx.net/types/2003/04"
19
+ p23 2002-05-13 altenburgd@businesslogic.com Bugfixes based on Intuit Schema QA
20
+ RC4 2003-06-24 gil_clark@intuit.com Added collapse to fixed length, non-string types and enums.
21
+ -->
22
+
23
+ <xsd:schema targetNamespace="http://ofx.net/types/2003/04" xmlns:ofx="http://ofx.net/types/2003/04" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified">
24
+ <xsd:include schemaLocation="OFX_Common.xsd"/>
25
+ <xsd:complexType name="AbstractServiceAction" abstract="true"/>
26
+ <xsd:simpleType name="ServiceEnum">
27
+ <xsd:annotation>
28
+ <xsd:documentation>
29
+ The OFX element "SERVICEENUM" is of type "ServiceEnum"
30
+ </xsd:documentation>
31
+ </xsd:annotation>
32
+ <xsd:restriction base="xsd:string">
33
+ <xsd:whiteSpace value="collapse"/>
34
+ <xsd:enumeration value="BANKSVC"/>
35
+ <xsd:enumeration value="BPSVC"/>
36
+ <xsd:enumeration value="INVSVC"/>
37
+ <xsd:enumeration value="PRESSVC"/>
38
+ </xsd:restriction>
39
+ </xsd:simpleType>
40
+ <xsd:complexType name="ServiceAdd">
41
+ <xsd:annotation>
42
+ <xsd:documentation>
43
+ The OFX element "SVCADD" is of type "ServiceAdd"
44
+ </xsd:documentation>
45
+ </xsd:annotation>
46
+ <xsd:complexContent>
47
+ <xsd:extension base="ofx:AbstractServiceAction">
48
+ <xsd:sequence>
49
+ <xsd:choice>
50
+ <xsd:element name="BANKACCTTO" type="ofx:BankAccount"/>
51
+ <xsd:element name="CCACCTTO" type="ofx:CreditCardAccount"/>
52
+ <xsd:element name="INVACCTTO" type="ofx:InvestmentAccount"/>
53
+ <xsd:element name="PRESACCTTO" type="ofx:PresentmentAccount"/>
54
+ </xsd:choice>
55
+ </xsd:sequence>
56
+ </xsd:extension>
57
+ </xsd:complexContent>
58
+ </xsd:complexType>
59
+ <xsd:complexType name="ServiceChange">
60
+ <xsd:annotation>
61
+ <xsd:documentation>
62
+ The OFX element "SVCCHG" is of type "ServiceChange"
63
+ </xsd:documentation>
64
+ </xsd:annotation>
65
+ <xsd:complexContent>
66
+ <xsd:extension base="ofx:AbstractServiceAction">
67
+ <xsd:sequence>
68
+ <xsd:choice>
69
+ <xsd:element name="BANKACCTFROM" type="ofx:BankAccount"/>
70
+ <xsd:element name="CCACCTFROM" type="ofx:CreditCardAccount"/>
71
+ <xsd:element name="INVACCTFROM" type="ofx:InvestmentAccount"/>
72
+ <xsd:element name="PRESACCTFROM" type="ofx:PresentmentAccount"/>
73
+ </xsd:choice>
74
+ <xsd:choice>
75
+ <xsd:element name="BANKACCTTO" type="ofx:BankAccount"/>
76
+ <xsd:element name="CCACCTTO" type="ofx:CreditCardAccount"/>
77
+ <xsd:element name="INVACCTTO" type="ofx:InvestmentAccount"/>
78
+ <xsd:element name="PRESACCTTO" type="ofx:PresentmentAccount"/>
79
+ </xsd:choice>
80
+ </xsd:sequence>
81
+ </xsd:extension>
82
+ </xsd:complexContent>
83
+ </xsd:complexType>
84
+ <xsd:complexType name="ServiceDelete">
85
+ <xsd:annotation>
86
+ <xsd:documentation>
87
+ The OFX element "SVCDEL" is of type "ServiceDelete"
88
+ </xsd:documentation>
89
+ </xsd:annotation>
90
+ <xsd:complexContent>
91
+ <xsd:extension base="ofx:AbstractServiceAction">
92
+ <xsd:sequence>
93
+ <xsd:choice>
94
+ <xsd:element name="BANKACCTFROM" type="ofx:BankAccount"/>
95
+ <xsd:element name="CCACCTFROM" type="ofx:CreditCardAccount"/>
96
+ <xsd:element name="INVACCTFROM" type="ofx:InvestmentAccount"/>
97
+ <xsd:element name="PRESACCTFROM" type="ofx:PresentmentAccount"/>
98
+ </xsd:choice>
99
+ </xsd:sequence>
100
+ </xsd:extension>
101
+ </xsd:complexContent>
102
+ </xsd:complexType>
103
+ <xsd:simpleType name="TempPassType">
104
+ <xsd:annotation>
105
+ <xsd:documentation>
106
+ The OFX element "TEMPPASS" is of type "TempPassType"
107
+ </xsd:documentation>
108
+ </xsd:annotation>
109
+ <xsd:restriction base="xsd:string">
110
+ <xsd:minLength value="1"/>
111
+ <xsd:maxLength value="32"/>
112
+ </xsd:restriction>
113
+ </xsd:simpleType>
114
+ </xsd:schema>