Extensions to Open Financial Exchange Common Aggregates, Elements, and Data Types Common Aggregates
This section describes aggregates used in more than one service of Open Financial Exchange (for example, investments and payments).
-
Open Financial Exchange does not provide a universal space for identifying financial institutions, accounts, or types of accounts. The way to identify an FI and an account at that FI depends on the service. For information about service-specific ID aggregates, see Chapters 11, 12, and 13 on banking, payments, and investments.
-
Clients will not attempt to strip dashes or other punctuation from user-supplied numbers, such as the in an enrollment request or the <XXXACCTTO> in a service-addition request. Servers must be prepared to accept these numbers with or without punctuation.
Balance Records
Several responses allow FIs to send an arbitrary set of balance information as part of a response, for example a bank statement download. FIs might want to send information on outstanding balances, payment dates, interest rates, and so forth. Balances can report the date the given balance reflects in .
-
Tag
|
Description
|
|
Balance-response aggregate
|
|
Balance name, A-32
|
|
Balance description, A-80
|
|
Balance type.
DOLLAR = dollar (value formatted DDDD.cc)
PERCENT = percentage (value formatted XXXX.YYYY)
NUMBER = number (value formatted as is)
|
|
Balance value.
Interpretation depends on field, N-20
|
|
Effective date of the given balance, datetime
|
|
If dollar formatting, can optionally include currency
|
|
|
|
|
Error Reporting
To provide as much feedback as possible to clients and their users, Open Financial Exchange defines a aggregate. The most important element is the code that identifies the error. Each response defines the codes it uses. Codes 0 through 2999 have common meanings in all Open Financial Exchange transactions. Codes from 3000 and up have meanings specific to each transaction.
The last 10 error codes in each assigned range of 1000 is reserved for server-specific status codes. For example, of the general status codes, 2990-2999 are reserved for status codes defined by the server. Of the banking status codes, codes 10990-10999 are reserved for the server. If a client receives a server-specific status code that it does not know, it will handle it as a general error 2000.
-
Tag
|
Description
|
|
Error-reporting aggregate.
|
|
Error code, N-6
|
|
Severity of the error:
INFO = Informational only
WARN = Some problem with the request occurred but a valid response still present
ERROR = A problem severe enough that response could not be made
|
|
A textual explanation from the FI. Note that clients will generally have messages of their own for each error ID. Use this tag only to provide more details or for the general errors. A-255
|
|
|
For general errors, the server can respond with one of the following values. However, not all codes are possible in a specific context.
-
Code
|
Meaning
|
0
|
Success (INFO)
|
2000
|
General error (ERROR)
|
2021
|
Unsupported version (ERROR)
|
15500
|
Signon error (ERROR); see section 2.5.1
|
NOTE: Clients will generally have error messages based on . Therefore, do not use to replace that text. Use only to explain an error not well described by one of the defined codes, or to provide some additional information.
|