OFX Message Support in MSN Money and Microsoft Money OFX Message Support in MSN Money and Microsoft Money ..........................................3 1. Conventions ..................................................................................................................................................... 3 2. Structure ............................................................................................................................................................ 4 2.2 OFX Headers............................................................................................................................................ 4 Message Sets .................................................................................................................................................. 5 2.4.6 Transaction Wrapper Request – XXXTRNRQ ..................................................................................... 5 2.5 Signon Message Set ................................................................................................................................. 6 2.5.2 USERPASS Change .............................................................................................................................. 7 2.6 External Data Support .............................................................................................................................. 7 3. Common Aggregates and Elements .................................................................................................................. 8 4. Security ............................................................................................................................................................. 8 5. International ...................................................................................................................................................... 8 5.2 Currency ................................................................................................................................................... 8 6. Data Synchronization ........................................................................................................................................ 9 6.6 Synchronization Transaction Wrappers ................................................................................................... 9 7. FI Profile ......................................................................................................................................................... 10 7.1 Profile Request & Response ................................................................................................................... 10 8. Activation & Account Information ................................................................................................................. 13 8.4 Enrollment and Password Acquisition ................................................................................................... 13 8.5 Account Information .............................................................................................................................. 14 8.6 Service Activation .................................................................................................................................. 15 8.7 Name and Address Changes ................................................................................................................... 16 8.8 Signup Message Set Profile Information................................................................................................ 16 9. Customer to FI Communication ...................................................................................................................... 17 Generic Mail................................................................................................................................................. 17 9.3 Get HTML Page ..................................................................................................................................... 19 9.4 Email Message Set Profile ..................................................................................................................... 19 10. Recurring Transactions ................................................................................................................................. 20 10.2 Recurring Instructions .......................................................................................................................... 20 10.2.1 Values for FREQ ............................................................................................................................... 20 11. Banking ......................................................................................................................................................... 21 Banking Support Summary .......................................................................................................................... 21 11.3 Common Banking Aggregates ............................................................................................................. 22 11.4.1 Banking Statement Download ........................................................................................................... 24 11.4.2 Credit Card Statement Download...................................................................................................... 26 11.5 Statement Closing Information ............................................................................................................ 30 11.6 Stop Check ........................................................................................................................................... 30 11.7 Intra-bank Funds Transfers .................................................................................................................. 31 11.8 Inter-bank Transfer............................................................................................................................... 32 11.9 Wire Transfer ....................................................................................................................................... 32 11.10 Recurring Funds Transfer................................................................................................................... 32 11.11.1 Banking E-mail ............................................................................................................................... 33 11.12 Synchronization.................................................................................................................................. 35 11.12.7.2 Response <BANKMAILSYNCRS> ............................................................................................ 39 11.13 Bank Message Sets and Profile .......................................................................................................... 39 12. Payments ....................................................................................................................................................... 42 12.5 Common Bill Payment Aggregates ...................................................................................................... 43 12.6 Payments Functions.............................................................................................................................. 46 12.6.2 Payment Modification ....................................................................................................................... 47 12.7 Recurring Payments ............................................................................................................................. 48 12.8 Payment Mail ....................................................................................................................................... 51 12.9 Payee Lists ........................................................................................................................................... 51 12.10 Payment Synchronization ................................................................................................................... 53 12.10.2 Recurring Payment Synchronization ............................................................................................... 55 12.11.2 Bill Payment Message Set Profile <BILLPAYMSGSET> ............................................................. 56 Process Date Model...................................................................................................................................... 57 13. Investments ................................................................................................................................................... 58 13.6 Investment Accounts ............................................................................................................................ 58 13.7 Investment Message Sets and Profile ................................................................................................... 60 13.8.1 Security Identification <SECID> ...................................................................................................... 61 13.9 Investment Statement Download.......................................................................................................... 66 13.9.2.6 Positions ......................................................................................................................................... 76 13.9.2.7 Investment Balances <INVBAL> .................................................................................................. 77 13.10 Investment E-Mail .............................................................................................................................. 77 OFX 2.0............................................................................................................................................................... 78 Support for OFX 2.0 and XML Header ....................................................................................................... 78 401K support ................................................................................................................................................ 78 OFX Message Support in MSN Money and Microsoft Money 1. Conventions The conventions used in the tag descriptions include the following: Required tags are in bold. Regular face indicates tags that are optional. Required means that a client must always include the tag in a request, and a server must always include the tag in a response. Required tags occur once unless noted as one or more in the description, in which case the specification allows multiple occurrences. Optional tags occur once if present unless noted as zero or more in the description, in which case the specification allows multiple occurrences. A-n or N-n specifies those values that take an alphanumeric or numeric type value, where n indicates the maximum size. Common value types, such as a dollar amount, are referenced by name. Chapter 3 lists value types that are referenced by name. Tag Description <REQUIREDTAG> Required tag (1 or more) <REQUIREDTAG2> Required tag that occurs only once <OPTIONALTAG> Optional tag; this tag can occur multiple times (0 or more) <SPECIFIC> Values are A, B, and C <ALPHAVALUE> Takes an alphanumeric value up to 32 characters, A-32 This document covers the OFX message sets supported in Microsoft Money versions 2004 and above. Refer to the end of this document for further information about support for the OFX 2.0 message set. NOTE: MSN Money supports a limited subset of the OFX Message Set supported by Microsoft Money. Support is specifically called out where appropriate. Enterprise and Support Training Microsoft Confidential March 2016 4 OFX Message Support in MSN Money and Microsoft Money 2. Structure 2.2 OFX Headers Each OFX file must include the OFX header. Microsoft Money and MSN Money generate the header using the following rules: Tag Value DATA: “OFXSGML” VERSION: “1.02”* “1.03”*** “2.00” “2.02”** “2.03”*** * MSN Money supports “1.02” only ** Money 2006+ only *** Money 2007+ only SECURITY: “NONE” Money does not support Application Encryption. ENCODING: ”USASCII” or “UNICODE” CHARSET: “1252” COMPRESSION: “NONE” OLDFILEUID: File UID of previous request file or “NONE”. Money may reject an OFX response which does not properly echo the NEWFILEUID and OLDFILEUID value in the OFX header. NEWFILEUID: Enterprise and Support Training File UID of current request file or “NONE” for Active Statement files. Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 5 Message Sets The following table lists each message set in this area and level of support in Money. For Support in MSN Money, refer to specific sections. Message/Aggre gate Description Supported in Money? Supported in MSN Money XXXTRNRQ Transaction wrapper request Yes Partial XXXTRNRS Transaction wrapper response Yes Partial SONRQ Sign-on request Yes Yes SONRS Sign-on response Yes Yes PINCHRQ Pin change request Yes Partial PINCHRS Pin change response Yes Partial 2.4.6 Transaction Wrapper Request – XXXTRNRQ The generic transaction wrappers are supported in Money. Tag Description Money Usage <XXXTRNRQ> Transaction-request aggregate <TRNUID> Client-assigned globally unique ID for this transaction trnuid Transaction GUID generated by Money. Used to associate response transactions with requests. <CLTCOOKIE> Data to be echoed in the transaction response A-32 Money 2005 and above do not send CLTCOOKIE Supplied by Money 2004. If supplied, must be echoed back by server. <TAN> Transaction authorization number; used in some countries with some types of transactions. Country-specific documentation will define messages that require a TAN, A-80 specific request Aggregate for the specific request TAN provided by user (see below). </XXXTRNRQ> 2.4.6 TAN Support in Money TANs are supported in Microsoft Money. If a provider has indicated in the provider.ini section of Money branding information that a TAN is required then the user is prompted for the TAN on the PIN dialog. The user is prompted for a single TAN. The TAN is then supplied in the XXXTRNRQ wrapper for each transaction in the request file. The TAN supplied for the user will only persist for the current session. If the call results in Crash Recovery then the TAN should be stored with the request file. In this case, Money does not prompt the user for the TAN. Enterprise and Support Training Microsoft Confidential March 2016 6 OFX Message Support in MSN Money and Microsoft Money 2.5 Signon Message Set 2.5.1.1 Signon Request – SONRQ The Signon Request is supported in Microsoft Money and MSN Money. Tag Description <SONRQ> Record- request aggregate Money & MSN Money Usage <DTCLIENT> Date and time of the request from the client computer, datetime Date Time Money does not specify milliseconds in outgoing requests. <USERID> User identification string. Use <USERID> & <USERPASS>, or <USERKEY>, but not both; A-32 User ID <USERPASS> User password on server. . Either <USERID> & <USERPASS> are used, or <USERKEY>, but not both; A32 Password <USERKEY> Login using previously authenticated context. Use <USERID> & <USERPASS>, or <USERKEY>, but not both; A-64 Not Supported. <GENUSERKEY> Request server to return a USERKEY for future use, Boolean Not supported <SESSCOOKIE> Session cookie, value received in previous <SONRS>, not sent if first login or if none sent by FI A-1000 Supplied if received in previous SONRS. <FI> Financial-Institutionidentification aggregate <ORG> Organization defining this FI name space, A-32 Supplied if required by provider. Indicated in Provider.ini section of branding files. <FID> Financial Institution ID (unique within <ORG>), A-32 Supplied if required by provider. Indicated in Provider.ini section of branding files. Requested language for text responses, language ISO CODE <APPID> ID of client application, A-5 “Money” <APPVER> Version of client application, N-4. (6.00 encoded as 0600) “1400” – Money 2005 </FI> <LANGUAGE> US/Canada English French UK Rest of World “ENG” “FRE” “ENG” “ENG” “1500” – Money 2006 “1600” – Money 2007 and MSN Money <CLIENTUID> Unique ID identifying OFX client, A-36 Money 2007 only after 1.03/2.03 enabled on MS branding server </SONRQ> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 7 2.5.1.2 Sign-on Response – SONRS Tag Description <SONRS> Record-response aggregate Money & MSN Money Usage <STATUS> Status aggregate, see list of possible code values. Translated to text message in Call Summary. If an error code. <DTSERVER> Date and time of the server response, datetime. Discarded <USERKEY> Use user key that instead of USERID and USERPASS for subsequent requests. TSKEYEXPIRE can limit lifetime. Never present, Money never requests. <TSKEYEXPIRE> Date and time that USERKEY expires. Never present, Money never requests. <LANGUAGE> Language used in text responses, language Money echoes. <DTPROFUP> Date and time of last update to profile information for any service supported by this FI (see Chapter 7), datetime Ignored, managed by dates in FIPARTNR section of branding files <DTACCTUP> Date and time of last update to account information (see Chapter 8), datetime Ignored <FI> Financial-Institutionidentification aggregate Included if indicated Session cookie that the client should return on the next <SONRQ> A-1000 Stored for inclusion in subsequent SONRQ. </FI> <SESSCOOKIE> </SONRS> 2.5.2 USERPASS Change Supported in Microsoft Money, but not MSN Money except on first call if flag set in Provider.ini section of Money branding information or in response to SONRS <CODE>15000. Message/Aggregate Description Supported in Money? Supported in MSN Money? <PINCHRQ> Password change request Yes Only in response to <CODE>15000 or on first call if ChangePin=1 in Provider.ini section of Money branding information. Yes See above No No No No <PINCHRS> <CHALLENGERQ> A challenge request is the first step in Type 1 application-level security <CHALLENGERS> 2.6 External Data Support Not supported in Money. Enterprise and Support Training Microsoft Confidential March 2016 8 OFX Message Support in MSN Money and Microsoft Money 3. Common Aggregates and Elements 3.2.1 Financial Institution Transaction ID <FITID> Money supports FITID format A-255. 3.2.7 Date Start and Date End Money does not send DTEND in requests. This prevents errors associated with false system time on the client machine. 4. Security 4.1.5 Security Levels Channel level – supported in Money Application level – not supported in Money 5. International 5.2 Currency Tag Description <CURRENCY> or <ORIGCURRENCY> Currency aggregate <CURRATE> Ratio of <CURDEF> currency to <CURSYM> currency, in decimal form, rate <CURSYM> ISO-4217 3-letter currency identifier, A-3 Money Usage </CURRENCY> or </ORIGCURRENCY> Note: <CURDEF> is supported in all supported aggregates. Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 9 6. Data Synchronization Microsoft Money support full Synchronization. MSN Money does not support Synchronization and does not send XXXSYNCRQ. 6.6 Synchronization Transaction Wrappers The following elements are common for all synchronization request transactions: Tag Description <XXXSYNCRQ> Sync transaction-request Money Usage <TOKEN> Server assigned token. Token supplied on previous sync response, “0” if no token present. <TOKENONLY> Indicates whether client is just requesting a new token. Not Sent by Money <REFRESH> Indicates whether client is requesting refresh synchronization. Sent by Money on first call, or when 30 days have elapsed since last call. The following elements are common for all synchronization request responses: Tag Description <XXXSYNCRS> Sync transaction-response Money Usage <TOKEN> Server assigned token. Stored in Money file for subsequent sync request. <LOSTSYNC> Server has determined, based on token supplied, that synchronization records does not be returned to the client. Ignored. Money processes the following data when received in a SYNC response: INTRARS INTRACANCRS INTRAMODRS PAYEESYNCRS PMTRS PMTCANCRS PMTMODRS RECPMTRS RECPMTCANCRS RECPMTMODRS See the appropriate sections for further detail Enterprise and Support Training Microsoft Confidential March 2016 10 OFX Message Support in MSN Money and Microsoft Money 6.10.1 File-Based Error Recovery Money does not support file-based error-recovery. Instead, if a call fails to complete when a customer is sending a transfer (INTRATRNRQ), a payment (PMTTRNRQ), or a recurring payment (RECPMTTRNRQ) request, Money prompts the user to synchronize their data to determine if the call was successful. 7. FI Profile 7.1 Profile Request & Response OFX allows a provider to indicate which services are supported and which capabilities are enabled for service via the Profile. Message/Aggregate Description Supported in Money? Supported in MSN Money PROFRQ Profile request No No PROFRS Profile response No No Money and MSN Money do not support Profile request and response. This information is stored in our branding files and servers. In each of the following sections, the individual message set profiles are listed. For each profile a mapping is provided to the Money branding elements. Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 11 7.2.1 Message Set Core Tag Description <MSGSETCORE> Common-message-setinformation aggregate <VER> Version number, N-5 (version 1.0 formatted as 100) Money Usage OFXHeaderVer in Provider.ini section of Money branding information. ”102” , “200”, or “202” <SPNAME> Service provider name, A-32 Some financial institutions out-source their OFX servers to a service provider. In such cases, the SPNAME element should be included in the MSGSETCORE. <URL> URL where messages in this set are to be sent URL in Provider.ini section of Money branding information. <OFXSEC> Security level required for this message set; see Chapter 4 APPENCRYPTION in Provider.ini section of Money branding information. <TRANSPSEC> Y if transport security must be used, N if not used; Boolean Not Supported. Money requires a secure channel. <SIGNONREALM> Signon realm to use with this message set Not Supported <LANGUAGE> One or more languages supported Not Supported <SYNCMODE> FULL for full synchronization capability LITE for lite synchronization capability FULL See Chapter 6 for more information. <RESPFILEER> Y if server supports responsefile based error recovery, Boolean Not supported. See Chapter 6 for more information. </MSGSETCORE> Enterprise and Support Training Microsoft Confidential March 2016 12 OFX Message Support in MSN Money and Microsoft Money 7.2.2 Signon Realms Money does not support the notion of a Signon realm. Tag Description <SIGNONINFO> Signon-information aggregate Money Usage <SIGNONREALM> Identifies this realm Not Supported. <MIN> Minimum number of password characters MIN in provider.ini section of Money branding information. <MAX> Max number of password characters MAX in provider.ini section of Money branding information. <CHARTYPE> Type of characters allowed in password. CHARTYPE in provider.ini section of Money branding information. <ALPHA> Y if alphabetic characters are allowed, Boolean ALPHA in provider.ini section of Money branding information. <NUMERIC> Y if numeric characters are allowed, Boolean NUMERIC in provider.ini section of Money branding information. <CASESEN> Y if password is case-sensitive, Boolean Always Y <SPECIAL> Y if special characters are allowed, Boolean SPECIAL in provider.ini section of Money branding information. <SPACES> Y if spaces are allowed, Boolean SPACES in provider.ini section of Money branding information. Money sends the password with the case entered by the user. </SIGNONINFO> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 13 8. Activation & Account Information The following table lists level of support in Microsoft Money and MSN Money for the Activation and Account Information messages: Message/Aggregate Description Supported in Money and MSN Money? ENROLLRQ Online enrollment request 8.4 No ENROLLRS Online enrollment response No ACCTINFORQ Account info request 8.5 Yes ACCTINFORS Account info response Yes ACCTRQ Account request 8.6 No ACCTRS Account response No ACCTSYNCRQ Service Activation Synchronization request 8.6.2 No ACCTSYNCRS Service Activation Synchronization response No CHGUSERINFORQ Name and address change request 8.7 No CHGUSERINFORS Name and address change response No IMPORTANT NOTE: Microsoft requires support for the SIGNUP Message set and the ACCTINFORQ/RS aggregates for all OFX server certifications. 8.4 Enrollment and Password Acquisition Not supported in Money. Enterprise and Support Training Microsoft Confidential March 2016 14 OFX Message Support in MSN Money and Microsoft Money 8.5 Account Information 8.5.1 Account Info Request – ACCTINFORQ Support for this aggregate is required. Money 2005 and above send an ACCTINFORQ before sending a subsequent statement request call. Money 2004 and MSN Money only send this when setting up services for the first time, or when specifically launched by user. Tag Description <ACCTINFORQ> Account-information-request aggregate <DTACCTUP> Last <DTACCTUP> received in a response Money and MSN Money Usage Microsoft Money and MSN Money always send 19700101 </ACCTINFORQ> 8.5.2 Account Info Response – ACCTINFORS Tag Description Money Usage <ACCTINFORS> Account-information-response aggregate <DTACCTUP> Date and time of last update to this information on the server Ignored <ACCTINFO> Zero or more account information aggregates See Below. </ACCTINFO> </ACCTINFORS> Enterprise and Support Training End of account information response Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 15 8.5.3 Account Information Aggregate – ACCTINFO Tag Description <ACCTINFO> Account-informationrecord aggregate Money Usage MSN Money Usage <DESC> Description of the account, A-80 No No <PHONE> Telephone number for the account, A-20 No No <XXXACCTINFO> Service-specific account information, defined in each service chapter, one or more allowed Service-specific account identification Money Understands four types of account information records: CCACCTINFO, BANKACCTINFO, BPACCTINFO, and INVACCTINFO. MSN Money My Accounts understands three types of account information records: CCACCTINFO, BANKACCTINFO, and INVACCTINFO. AVAIL = Available, but not yet requested Money will enable both ACTIVE and PEND. Server will need to handle requests from PENDING accounts with appropriate error codes. MSN Money only handles responses with ACTIVE. <XXXACCTFROM> </XXXACCTFROM> <SVCSTATUS> PEND = Requested, but not yet available ACTIVE = In use </XXXACCTINFO> </ACCTINFO> 8.6 Service Activation Not supported in Money. Enterprise and Support Training ACCTTRNRQ ACCTTRNRS ACCTSYNCRQ ACCTSYNCRS Microsoft Confidential March 2016 16 OFX Message Support in MSN Money and Microsoft Money 8.7 Name and Address Changes Not supported in Money. CHGUSERINFORQ CHGUSERINFORS 8.8 Signup Message Set Profile Information This message set is not supported in Money. Information from this aggregate is supplied in the branding files on the Microsoft branding server. Tag Description <SIGNUPMSGSET> Signup-message-set-profileinformation aggregate <SIGNUPMSGSETV1> Opening tag for V1 of the message set profile information <MSGSETCORE> Common message set information, defined in the profile chapter Money and MSN Money Usage </MSGSETCORE> Enrollment options - only one of <CLIENTENROLL>, <WEBENROLL>, or <OTHERENROLL> is allowed <CLIENTENROLL> <ACCTREQUIRED> Client-based enrollment supported Y if account number is required as part of enrollment Boolean </CLIENTENROLL> <WEBENROLL> <URL> Web-based enrollment supported URL to start enrollment process </WEBENROLL> <OTHERENROLL> <MESSAGE> Some other enrollment process Message to give to consumer about what to do next (e.g. a phone number) A-80 </OTHERENROLL> <CHGUSERINFO> Y if server supports client-based user information changes Not Supported <AVAILACCTS> Y if server can provide information on accounts with SVCSTATUS available, N means client should expect to ask user for specific account information Boolean AcctListAvail=Y in provider.ini section of Money branding information. Required Y if server allows clients to make service activation requests, N if server will only advise clients via synchronization of service additions, changes, or deletions. Boolean Not Supported <CLIENTACTREQ> </SIGNUPMSGSETV1> </SIGNUPMSGSET> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 17 9. Customer to FI Communication Generic Mail OFX supports both generic Mail as well as Mail that is specific to the service. Money never sends a Generic Mail request but is prepared to handle a Generic Mail response when received in synchronization. Money supports the service specific e-mail. Refer to sections on Banking, Bill Payment, and Investment for more details on support of service specific e-mail. Message/Aggregate Description Supported in Money? MAILRQ General mail request No MAILRS General mail response Yes – sync only MAILSYNCRQ General mail sync request Yes – Money 2004 and 2006 only, not supported in Money 2005 MAILSYNCRS General mail sync response Yes All OFX mail messages use the same MAIL aggregate. The MAIL aggregate is supported in Money as it is used in the service-specific e-mail request/responses. 9.2.2 Basic Mail Aggregate OFX supports both general e-mail as well as mail records that are specific by service. Money will never send a general e-mail request but is prepared to handle the general email response when received in synchronization. Money does support the service specific e-mail. All OFX mail messages use the same MAIL aggregate. Tag Description <MAIL> Core e-mail aggregate Money Usage <USERID> User ID such as SSN User ID <DTCREATED> When message was created datetime Current datetime. Sent in Mail requests Money display date received in MAILRS <FROM> Customer’s input for whom message is from, A-32 User ID <TO> Who e-mail should be delivered to, A-32 “Customer Service” <SUBJECT> Subject of message (plain text, not HTML), A-60 Provided by user (or defaults offered by Money). <MSGBODY> Body of message, HTMLencoded or plain text depending on <USEHTML>, A10000 Provided by user or financial institution. </MSGBODY> End of message <INCIMAGES> Include images in response, Boolean N <USEHTML> Y if client wants an HTML response, N if client wants plain text, Boolean N </MAIL> Enterprise and Support Training Microsoft Confidential March 2016 18 OFX Message Support in MSN Money and Microsoft Money 9.2.4 Email Synchronization <MAILSYNCRQ> <MAILSYNCRS> Money 2004 and 2006 support the general mail synchronization requests and responses. Money 2005 does not support this aggregate All versions of Money support service specific mail sync requests and will send bank mail sync and payment mail sync if the server supports those. SPECIAL NOTE: If your server uses <MAILSYNCRS> to respond to mail requests received in bank or payment mail requests, your customers will not receive those responses in Money 2005. Contact the Microsoft Money financial institution team at moneyfi@microsoft.com if you would like to turn off all mail support in Money 2005. Refer to sections on Banking, Bill Payment, and Investment for more details on support of service specific e-mail. <MAILSYNCRQ> Tag Description Money Usage <MAILSYNCRQ> E-mail-synchronization-request aggregate Money 2004 & 2006 Not supported by Money 2005 Client synchronization option; <TOKEN>, <TOKENONLY>, or <REFRESH> <TOKEN> Previous value of <TOKEN> received for this type of synchronization request from server; “0” if no token present in Money; token Supported <TOKENONLY> Request for just the current <TOKEN> without the history, Boolean Not Supported <REFRESH> Request for refresh of current state, Boolean Supported on new calls and calls over 30 days <REJECTIFMISSING> If Y, do not process requests if client <TOKEN> is out of date, Boolean Always N <INCIMAGES> Y if the client accepts mail with images in the message body, N if the client does not accept mail with images in the message body, Boolean Always N <USEHTML> Y if client wants an HTML response, N if client wants plain text, Boolean Always N <MAILTRNRQ> Mail-transaction-request aggregate (0 or more) Not Supported </MAILTRNRQ> </MAILSYNCRQ> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 19 <MAILSYNCRS> Tag Description Money Usage <MAILSYNCRS> E-mail-synchronization-response. aggregate <TOKEN> Server history marker, token Supported <LOSTSYNC> Y if the token in the synchronization request is older than the earliest entry in the server’s history table. In this case, some responses have been lost. N if the token in the synchronization request is newer than or matches a token in the server’s history table. Boolean Supported <MAILTRNRS> Missing e-mail response transactions (0 or more) Supported </MAILTRNRS> </MAILSYNCRS> 9.3 Get HTML Page MIME <GETMIMERQ> <GETMIMERS>. Not supported in Money. See also section 2.6. 9.4 Email Message Set Profile Tag Description <EMAILMSGSET> E-mail-message-set-profileinformation aggregate <EMAILMSGSETV1> Opening tag for V1 of the message set profile information <MSGSETCORE> Common message set information, defined in the profile chapter Money Usage </MSGSETCORE> <EMAILSUPP> Y if server supports generic e-mail message Support for General Mail is on by default in Money 2004 and 2006. It is off by default in Money 2005 and cannot be enabled. Money allows financial institutions to disable generic email support by setting the DisallowGenMail=1 in the Provider.ini section of Money branding information. <GETMIMESUPP> Y if server supports get MIME message No </EMAILMSGSETV1> </EMAILMSGSET> Enterprise and Support Training Microsoft Confidential March 2016 20 OFX Message Support in MSN Money and Microsoft Money 10. Recurring Transactions Recurring Payments are supported in Microsoft Money. The actual elements within a transaction that can be modified differ by service. See the recurring sections within Banking, and Payments for details. Not Supported: Recurring Intra-bank Transfers, see section 11.10. Recurring Inter-bank Transfers The following table describes Money’s usage of the RECURRINST aggregate that is present in the messages for recurring transactions. 10.2 Recurring Instructions Tag Description <RECURRINST> Recurring-Instructions aggregate <NINSTS> Money Usage Number of instructions Number of instructions. If this tag is absent, the schedule is open-ended, N-3 <FREQ> Frequency. Refer to table below for supported frequencies. </RECURRINST> 10.2.1 Values for FREQ Enterprise and Support Training Value Description Money Usage WEEKLY Weekly Supported. BIWEEKLY Biweekly Supported. TWICEMONTHLY Twice a month Supported. MONTHLY Monthly Supported. FOURWEEKS Every four weeks Supported. BIMONTHLY Bimonthly Supported. QUARTERLY Quarterly Supported. SEMIANNUALLY Semiannually Supported. ANNUALLY Annually Supported. Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 21 11. Banking Banking Support Summary The following table lists level of Money support for each Banking message set. The remaining sections in this chapter discuss the specific implementation of each supported message. Enterprise and Support Training Message/Aggregate Description Supported in Money? Supported in MSN Money? STMTRQ Statement request Yes Yes STMTRS Statement response Yes Yes CCSTMTRQ Credit Card statement request 11.4.2 Yes Yes CCSTMTRS Credit Card statement response Yes Yes STMTENDRQ Statement closing data request 11.5.1 No No STMTENDRS Statement closing data response No No CCSTMTENDRQ Credit Card closing statement data request 11.5.3 No No CCSTMTENDRS Credit Card closing statement data response No No STPCHKRQ Stop check request 11.6.1 No No STPCHKRS Stop check response No No INTRARQ Intra-bank transfer request 11.7.1 Yes No INTRARS Intra-bank transfer response Yes No INTRAMODRQ Intra-bank transfer modification request 11.7.2 No No INTRAMODRS Intra-bank transfer modification response Yes No INTRACANRQ Intra-bank transfer request 11.7.3 Yes No INTRACANRS Intra-bank transfer response Yes No INTERRQ Inter-bank transfer request 11.8.2 No No INTERRS Inter-bank transfer response No No INTERMODRQ Inter-bank transfer modification request 11.8.3 No No INTERMODRS Inter-bank transfer modification response No No INTERCANRQ Intra-bank transfer cancel request 11.8.4 No No INTERCANRS Intra-bank transfer cancel response No No WIRERQ Wire transfer request 11.9.1 No No WIRERS Wire transfer response No No WIRECANRQ Wire transfer cancellation request 11.9.2 No No WIRECANRS Wire transfer cancellation response No No Microsoft Confidential March 2016 22 OFX Message Support in MSN Money and Microsoft Money Message/Aggregate Description Supported in Money? Supported in MSN Money? RECINTRARQ Recurring Intra-bank transfer request 11.10.1 No No RECINTRARS Recurring Intra-bank transfer response No No RECINTRAMODRQ Recurring Intra-bank transfer modification request 11.10.2 No No RECINTRAMODRS Recurring Intra-bank transfer modification response No No RECINTRACANRQ Recurring Intra-bank transfer cancellation request 11.10.3 No No RECINTRACANRS Recurring Intra-bank transfer cancellation response No No RECINTERRQ Recurring Inter-bank transfer request 11.10.4 No No RECINTERRS Recurring Inter-bank transfer response No No RECINTERMODRQ Recurring Inter-bank transfer modification request 11.10.5 No No RECINTERMODRS Recurring Inter-bank transfer modification response No No RECINTERCANRQ Recurring Inter-bank transfer cancellation request 11.10.6 No No RECINTERCANRS Recurring Inter-bank transfer cancellation response No No BANKMAILRQ Bank mail request 11.11.1 Yes No BANKMAILRS Bank mail response Yes No CHKMAILRS Return check notification response 11.11.3.1 Yes No DEPMAILRS Return deposit notification response 11.11.3.2 Yes No 11.3 Common Banking Aggregates Tag Description Money & MSN Money Usage BANKACCTFROM & Identify an account at an FI 11.3.1 All elements supported ACCTTYPE Account Type: CHECKING; SAVINGS; MONEYMRKT; CREDITLINE 11.3.1.1 All elements supported CCACCTFROM & Identify a credit card account at an FI 11.3.2 All elements supported BANKACCTTO CCACCTTO Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 23 11.3.3 Bank Account Information – BANKACCTINFO Only partial support for the BANKACCTINFO aggregate is implemented in Money and MSN Money. Tag Description <BANKACCTINFO> Bank-account-information aggregate <BANKACCTFROM> Money and MSN Money Usage Bank-account-from aggregate Supported, see above. <SUPTXDL> Y if account supports transaction detail downloads, N if it is balance-only Boolean No – See below <XFERSRC> Y if account is enabled as a source for an intra- or interbank transfer Boolean No – See below <XFERDEST> Y if account is enabled as a destination for an intra- or inter-bank transfer Boolean No – See below <SRVSTATUS> Status of the account Money and MSN Money ignore accounts with anything other than ACTIVE </BANKACCTFROM> </BANKACCTINFO> Microsoft Money and MSN Money allow statement requests from any account enabled for banking services. Microsoft Money allows transfer requests to and from any account enabled for banking services. Servers should code appropriate error codes if these requests are received from an account that does not support them. 11.3.4 Credit Card Account Information – CCACCTINFO Only partial support for the CCACCTINFO aggregate is implemented in Money. Tag Description <CCACCTINFO> Credit-card-account-information aggregate <CCACCTFROM> Money Usage Credit-card-account-from aggregate Supported, see above <SUPTXDL> Y if account supports transaction detail downloads, N if it is balance-only, Boolean No – See below <XFERSRC> Y if account is enabled as a source for an intra-bank or inter-bank transfer, Boolean No – See below <XFERDEST> Y if account is enabled as a destination for an intra-bank or interbank transfer, Boolean No – See below <SVCSTATUS> Status of the account Money and MSN Money ignore accounts with anything other than ACTIVE </CCACCTFROM> </CCACCTINFO> Microsoft Money and MSN Money allow statement requests from any account enabled for banking services. Microsoft Money allows transfer requests to and from any account enabled for banking services. Servers should code appropriate error codes if these requests are received from an account that does not support them. Enterprise and Support Training Microsoft Confidential March 2016 24 OFX Message Support in MSN Money and Microsoft Money 11.3.5 IntraXfer Information – XFERINFO All of the elements and aggregates of XFERINFO are supported in Money. 11.3.6 Transfer Processing Status – XFERPRCSTS All of the elements and aggregates of XFERPRCSTS are supported in Money. 11.4.1 Banking Statement Download 11.4.1.1 Statement Request – STMTRQ Statement Requests are generated by Microsoft Money and MSN Money My Accounts. Tag Description <STMTRQ> Statement-request aggregate <BANKACCTFROM> Money & MSN Money Usage Bank-account-from aggregate BANKACCTFROM elements populated with values retrieved during Setup. <BANKID> Routing & transit number Supported <BRANCHID> Bank identifier for international banks Supported in International products only <ACCTID> Account number Supported <ACCTTYPE> Type of account Supported <ACCTKEY> Checksum for international banks Supported in International products only </BANKACCTFROM> <INCTRAN> <DTSTART> Include-transactions aggregate Start date of statement requested, datetime Money and MSN Money default to current date minus 30 days on first call. Money users can modify Subsequent calls send DTEND from pervious call. <DTEND> End date of statement requested, datetime Money does not send this <INCLUDE> Include transactions flag, Boolean Y </INCTRAN> </STMTRQ> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 25 11.4.1.2 Statement Response – STMTRS Statement response is supported in Microsoft Money and MSN Money. Tag Description <STMTRS> Statement-response aggregate <CURDEF> Default currency for the statement <BANKACCTFROM> Account from aggregate. Money & MSN Money Usage Supported </BANKACCTFROM> <BANKTRANLIST> Statement-transaction-data aggregate <DTSTART> Start date for transaction data, date <DTEND> Value that client should send in next <DTSTART> request to insure that it does not miss any transactions, date <STMTTRN> Opening tag for each statement transaction (0 or more) </STMTTRN> End tag for each statement transaction Displayed as statement date. Stored for use as DTSTART in subsequent STMTRQ When sending, Money & MSN Money crop any timestamp portion and only returns date value. </BANKTRANLIST> <LEDGERBAL> <BALAMT> <DTASOF> Ledger balance aggregate Ledger balance amount, amount Balance. Balance date, datetime Ignored – Money uses DTEND NOTE: This should be signed from the perspective of the user. For CREDITLINE accounts this amount should be negative if the customer owes money on the account. </LEDGERBAL> <AVAILBAL> Available balance aggregate <BALAMT> Available balance amount, amount Discarded. <DTASOF> Balance date, datetime Discarded. Marketing information (at most 1), A-360. Discarded </AVAILBAL> <MKTGINFO> </STMTRS> Enterprise and Support Training Microsoft Confidential March 2016 26 OFX Message Support in MSN Money and Microsoft Money 11.4.2 Credit Card Statement Download 11.4.2.1 Credit Card Statement Request – CCSTMTRQ Microsoft Money and MSN Money will generate the whenever a statement is to be retrieved for an account of type CREDIT CARD. Tag Description <CCSTMTRQ> Credit-card-downloadrequest aggregate <CCACCTFROM> Money & MSN Money Usage Credit-card-account-from aggregate CCACCTFROM elements populated with values retrieved during Setup. <ACCTID> Account number Supported <ACCTKEY> Checksum for international banks Supported in International products only </CCACCTFROM> <INCTRAN> <DTSTART> Include transactions Start date of statement requested, datetime Money and MSN Money default to current date minus 30 days on first call. Money users can modify Subsequent calls send DTEND from pervious call. <DTEND> Ending date of statement requested, datetime Money does not send this <INCLUDE> Include transactions flag, Boolean Y </INCTRAN> </CCSTMTRQ> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 27 11.4.2.2 Credit Card Statement Response – CCSTMTRS Credit Card Statement Response is supported in Microsoft Money and MSN Money. Tag Description <CCSTMTRS> Credit-card-downloadresponse aggregate <CURDEF> Default currency for the statement <CCACCTFROM> Account from aggregate. Money Usage Supported </CCACCTFROM> <BANKTRANLIST> Opening tag for statement transaction data <DTSTART> Start date for transaction data, date <DTEND> Value client should send in next <DTSTART> request to insure that it does not miss any transactions, date <STMTTRN> Opening tag for each statement transaction (0 or more). </STMTTRN> End tag for each statement transaction Displayed as statement date. Stored for use as DTSTART in subsequent STMTRQ When sending, Money and MSN Money crop any timestamp portion and only returns date value. </BANKTRANLIST> <LEDGERBAL> <BALAMT> <DTASOF> Ledger-balance aggregate Ledger balance amount, amount Balance. Balance date, datetime Ignored – Money uses DTEND for statement date NOTE: This should be signed from the perspective of the user. For Credit Card accounts, this amount should be negative if the customer owes money on the account. </LEDGERBAL> <AVAILBAL> Available balance aggregate <BALAMT> Available balance amount, amount Discarded. <DTASOF> Balance date, datetime Discarded. Marketing information (at most 1), A-360 No </AVAILBAL> <MKTGINFO> </CCSTMTRS> Enterprise and Support Training Microsoft Confidential March 2016 28 OFX Message Support in MSN Money and Microsoft Money 11.4.2.3.1 Statement Transaction – STMTTRN The Statement Transaction is supported in Microsoft Money and MSN Money My Accounts. Enterprise and Support Training Tag Description <STMTTRN> Statement-transaction aggregate Money & MSN Money Usage <TRNTYPE> Transaction type. Money accepts all values in this tag. MSN Money ignores this tag. <DTPOSTED> Date transaction was posted to account, datetime Posting date of transaction. <DTUSER> Date user initiated transaction, if known, datetime Discarded. <DTAVAIL> Date funds are available, datetime Discarded. <TRNAMT> Amount of transaction, amount Transaction amount. Used in reconciliation. <FITID> Transaction ID issued by financial institution, A-10. Used to detect duplicate downloads Stored as unique statement transaction identifier. Used in reconciliation to detect duplicate transactions. This must be unique and persistent. <CORRECTFITID> If present, the FITID of a previously sent transaction that is corrected by this record. This transaction replaces the transaction that it corrects. Discarded <CORRECTACTION> Actions can be REPLACE or DELETE. REPLACE replaces the transaction referenced by CORRECTFITID; DELETE deletes it. Discarded <SRVRTID> Server assigned transaction ID; used for transactions initiated by client, such as payment or funds transfer Stored and used in reconciliation. <CHECKNUM> Check (or other reference) number, A-12 Stored and used in reconciliation. <REFNUM> Reference number that uniquely identifies the transaction. Can be used in addition to or instead of a <CHECKNUM>, A-32 Discarded <SIC> Standard Industrial Code, N-6 Used to assign default categories. <PAYEEID> Payee identifier if available Stored and used in reconciliation. Microsoft Confidential NOTE: Server should ensure that this is accurately displayed for all time zones. Microsoft recommends that server either send actual server time of posting, or time that equates to Noon GMT, such as CCYYMMDD120000. March 2016 OFX Message Support in MSN Money and Microsoft Money Tag <NAME> or <PAYEE> 29 Description Money & MSN Money Usage Name of payee or description of transaction, A-32 Microsoft Money - Stored and used to create a payee in the user’s Money file. NOTE: Provide NAME or PAYEE, not both Payee aggregate, see section 12.2 </BANKACCTTO> or </CCACCTTO> <MEMO> Extra information (not in <NAME>), A-255 Appended to the memo field of the transaction in Money. Can be turned off in Tools Options. Ignored by MSN Money <CURRENCY> or Currency, if different from CURDEF <ORIGCURRENCY> Used to convert transaction to account currency in Money if Currency aggregate is present. Ignored by MSN Money where all transactions are assumed to be USD. ORIGCURRENCY is ignored </STMTTRN> The STMTRN may contain an optional CURRENCY aggregate for each transaction. If this aggregate is provided the driver must perform the currency conversion using the data provided. Enterprise and Support Training Microsoft Confidential March 2016 30 OFX Message Support in MSN Money and Microsoft Money 11.4.2.3.1.1 Transaction Types used in TRNTYPE Below is the description of the transaction types in the OFX Specification. Also included is the appropriate signage for Money implementation. Microsoft Money will reject or ignore individual transactions that are incorrectly signed. MSN Money My Accounts ignores TRNTYPE and accepts any signage NOTE: While Money accepts any signage for all transactions, positively signed debits and negatively signed credits is an indication that the data is incorrect. Servers should try to avoid this. Type Description Money Signage CREDIT Generic credit Either DEBIT Generic debit Either INT Interest earned or paid Either NOTE: depends on signage of amount DIV Dividend Either FEE FI fee Either SRVCHG Service charge Either DEP Deposit Either ATM ATM debit or credit Either NOTE: depends on signage of amount POS Point of sale debit or credit Either NOTE: depends on signage of amount Either XFER Transfer CHECK Check Either PAYMENT Electronic payment Either CASH Cash withdrawal Either DIRECTDEP Direct deposit Either DIRECTDEBIT Merchant initiated debit Either REPEATPMT Repeating payment/standing order Either OTHER Other Either 11.5 Statement Closing Information Statement Closing Information is not supported in Money. The following messages are not supported: STMTENDRQ STMTENDRS CCSTMTENDRQ CCSTMTENDRS 11.6 Stop Check Stop Check messages are not supported in Money. The following messages are not supported: Enterprise and Support Training STPCHKRQ STPCHKRS Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 31 11.7 Intra-bank Funds Transfers 11.7.1.1 Intra-bank Transfer Request – INTRARQ Intra-bank Transfer Request is supported in Money. Tag Description <INTRARQ> Intra-bank-transfer-request aggregate <XFERINFO> Money Usage Transfer information aggregate. Yes </XFERINFO> </INTRARQ> 11.7.1.2 Intra-bank Transfer Response – INTRARS Intra-bank Transfer Response is supported in Money. Tag Description <INTRARS> Intra-bank-transfer-response aggregate Money Usage <CURDEF> Default currency for the intrabank transfer response Supported <SRVRTID> Server ID for this transfer Stored. Used in subsequent INTRACANRQ. <XFERINFO> Transfer information aggregate, see section </XFERINFO> Transfer-date options. Choose either <DTXFERPRJ> or <DTPOSTED> <DTXFERPRJ> Projected date of the transfer; response can contain either a <DTXFERPRJ> or a <DTPOSTED> but not both; datetime Posting Date. Actual date of the transfer, datetime Posting Date. <RECSRVRTID> If the response is generated by a recurring transfer model, this ID references it, see section 11.10 Ignored <XFERPRCSTS> Transfer-processing status, see section 11.3.6 Yes . Or <DTPOSTED> NOTE: Server should ensure that DTXFERPTJ or DTPOSTED are accurately displayed for all time zones. Microsoft recommends that server either send actual server time or time that equates to Noon GMT, such as CCYYMMDD120000. </XFERPRCSTS> </INTRARS> Enterprise and Support Training Microsoft Confidential March 2016 32 OFX Message Support in MSN Money and Microsoft Money 11.7.2 Intra-bank Transfer Modification Intra-bank Transfer Modifications Request is not supported in Money. The following messages are not supported: INTRAMODRQ Money 2004 and 2006 process INTRAMODRS when received in an INTRASYNCRS. This allows servers that support future dated transfers to notify customer if a scheduled transfer fails. Tag Description Money Usage <INTRAMODRS> Modification-response aggregate Supported <SRVRTID> ID assigned by the server to the transfer being modified, SRVRTID Stored. Used in to identify transfer to modify. <XFERINFO> Transfer information aggregate </XFERINFO> <XFERPRCSTS> Transfer processing status </XFERPRCSTS> </INTRAMODRS> 11.7.3 Intra-bank Transfer Cancellation Intra-bank Transfer Cancellations are supported in Money. If server does not support cancellation of immediate transfers, server should return appropriate error code indicating transfer has been processed. 11.8 Inter-bank Transfer Inter-bank Transfers are not supported in Money. Money uses the OFX bill payment message set to support payment mechanisms that allow Inter-bank transfers. The following messages are not supported: INTERRQ INTERRS INTERMODRQ INTERMODRS INTERCANRQ INTERCANRS 11.9 Wire Transfer Wire transfers are not supported in Money. The following messages are not supported: WIRERQ WIRERS WIRECANRQ WIRECANRS 11.10 Recurring Funds Transfer Recurring Intra-bank Transfers are not supported in Money. The following messages are not supported: Enterprise and Support Training RECINTRARQ RECINTRARS RECINTRACANRQ RECINTRACANRS Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 33 11.10.2 Recurring Intra-bank Funds Transfer Modification Recurring Inter-bank Transfers Modifications are not supported in Money. The following messages are not supported: RECINTRAMODRQ RECINTRAMODRS 11.10.4 Recurring Inter-bank Transfers Recurring Inter-bank Transfers are not supported in Money. The following messages are not supported: RECINTERRQ RECINTERRS RECINTERMODRQ RECINTERMODRS RECINTERCANRQ RECINTERCANRS 11.11.1 Banking E-mail OFX supports both generic banking e-mail as well as several types of specific e-mail notification records (e.g. notification of returned deposit. In some cases, OFX mail elements are appended to the message body before being displayed to the user. 11.11.1.1 Banking E-mail Request – BANKMAILRQ Banking E-mail is supported in Money. This mail is sent to the server when user chooses to send a “General purpose letter about Online Banking” in Money. Tag Description <BANKMAILRQ> Bank-e-mail-request aggregate <BANKACCTFROM> Money Usage Account-from aggregate. Account details based on account selection in UI. Credit card account from aggregate. Account details based on account selection in UI. To, from, message information, 9.2.2 Refer to section on general Mail support. </BANKACCTFROM> or <CCACCTFROM> </CCACCTFROM> <MAIL> </MAIL> </BANKMAILRQ> Enterprise and Support Training Microsoft Confidential March 2016 34 OFX Message Support in MSN Money and Microsoft Money 11.11.1.2 Banking E-mail Response – BANKMAILRS The Banking E-mail Response is supported in Money. Tag Description <BANKMAILRS> Bank-e-mail-response aggregate <BANKACCTFROM> Money Usage Account-from aggregate. Account details based on account selection in UI. Credit card account from aggregate. Account details based on account selection in UI. To, from, message information, see section 9.2.2 Refer to section on general Mail support. </BANKACCTFROM> or <CCACCTFROM> </CCACCTFROM> <MAIL> </MAIL> </BANKMAILRS> Money hides echo BANKMAILRS received in response to a BANKMAILRQ. Money only displays unsolicited MAIL messages. 11.11.2 Notifications 11.11.3.1 Return Check Notification E-mail Response – CHKMAILRS The Return Deposit Notification E-mail Response is only returned from the server when the client requests banking mail synchronization. This message is supported in Money. Tag Description <CHKMAILRS> Notification-messageresponse aggregate <BANKACCTFROM> Money Usage Account-from aggregate Account number. To, from, message information, see 9.2.2 Refer to section on general Mail support. <CHECKNUM> Check number, A-12 Appended to message body on separate line as: Returned Check Number: <CHECKNUM>. <TRNAMT> Amount of check, amount Appended to message body on separate line as: Returned check amount: $<TRNAMT> <DTUSER> Customer date on check, date Appended to message body on separate line as: Customer date on returned check: <DTUSER> <FEE> Fee assessed for NSF, amount Appended to message body on separate line as: Return check fee: $<FEE> </BANKACCTFROM> <MAIL> </MAIL> </CHKMAILRS> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 35 11.11.3.2 Return Deposit Notification E-mail Response – DEPMAILRS Return Deposit Notification E-mail is supported in Money. Tag Description <DEPMAILRS> Notification-messageresponse aggregate <BANKACCTFROM> Money Usage Account-from aggregate. Account number. To, from, message information, see 9.2.2 Refer to section on general Mail support. <TRNAMT> Amount of deposit, amount Appended to message body on separate line as: Deposit amount: $<TRNAMT> <DTUSER> Customer date of deposit, date Appended to message body on separate line as: Date of deposit: <DTUSER> <FEE> Fee assessed for NSF, amount Appended to message body on separate line as: Return deposit fee: $<FEE> </BANKACCTFROM> <MAIL> </MAIL> </DEPMAILRS> 11.12 Synchronization The following table lists the level of support implemented in Money for Banking related synchronization messages. Sync Message Description Money Usage STPCHKSYNCRQ Sync request for stop checks. No Support STPCHKSYNCRS Sync response for stop checks. No Support INTRASYNCRQ Sync request for intra-bank xfer. Supported * INTRASYNCRS Sync response for intra-bank xfer. Supported * INTERSYNCRQ Sync request for inter-bank xfer. No Support INTERSYNCRS Sync response for inter-bank xfer. No Support WIRESYNCRQ Sync request for wires. No Support WIRESYNCRS Sync response for wires No Support RECINTRASYNCRQ Sync request for recurring intra-bank xfers. No Support RECINTRASYNCRS Sync response for recurring intra-bank xfers. No Support RECINTERSYNCRQ Sync request for recurring inter-bank xfers. No Support RECINTERSYNCRS Sync response for recurring inter-bank xfers. No Support BANKMAILSYNCRQ Sync request for banking mail. 11.12.7 Full Support BANKMAILSYNCRS Sync response for banking mail. Full Support * Money 2005 does not support INTRASYNCRQ/RS. Support for INTRASYNCRQ/RS returns in Money 2006. Enterprise and Support Training Microsoft Confidential March 2016 36 OFX Message Support in MSN Money and Microsoft Money 11.12.2.1 Request <INTRASYNCRQ> Tag Description Money Usage <INTRASYNCRQ> Synchronization-request aggregate Yes (supported in all but Money 2005) <TOKEN> Previous value of <TOKEN> received for this type of synchronization request from server; 0 for first-time requests in Money 2001 and 2002; token Yes <TOKENONLY> Request for just the current <TOKEN> without the history, Boolean Not Supported <REFRESH> Request for refresh of current state, Boolean Sent by Money on first call, or when 30 days have elapsed since last call. <REJECTIFMISSING> If Y, do not process requests if client <TOKEN> is out of date, Boolean Always N <BANKACCTFROM> Bank account of interest; token must be interpreted in terms of this account Yes Intra-bank-funds-transfer transactions (0 or more) No – Money sends INTRATRNRQ outside of INTRASYNCRQ wrapper. Client synchronization option; <TOKEN>, <TOKENONLY>, or <REFRESH> </BANKACCTFROM> <INTRATRNRQ> </INTRATRNRQ> </INTRASYNCRQ> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 37 11.12.2.2 Response <INTRASYNCRS> Tag Description Money Usage <INTRASYNCRS> Synchronization-response aggregate Yes (supported in all but Money 2005) <TOKEN> New synchronization token, token Stored by Money <LOSTSYNC> Y if the token in the synchronization request is older than the earliest entry in the server’s history table. In this case, some responses have been lost. N if the token in the synchronization request is newer than or matches a token in the server’s history table. Boolean Ignored <BANKACCTFROM> Bank account of interest; token must be interpreted in terms of this account Yes Intra-bank-funds-transfer transactions (0 or more) Yes </BANKACCTFROM> <INTRATRNRS> </INTRATRNRS> </INTRASYNCRS> Enterprise and Support Training Microsoft Confidential March 2016 38 OFX Message Support in MSN Money and Microsoft Money 11.12.7.1 Request <BANKMAILSYNCRQ> Tag Description <BANKMAILSYNCRQ> Synchronization-request aggregate Money Usage Client synchronization option; <TOKEN>, <TOKENONLY>, or <REFRESH> <TOKEN> Previous value of <TOKEN> received for this type of synchronization request from server; “0” if no token present in Money 2001 and 2002; token Yes <TOKENONLY> Request for just the current <TOKEN> without the history, Boolean Not Supported <REFRESH> Request for refresh of current state, Boolean Sent by Money on first call, or when 30 days have elapsed since last call. <REJECTIFMISSING> If Y, do not process requests if client <TOKEN> is out of date, Boolean Always N <INCIMAGES> Y if the client accepts mail with images in the message body. N if the client does not accept mail with images in the message body. Boolean Always N <USEHTML> Y if client wants an HTML response, N if client wants plain text, Boolean Always N Account-from options. Choose either <BANKACCTFROM> or <CCACCTFROM>. <BANKACCTFROM> Account-from aggregate, see section 11.3.1. </BANKACCTFROM> -or<CCACCTFROM> Credit-card-account-from aggregate, see section 11.3.2. </CCACCTFROM> <BANKMAILTRNRQ> Bank-mail transactions (0 or more) Yes </BANKMAILTRNRQ> </BANKMAILSYNCRQ> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 39 11.12.7.2 Response <BANKMAILSYNCRS> Tag Description <BANKMAILSYNCRS> Money Usage Synchronization-response aggregate <TOKEN> New synchronization token, token <LOSTSYNC> Y if the token in the synchronization request is older than the earliest entry in the server’s history table. In this case, some responses have been lost. N if the token in the synchronization request is newer than or matches a token in the server’s history table. Boolean Account-from options. Choose either <BANKACCTFROM> or <CCACCTFROM>. <BANKACCTFROM> Account-from aggregate, see section 11.3.1 </BANKACCTFROM> -or<CCACCTFROM> Credit-card-account-from aggregate, see section </CCACCTFROM> <BANKMAILTRNRS> Bank-mail transactions (0 or more) </BANKMAILTRNRS> </BANKMAILSYNCRS> 11.13 Bank Message Sets and Profile Enterprise and Support Training Sync Message Description Money & MSN Money Usage BANKMSGSET Banking No CREDITCARDMSGSET Credit Card No INTERXFERMSGSET Inter-bank Funds Transfer No WIREXFERMSGSET Wire Transfer No Microsoft Confidential March 2016 40 OFX Message Support in MSN Money and Microsoft Money 11.13.2 Bank Message Set Profile This message set is not supported. Microsoft Money obtains the required information from Branding files. Tag Description <BANKMSGSET> Message set for banking <BANKMSGSETV1> <MSGSETCORE> Money Usage Version 1 of message set Common message-set core </MSGSETCORE> Account type not supported in <BANKACCTFROM>; 1 or more of account types, see section for values Not Supported. <CLOSINGAVAIL> Closing statement information available, Boolean Not Supported. <XFERPROF> Intra-bank transfer profile <INVALIDACCTTYPE> <PROCDAYSOFF> Days of week that no processing occurs; 0 or more of (MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY) Not Supported. Microsoft Money allows transfers any day of the week. <PROCENDTM> Time of day that day’s processing ends, time Not Supported. <CANSCHED> Supports scheduled transfers, Boolean INTRAXFERCANSCHED in Provider.ini section of Money branding information. <CANRECUR> Supports recurring transfers, Boolean. Requires <CANSCHED> INTRAXFERCANRECUR in Provider.ini section of Money branding information. Permit modifications to transfers, i.e. <INTRAMODRQ>, Boolean Not Supported. Money does not allow modification of xfers. <CANMODMDLS> Permit modifications to models, i.e. <RECINTRAMODRQ>, Boolean Not Supported. Money does not allow modification of xfers. <MODELWND> Model window; the number of days before a recurring transaction is scheduled to be processed that it is instantiated on the system, N-3 Not Supported. <DAYSWITH> Number of days before processing date that funds are withdrawn, N-3 Not Supported Default number of days to pay, N-3 DfltDays in Banking Capabilities in provider.ini section of Money branding information. <CANMODXFERS> <DFLTDAYSTOPAY> </XFERPROF> To enable INTRASYNC in Microsoft Money 2004 or 2006, use the IntraSyncSupp line in Banking Capabilities in provider.ini section of Money branding information. Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money Tag 41 Description Money Usage Stop check profile Stop checks not supported. Days of week that no processing occurs; 0 or more of (MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY) Not Supported. Time of day that day’s processing ends, time Not Supported. Can stop a range of checks, Boolean. Not Supported. <CANUSEDESC> Can stop by description, Boolean. Not Supported. <STPCHKFEE> Default stop check free Amount Not Supported. <STPCHKPROF> <PROCDAYSOFF> <PROCENDTM> <CANUSERANGE> </STPCHKPROF> <EMAILPROF> E-mail profile <CANEMAIL> Supports generalized banking e-mail, Boolean BANKMAIL in Provider.ini section of Money branding information. <CANNOTIFY> Supports notification (of any kind), Boolean Not Supported. </EMAILPROF> </BANKMSGSETV1> </BANKMSGSET> End of bank message set version 1 End of bank message set 11.13.3 Credit Card Message Set Profile The CREDITCARD line in the in Banking Capabilities section of the in provider.ini section of Money branding information indicates whether or not the server supports Credit Cards for banking services. 11.13.4 Inter-bank Transfer Message Set Profile Money does not support the Inter-bank Message Set; therefore, all of the elements in this table are not supported. 11.13.5 Wire Transfer Message Set Profile Wire Transfers are not supported in Money. Enterprise and Support Training Microsoft Confidential March 2016 42 OFX Message Support in MSN Money and Microsoft Money 12. Payments The following table lists level of support for each Bill Payment message set in Microsoft Money. The remaining sections in this chapter discuss the specific implementation of each supported message. Enterprise and Support Training Message/Aggregate Description Supported in Money? PAYEE Payee 12.5.2.1 Yes PMTINFO Payment info 12.5.2 Yes EXTDPMT Extended Payment 12.5.2.2 No – Money may fault if received EXTDPAYEE Extended Payee 12.5.2.3 Yes PMTPRCSTS Current processing status for a payment 12.5.2.4 Yes PMTRQ Payment request 12.6.1.1 Yes PMTRS Payment response Yes PMTMODRQ Payment modify request 12.6.2.2 No PMTMODRS Payment modify response Yes PMTCANCRQ Payment cancel request 12.6.3.1 Yes PMTCANCRS Payment cancel response 12.6.3.2 Yes PMTINQRQ Payment status request 12.6.4.1 No PMTINQRS Payment status response No RECPMTRQ Recurring payment request 12.7.1.1 Yes RECPMTRS Recurring payment response Yes RECPMTMODRQ Recurring payment modify request 12.7.2.1 No RECPMTMODRS Recurring payment modify response Yes in Money 2005 Ignored in Money 2006 and above RECPMTCANCRQ Recurring payment cancellation request 12.7.3.1 Yes RECPMTCANCRS Recurring payment cancellation response Yes PMTMAILRQ Payment mail request 12.8.1.1 Yes PMTMAILRS Payment mail response 12.8.1.2 Yes PMTMAILSYNCRQ Payment mail sync request 12.8.2.1 Yes PMTMAILSYNCRS Payment mail sync response 12.8.2.2 Yes PAYEERQ Payee request 12.9.1.1 No Money adds and modifies payees implicitly in PMTRQ messages. PAYEERS Payee response 12.9.1.2 Yes PAYEEMODRQ Payee modify request 12.9.2.1 No Money adds and modifies payees implicitly in PMTRQ messages. PAYEEMODRS Payee modify response 12.9.2.2 Yes Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 43 Message/Aggregate Description Supported in Money? PAYEEDELRQ Payee delete request 12.9.3.1 No PAYEEDELRS Payee delete response 12.9.3.2 Yes PAYEESYNCRQ Payee sync request 12.9.4.1 Yes PAYEESYNCRS Payee sync response 12.9.4.2 Yes PMTSYNCRQ Payment sync request 12.10.1.1 Yes PMTSYNCRS Payment sync response Yes RECPMTSYNCRQ Recurring payment sync request 12.10.2.1 Yes RECPMTSYNCRS Recurring payment sync response Yes 12.5 Common Bill Payment Aggregates 12.5.1 Payments Account Information Tag Description <BPACCTINFO> Payments-account-information aggregate <BANKACCTFROM> Money Usage Bank-account-from aggregate Refer to Banking section. Status of the account Yes </BANKACCTFROM> <SVCSTATUS> </BPACCTINFO> Enterprise and Support Training Microsoft Confidential March 2016 44 OFX Message Support in MSN Money and Microsoft Money 12.5.2 Payment Information – PMTINFO The Payment Information aggregate is supported in Money. Tag Description Money Usage Account-from aggregate, see section 11.3.1 Populated using Online Account Details. <TRNAMT> Payment amount Payment Amount provided by user. <PAYEEID> Server payee identifier (required if assigned) Payee ID provided by server in a PAYEESYNCRS when provider supports bill pay via Payee ID. Always sent if available. <PAYEE> Complete payee-billing information. Payee address provided by user when provider supports bill pay via address. Always sent if PAYEELSTD is not available. <PAYEELSTID> Payee list ID (required if assigned) Payee List ID returned from server. Supplied for all PMTRQs when known. <BANKACCTTO> Destination account information, for systems that pay by transfers (<PAYEE> also required) Not Supported Extended Payment aggregate, optional Ignored. <PAYACCT> Payer account number with the payee User’s account number at the Payee <DTDUE> Payment due date Due Date. <PMTINFO> <BANKACCTFROM> </BANKACCTFROM> </PAYEE> </BANKACCTTO> <EXTDPMT> </EXTDPMT> NOTE: Money always sends with time stamp of Midnight GMT, as CCYYMMDD120000 format. In PMTRS, server should ensure that DTDUE is accurately displayed for all time zones. Microsoft recommends that server either send actual server time or time that equates to Noon GMT, such as CCYYMMDD120000. <MEMO> Memo from user to payee Memo text provided by user. </PMTINFO> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 45 12.5.2.1 Payee – PAYEE The PAYEE aggregate is supported in Money. Tag Description Money Usage <NAME> Name of payee Name of payee <ADDR1> Payee’s address lines (1 to 3) Payee’s address lines (1 to 3) <CITY> Payee’s city City <STATE> Payee’s state State –Money allows US Postal codes for all US States as well as DC, Military bases, and US protectorates. <POSTALID> Payee’s zip code Zip <COUNTRY> Payee’s country Country <PHONE> Payee’s telephone number Phone Number <PAYEE> <ADDR2> <ADDR3> </PAYEE> 12.5.2.3 Extended Payee – EXTDPAYEE The Extended Payee aggregate is returned from the provider. This aggregate is supported in Money only when received in the PAYEEMODRS. It is ignored when received within a PAYEERS. Tag Description <EXTDPAYEE> Extended-payee aggregate <PAYEEID> Server-assigned payee ID Payee ID stored for use in subsequent payments to this payee. <IDSCOPE> Scope of the payee ID; one of {GLOBAL, USER }, where Money uses this to determine if Payee can be paid from any FI for this provider. GLOBAL = the payee ID is valid across the entire payments system Money Usage USER = the payee ID is valid with all FI accounts set up for the user’s payments account <NAME> Standard payee name Used if not received in the payee aggregate. <DAYSTOPAY> Minimum number of business days needed to process Days to Pay is updated for use in scheduling subsequent payments to this payee. </EXTDPAYEE> Enterprise and Support Training Microsoft Confidential March 2016 46 OFX Message Support in MSN Money and Microsoft Money 12.6 Payments Functions OFX specification does not currently have a way to allow a provider to support EPAY without supporting APAY. Money adds capability to support this by including the field, DisallowRecPayment, in the [BillPayCapabilities] section of the Provider.ini section of Money branding information. 2.6.1.1 Payment Request – PMTRQ The Payment Request is supported in Money. The PMTRQ contains only a PMTINFO aggregate. Tag Description <PMTRQ> Payment-request aggregate <PMTINFO> Payment Information aggregate. Money Usage Refer to section above on PMTINFO support. </PMTINFO> </PMTRQ> 12.6.1.2 Payment Response – PMTRS The Payment Response is supported in Money. Tag Description <PMTRS> Payment-response aggregate Money Usage <SRVRTID> ID assigned by the server to the payment being created Transaction ID. Stored for use in subsequent actions/inquiries against this transaction. <PAYEELSTID> Server-assigned payee list record ID for this payee Discarded. Money stores PAYEELSTID received in PAYEERS. <CURDEF> Default currency for the Recurring Payment Response Supported <PMTINFO> Payment Information aggregate. Refer to section above for PMTINFO support. Standard payee information if payee is a standard payee or payee has non-default processing day parameters. Money 2004, 2005, & 2006 ignore EXTDPAYEE within the PMTRS. <CHECKNUM> Check number Check number. <PMTPRCSTS> Payment processing status </PMTINFO> <EXTDPAYEE> </EXTDPAYEE> <PMTPRCCODE> Enterprise and Support Training Microsoft Confidential PMTPRCCODE= “WILLPROCESSON” ”PROCESSEDON” ”FAILEDON” ”NOFUNDSON” ”CANCELEDON” March 2016 OFX Message Support in MSN Money and Microsoft Money Tag <DTPMTPRC> 47 Description Money Usage Payment processing date; interpretation depends on <PMTPRCCODE> Payment posting date in register updated with DTPMTPRC. NOTE: Server should ensure that DTPMTPRC is accurately displayed for all time zones. Microsoft recommends that server either send actual server time or time that equates to Noon GMT, such as CCYYMMDD120000. Money defaults to using this date for entering payments into the register. Money allows the user to revert to DTDUE date in Tools/Options. </PMTPRCSTS> <RECSRVRTID> References the payment if it was generated by a recurring payment Model ID. </PMTRS> 12.6.2 Payment Modification 12.6.2.2 Payment Modification Request Not supported in Money. 12.6.2.3 Payment Modification Response Money processes PMTMODRS. Tag Description <PMTMODRS> Payment-modification-response this references <SRVRTID> ID assigned by the server to the payment being modified, SRVRTID <PMTINFO> Payment Information aggregate Money Usage Used to identify payment to modify </PMTINFO> <PMTPRCSTS> Payment processing status Money displays processing status in the Register </PMTPRCSTS> </PMTMODRS> 12.6.3 Payment Cancellation Supported in Money PMTCANCRQ PMTCANCRS 12.6.4 Payment Status Inquiry Not Support in Money. Enterprise and Support Training PMTINQRQ PMTINQRS Microsoft Confidential March 2016 48 OFX Message Support in MSN Money and Microsoft Money 12.7 Recurring Payments 12.7.1.1 Recurring Payment Request – RECPMTRQ Recurring Payment Request is supported in Money. Tag Description <RECPMTRQ> Recurring-payment-request aggregate <RECURRINST> Money Usage Recurring Instructions aggregate, see section 10.2. Refer to section on recurring transactions above. Payment-Information aggregate. Refer to section on PMTINFO earlier in this section. <INITIALAMT> amount of the initial payment, if different than the following payments Not supported. <FINALAMT> amount of the final payment, if different than the preceding payments Not supported. </RECURRINST> <PMTINFO> </PMTINFO> </RECPMTRQ> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 49 12.7.1.2 Recurring Payment Response – RECPMTRS Recurring Payment Response is supported in Money. Tag Description <RECPMTRS> Recurring-payment-response aggregate Money Usage <RECSRVRTID> Server-assigned ID for this transaction Model ID. <PAYEELSTID> Server-assigned record ID for this payee record Discarded. Money stores PAYEELSTID received in PAYEERS. <CURDEF> Default currency for the Recurring Payment Response Supported <RECURRINST> Recurring-instructions aggregate, see section 10.2. Refer to section on recurring transactions above. Payment-Information aggregate. Refer to section on PMTINFO earlier in this section. <INITIALAMT> amount of the initial payment, if different than the following payments Ignored. <FINALAMT> amount of the final payment, if different than the preceding payments Ignored. <EXTDPAYEE> Extended payee information. . </RECURRINST> <PMTINFO> </PMTINFO> </EXTDPAYEE> </RECPMTRS> 12.7.2.1 Request <RECPMTMODRQ> Not supported in Money. Enterprise and Support Training Microsoft Confidential March 2016 50 OFX Message Support in MSN Money and Microsoft Money 12.7.2.2 Response <RECPMTMODRS> Money 2004 and 2005 will process RECPMTMODRS. Ignored in Money 2006/2007. Tag Description <RECPMTMODRS> Modification-response aggregate Money Usage <RECSRVRTID> ID assigned by the server to the payment being modified, SRVRTID <RECURRINST> Recurring-Instructions aggregate, see section 10.2 Model ID of the Apay Model to modify </RECURRINST> <PMTINFO> Payment-Information aggregate </PMTINFO> <INITIALAMT> Amount of the initial payment, if different than the following payments, amount Ignored <FINALAMT> Amount of the final payment, if different than the preceding payments, amount Ignored <MODPENDING> Y if the client requested that the server modify pending and future payments. N if the client did not request that the server modify pending and future payments., Boolean Ignored </RECPMTMODRS> 12.7.3.1 Recurring Payment Cancellation Request – RECPMTCANCRQ Recurring Payment Cancellations are supported in Money. Tag Description <RECPMTCANCRQ> Cancellation-request aggregate Money Usage <RECSRVRTID> ID assigned by the server to the payment being canceled Model ID of the Model to be canceled. <CANPENDING> BOOLEAN; if Yes, cancel all currently generated payments Y in Money 2005 and above N in Money 2004 </RECPMTCANCRQ> 12.7.3.2 Recurring Payment Cancellation Response – RECPMTCANCRS Recurring Payment Cancellation Response is supported in Money. Money will process cancellation responses even if they originated outside of Money. Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 51 12.8 Payment Mail 12.8.1.1 Payment Mail Request – PMTMAILRQ Payment Mail Requests are supported in Money. Tag Description <PMTMAILRQ> Payment e-mail-request aggregate Money Usage <MAIL> General e-mail aggregate Refer to Mail section earlier in document. <SRVRTID> Transaction ID of the payment that is the subject of the correspondence Transaction ID supplied if user chooses to send a specific payment mail. <PMTINFO> Payment Information aggregate. Sent in Money 2004 and 2006. Not sent in Money 2005. </PMTINFO> </PMTMAILRQ> 12.8.1.2 Payment Mail Response – PMTMAILRS Payment Mail Responses are supported in Money. Tag Description <PMTMAILRS> Payment e-mail-response aggregate Money Usage <MAIL> General e-mail aggregate, see Chapter 9 Refer to Mail section earlier in document. <SRVRTID> Transaction ID of the payment that is the subject of the correspondence Discarded <PMTINFO> Payment Information aggregate. Discarded </PMTINFO> </PMTMAILRS> Money only displays unsolicited MAIL messages, not echoes of PMTMAILRQs sent by Money. 12.9 Payee Lists 12.9.1.1 Payee Request <PAYEERQ> Not supported in Money. Money adds and modifies payees implicitly in PMTRQ messages. 12.9.1.2 Payee Response <PAYEERS> Supported in Money when received in a <PAYEESYNCRS>. 12.9.2.1 Payee Modification Request <PAYEEMODRQ> Not supported in Money. 12.9.2.2 Payee Modification Response <PAYEEMODRS> Supported in Money when received in a <PAYEESYNCRS>. 12.9.3 Payee Deletion Request Not Supported in Money. 12.9.3.2 Payee Deletion Response <PAYEEDELRS> While Money does not remove a payee it receives a PAYEEDELRS, will remove all PAYEEID and PAYEELSTID from this payee. Enterprise and Support Training Microsoft Confidential March 2016 52 OFX Message Support in MSN Money and Microsoft Money 12.9.4 Payee List Synchronization Request <PAYEESYNCRQ> Supported in Money. Tag Description <PAYEESYNCRQ> Payee-list-request aggregate Money Usage Client synchronization option; <TOKEN>, <TOKENONLY>, or <REFRESH> <TOKEN> Previous value of <TOKEN> received for this type of synchronization request from server; “0” if no token present in Money ; token Yes <TOKENONLY> Request for just the current <TOKEN> without the history, Boolean No <REFRESH> Request for refresh of current state, Boolean Sent by Money on first call, or when 30 days have elapsed since last call. <REJECTIFMISSING> If Y, do not process requests if client <TOKEN> is out of date, Boolean No <PAYEETRNRQ> Payee transactions (0 or more) </PAYEETRNRQ> </PAYEESYNCRQ> 12.9.4 Payee List Synchronization Response <PAYEESYNCRS> Supported in Money. Tag Description <PAYEESYNCRS> Payee-list-request aggregate Money Usage <TOKEN> New synchronization token, token <LOSTSYNC> Y if the token in the synchronization request is older than the earliest entry in the server’s history table. In this case, some responses have been lost. N if the token in the synchronization request is newer than or matches a token in the server’s history table. Boolean No <PAYEETRNRS> Payee transactions (0 or more) Yes </PAYEETRNRS> </PAYEESYNCRS> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 53 12.10 Payment Synchronization Money support full synchronization. Money will process the following when received in a Sync response. PMTRS PMTCANCRS PMTMODRS 12.10.1.1 Request <PMTSYNCRQ> Tag Description <PMTSYNCRQ> Synchronization-request aggregate Money Usage Client synchronization option; <TOKEN>, <TOKENONLY>, or <REFRESH> <TOKEN> Previous value of <TOKEN> received for this type of synchronization request from server; “0” if no token present in Money; token Yes <TOKENONLY> Request for just the current <TOKEN> without the history, Boolean No <REFRESH> Request for refresh of current state, Boolean Sent by Money on first call, or when 30 days have elapsed since last call. <REJECTIFMISSING> If Y, do not process requests if client <TOKEN> is out of date, Boolean N <BANKACCTFROM> Opening tag for account from aggregate, see section 11.3.1 Yes Payment transactions (0 or more) Yes </BANKACCTFROM> <PMTTRNRQ> </PMTTRNRQ> </PMTSYNCRQ> Enterprise and Support Training Microsoft Confidential March 2016 54 OFX Message Support in MSN Money and Microsoft Money 12.10.1.2 Response <PMTSYNCRS> Tag Description <PMTSYNCRS> Synchronization-response aggregate Money Usage <TOKEN> New synchronization token, token Yes <LOSTSYNC> Y if the token in the synchronization request is older than the earliest entry in the server’s history table. In this case, some responses have been lost. N if the token in the synchronization request is newer than or matches a token in the server’s history table. Boolean No <BANKACCTFROM> Opening tag for account from aggregate, see section 11.3.1 Yes Payment transactions (0 or more) Yes </BANKACCTFROM> <PMTTRNRS> </PMTTRNRS> </PMTSYNCRS> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 55 12.10.2 Recurring Payment Synchronization Money support full synchronization. Money will process the following when received in a Sync response. RECPMTRS RECPMTCANCRS RECPMTMODRS 12.10.2.1 Request <RECPMTSYNCRQ> Tag Description <RECPMTSYNCRQ> Synchronization-request aggregate Money Usage Client synchronization option; <TOKEN>, <TOKENONLY>, or <REFRESH> <TOKEN> Previous value of <TOKEN> received for this type of synchronization request from server; “0” if no token present in Money; token Yes <TOKENONLY> Request for just the current <TOKEN> without the history, Boolean No <REFRESH> Request for refresh of current state, Boolean Sent by Money on first call, or when 30 days have elapsed since last call. <REJECTIFMISSING> If Y, do not process requests if client <TOKEN> is out of date, Boolean N <BANKACCTFROM> Opening tag for account from aggregate, see section 11.3.1 </BANKACCTFROM> <RECPMTTRNRQ> Recurring-payment transactions (0 or more) Yes </RECPMTTRNRQ> </RECPMTSYNCRQ> 12.10.2.2 Response <RECPMTSYNCRS> Tag Description <RECPMTSYNCRS> Synchronization-response aggregate Money Description <TOKEN> New synchronization token, token Yes <LOSTSYNC> Y if the token in the synchronization request is older than the earliest entry in the server’s history table. In this case, some responses have been lost. N if the token in the synchronization request is newer than or matches a token in the server’s history table. Boolean N <BANKACCTFROM> Opening tag for account from aggregate, see section 11.3.1 </BANKACCTFROM> <RECPMTTRNRS> Recurring-payment transactions (0 or more) </RECPMTTRNRS> </RECPMTSYNCRS> Enterprise and Support Training Microsoft Confidential March 2016 56 OFX Message Support in MSN Money and Microsoft Money 12.11.2 Bill Payment Message Set Profile <BILLPAYMSGSET> As in other message sets, Money uses the MNN files to set this information. Tag Description Money Usage <DAYSWITH> Number of days before processing date that funds are withdrawn for payment (except by transfer) DAYSWITH in Provider.ini section of Money branding information. NOTE: <DAYSWITH>-1 is not supported <DFLTDAYSTOPAY> Default number of days to pay by check (except by transfer) DFLTDAYSTOPAY in Provider.ini section of Money branding information. <XFERDAYSWITH> Number of days before processing date that funds are withdrawn for payment by transfer Not Supported Default number of days to pay by transfer Not Supported <PROCDAYSOFF> Days of week that no processing occurs; 0 or more of (MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY) Not Supported. <PROCENDTM> Time of day that day’s processing ends Not supported <MODELWND> Model window; the number of days before a recurring transaction is scheduled to be processed that it is instantiated on the system Not Supported. <POSTPROCWND> Number of days after a transaction is processed that it is accessible for status inquiries Not Supported. <STSVIAMODS> If Y, server supports communication of serverinitiated payment status changes by means of the PMTMODRS message Not Supported. <PMTBYADDR> The payment provider supports payments to payees identified by billing address, that is, the PAYEE aggregate, Boolean PMTBYADDR in Provider.ini section of Money branding information. <PMTBYXFER> The payment provider supports payments to payees identified by destination account, Boolean Not Supported <PMTMSGSET> <PMTMSGSETV1> <MSGSETCORE> </MSGSETCORE> <XFERDFLTDAYSTOPAY> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money Tag 57 Description Money Usage <PMTBYPAYEEID> The payment provider supports payments to payees identified by a user-supplied payee ID, Boolean Not Supported, although Money will store any PAYEEID values returned in PAYEERS. <CANADDPAYEE> User can add payees. if no, the user is restricted to payees added to the user’s payee list by the payment system, Boolean Not Supported. <HASEXTDPMT> Supports the EXTDPMT business payment aggregate, Boolean Not Supported. <CANMODPMTS> Permits modifications to payments, that is PMTMODRQ, Boolean Not Supported. <CANMODMDLS> Permits modifications to models, that is REQPMTMODRQ, Boolean Not Supported. <DIFFFIRSTPMT> Support for specifying a different amount for the first payment generated by a model, Boolean Not Supported. <DIFFLASTPMT> Support for specifying a different amount for the last payment generated by a model, Boolean Not Supported. </PMTMSGSETV1> </PMTMSGSET> Process Date Model Some financial institutions require their customers to submit the process date for a payment rather than the due date. Microsoft Money 2004 and above have a flag in the PROVIDER.ini section of Money branding information to adjust for this when displaying prompts for dates and payment status. If your financial institution supports a bill payment model on your web site where customers indicate when to process a payment, rather than when the payment needs to be received by the payee, contact moneyfi@microsoft.com to discuss this. Enterprise and Support Training Microsoft Confidential March 2016 58 OFX Message Support in MSN Money and Microsoft Money 13. Investments 13.6 Investment Accounts 13.6.1 INVACCTFROM (13.6.1) The INVACCTFROM is used in any context that an investment account needs to be identified. Tag Description <INVACCTFROM> Account at FI. Money & MSN Money Usage < BROKERID > Unique identifier for the FI, Microsoft Money and MSN Money My Accounts - From BrokerID field in the [OFX] section of the Provider.ini section of Money branding information. <ACCTID> Account number at FI. FI’s account number for this account </INVACCTFROM> End tag for account from aggregate 13.6.2 Investment Account Information Tag Description <INVACCTINFO> Investment-accountinformation-record aggregate <INVACCTFROM> Money & MSN Money Usage Account at FI Yes <USPRODUCTTYPE> Classification of account. See next section for values Yes <CHECKING> Whether the account has check writing privileges, Y or N Ignored <SVCSTATUS> Activation status for investment statement downloads for the account. ACTIVE (signed up), PEND (in the process of signing up), AVAIL (have not signed up). MSN Money ignores any accounts that are not returned as AVAIL. <INVACCTTYPE> Type of account. INDIVIDUAL, JOINT, TRUST, CORPORATE Ignored <OPTIONLEVEL> Text description of option trading privileges Discarded </INVACCTFROM> Microsoft Money enable both ACTIVE and PEND. Server will need to handle requests from PENDING accounts with appropriate error codes. </INVACCTINFO> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 59 13.6.2.1 Values for <USPRODUCTTYPE> Microsoft Money stores this information with account. MSN Money ignores it. If this is a new account Money can guess at the tax-deferred status from this field. Product Type Description Money Usage 401K A 401(K) account Yes 403B A 403(B) account Yes IRA An IRA account Yes KEOGH Keogh (Money Purchase/Profit Sharing) Yes OTHER Other account type Yes SARSEP Salary Reduction Simplified Employer Pension plan Yes SIMPLE Savings Incentive Match Plan for employees Yes NORMAL Regular account Yes TDA Tax Deferred Annuity Yes TRUST Trust (including UTMA) Yes UGMA Custodial account Yes Microsoft Money Handling of 401K and 403B Designated Accounts Since 401(k) and 403(B) accounts are not taxed based upon capital gains but as income, Money simplified the manual and online reconciliation of securities in accounts designated as one of these types of retirement accounts. When Money 2004 receives a statement for an account that designated as a 401K or 403B Money processes the positions and clears out any cash in the contributions (cash) account. Money ignores any transactions in the OFX response. If a server provides statement data, and the user wishes to have Money process it, there is a work around. User can change the account type from a retirement account to an Investment account in Account Details. Then turn it back to a retirement account so that it can be managed such in the Financial Planner and other tools. Set it as another type of retirement account, such as Other (For Employee). NOTE: Any other type of retirement account will process statements. This behavior only affects 401(K) and 403(B) designated accounts. For a work around to this issue, please see http://support.microsoft.com/default.aspx?scid=kb;en-us;822766. Money 2005 and above resolves this by allowing the user to choose for all account types whether they wish to view positions only, or to receive statements data as well. Enterprise and Support Training Microsoft Confidential March 2016 60 OFX Message Support in MSN Money and Microsoft Money 13.7 Investment Message Sets and Profile Microsoft Money and MSN Money My Accounts use the branding files to set this information. 13.7.1.1 Investment Statement Message Set Profile Tag Description <INVSTMTMSGSET> Investment-statementmessage-set-profile aggregate <INVSTMTMSGSETV1> <MSGSETCORE> Money & MSN Money Usage Version 1 message set Common message set information, see Chapter 7 </MSGSETCORE> Whether the FI server downloads investment statement transactions, Boolean Yes – Microsoft Money <OODNLD> Whether the FI server downloads investment open orders, Boolean NO <POSDNLD> Whether the FI server downloads investment statement positions, Boolean Yes - <TRANDNLD> No – MSN Money My Accounts Money - On by default, disabled by DisallowInvTranDownload field in the [Investment Capabilities] section of the Provider.ini section of Money branding information. Money - On by default, disabled by DisallowPositionDownload field in the [Investment Capabilities] section of the Provider.ini section of Money branding information. MSN Money My Accounts – Not supported <BALDNLD> <CANEMAIL> Whether the FI server downloads investment balances, Boolean Yes - Whether the FI supports e-mail, Boolean NO Money & MSN Money My Accounts - - On by default, disabled by DisallowInvBalanceDownload field in the [InvestmentCapabilities] section of the Provider.ini section of Money branding information. </INVSTMTMSGSETV1> </INVSTMTMSGSET> 13.7.2 Security Information Not used by Money Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 61 13.8.1 Security Identification <SECID> SECID is used in any context that a security needs to be identified. The SECID includes a field for ID and a field to define the nature of the ID. In the U.S., a type of ID called CUSIP is the recommended IDTYPE; however this is not required for 100% of the cases due to broker needs. Tag Description <SECID> Opening tag for the security identifier Money & MSN Money Usage <UNIQUEID> Unique identifier for the security. CUSIP for US FIs. Stored <UNIQUEIDTYPE> Name space for the unique ID. CUSIP for US FIs. Stored </SECID> 13.8.2.1 Security List Transaction Request <SECLISTTRNRQ> Not supported by Money 13.8.2.2 Security List Request <SECLISTRQ> Not supported by Money 13.8.3.1 Security List Transaction Response <SECLISTTRNRS> Not supported in Money. Ignored. 13.8.3.3 Security List Response <SECLISTRS> Not supported in Money. Enterprise and Support Training Microsoft Confidential March 2016 62 OFX Message Support in MSN Money and Microsoft Money 13.8.4 Security List <SECLIST> Supported in Microsoft Money and MSN Money. 13.8.5.1 General Securities Information <SECINFO> Required for each security referenced in the Investment Message Set. Tag Description <SECINFO> Security-information aggregate <SECID> Money &MSN Money Usage Security-identifier aggregate Yes <SECNAME> Full name of security, A-120 Yes – A-70, Security name must be unique within first 70 characters. <TICKER> Ticker symbol (at most one), A-32 Yes <FIID> FI ID number for this security (at most one), A-32 Ignored <RATING> Rating, A-10 Ignored <UNITPRICE> Current price of security, unitprice Ignored <DTASOF> Date as of for the unit price, datetime Ignored <CURRENCY> Overriding currency aggregate for unit price, see section 5.2 Ignored </SECID> </CURRENCY> <MEMO> Supported in Microsoft Money only Memo Ignored </SECINFO> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 63 13.8.5.2 Debt Information <DEBTINFO> Microsoft Money can associate a DEBTINFO type security with either a Bond or a Discounted Bond based on the value of the DEBTTYPE field (Coupon = bond, Zero = Discounted Bond). MSN Money My Accounts does not store this level of detail. Tag Description <DEBTINFO> Opening tag for debt information aggregate <SECINFO> Money & MSN Money Usage Security information aggregate </SECINFO> <PARVALUE> Par value, amount Ignored Presumed Par Value is always 100. <DEBTTYPE> Debt type (at most one) COUPON = coupon ZERO = zero coupon Supported <DEBTCLASS> Classification of debt. TREASURY, MUNICIPAL, CORPORATE, OTHER. Ignored <COUPONRT> Bond coupon rate for next closest call date (at most one), rate Ignored <DTCOUPON> Maturity date for next coupon, date Ignored <COUPONFREQ> When coupons mature. One of the following values: MONTHLY, QUARTERLY, SEMIANNUAL, ANNUAL, or OTHER. Ignored <CALLPRICE> Bond call price (at most one), unitprice Ignored <YIELDTOCALL> Yield to next call, rate Ignored <DTCALL> Next call date (at most one), date Ignored Type of next call. CALL, PUT, PREFUND, MATURITY Ignored <YIELDTOMAT> Yield to maturity, rate Ignored <DTMAT> Debt maturity date (at most one), date Supported <ASSETCLASS> Asset Class (at most one), DOMESTICBOND, INTLBOND, LARGESTOCK SMALLSTOCK, INTLSTOCK, MONEYMRKT, OTHER Ignored <FIASSETCLASS> Text string containing an FI defined asset class, A-32 Ignored <CALLTYPE> </DEBTINFO> Enterprise and Support Training Microsoft Confidential March 2016 64 OFX Message Support in MSN Money and Microsoft Money 13.8.5.3 Mutual Fund Information <MFINFO> Microsoft Money and MSN Money ignore the type-specific tags in MFINFO (other than what is specified in SECINFO). Tag Description <MFINFO> Mutual-fund-information aggregate <SECINFO> Money & MSN Money Usage Security-information aggregate Yes <MFTYPE> Mutual fund type. OPENEND, CLOSEEND, OTHER Ignored <YIELD> Current yield reported as portion of the fund’s assets (at most one), rate Ignored <DTYIELDASOF> As-of date for yield value, datetime Ignored <MFASSETCLASS> Asset class breakdown for the mutual fund Ignored Portion of the mutual fund with a specific asset classification (one or more) Ignored <ASSETCLASS> Asset Class, DOMESTICBOND, INTLBOND, LARGESTOCK SMALLSTOCK, INTLSTOCK, MONEYMRKT, OTHER Ignored <PERCENT> Percentage of the fund that falls under this asset class, rate Ignored </SECINFO> <PORTION> </PORTION> </MFASSETCLASS> <FIMFASSETCLASS> Ignored FI defined asset class breakdown for the mutual fund Ignored Portion of the mutual fund with a specific asset classification (one or more) Ignored <FIASSETCLASS> Text string containing an FI defined asset class, A-32 Ignored <PERCENT> Percentage of the fund that falls under this asset class, rate Ignored <FIPORTION> </FIPORTION> </FIMFASSETCLASS> </MFINFO> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 65 13.8.5.4 Option Information <OPTINFO> Money 2003 and higher have support for security type Option, however support for options is not suggested in Money 2003. For further information on issues with Options in Money 2003, please review http://www.microsoft.com/money/partner/tools/TroubleshootingOFX.doc. Tag Description <OPTINFO> Option-information aggregate <SECINFO> Money & MSN Money Usage Security-information aggregate Supported <OPTTYPE> Option type: PUT = put CALL = call Supported <STRIKEPRICE> Strike price unitprice Supported <DTEXPIRE> Expiration date, date Supported <SHPERCTRCT> Shares per contract, N-5 Supported <SECID> Security ID of the underlying security Ignored <ASSETCLASS> Asset Class (at most one), DOMESTICBOND, INTLBOND, LARGESTOCK SMALLSTOCK, INTLSTOCK, MONEYMRKT, OTHER Ignored <FIASSETCLASS> Text string containing an FI defined asset class, A-32 Ignored </SECINFO> In Money 2003+, customer should manually add this information. </SECID> </OPTINFO> 13.8.5.5 Other Security Type Information <OTHERINFO> Money and MSN Money maps to Mutual Funds Tag Description <OTHERINFO> Other aggregate. <SECINFO> Security information aggregate Money & MSN Money Usage Supported </SECINFO> <TYPEDESC> Description of security type, A-32 <ASSETCLASS> Asset Class (at most one), DOMESTICBOND, INTLBOND, LARGESTOCK SMALLSTOCK, INTLSTOCK, MONEYMRKT, OTHER <FIASSETCLASS> Text string containing an FI defined asset class, A-32 OTHER Only </OTHERINFO> Enterprise and Support Training Microsoft Confidential March 2016 66 OFX Message Support in MSN Money and Microsoft Money 13.8.5.6 Stock Information <STOCKINFO> Tag Description <STOCKINFO> Stock-information aggregate <SECINFO> Money & MSN Money Usage Security-information aggregate Supported <STOCKTYPE> Stock type: COMMON, PREFERRED, CONVERTIBLE, OTHER Ignored <YIELD> Current yield reported as the dividend expressed as a portion of the current stock price (at most one), rate Ignored <DTYIELDASOF> As-of date for yield value, datetime Ignored <ASSETCLASS> Asset Class (at most one): DOMESTICBOND, INTLBOND, LARGESTOCK SMALLSTOCK, INTLSTOCK, MONEYMRKT, OTHER Ignored <FIASSETCLASS> Text string containing an FI defined asset class, A-32 Ignored </SECINFO> </STOCKINFO> 13.9 Investment Statement Download Microsoft Money supports investment statement data. MSN Money My Accounts, ignores statements, and processes only positions. 13.9.1.1 Investment Statement Transaction Request <INVSTMTTRNRQ> Tag Description <INVSTMTTRNRQ> Transaction-request aggregate Money Usage <TRNUID> Client-assigned globally unique ID for this transaction, trnuid <CLTCOOKIE> Data to be echoed in the transaction response, A-32 Supported <TAN> Transaction authorization number; used in some countries with some types of transactions. Country-specific documentation will define messages that require a <TAN>, A-80 Supported in International versions only Aggregate for the investment statement download request (see section 13.9.1.2) Supported <INVSTMTRQ> </INVSTMTRQ> </INVSTMTTRNRQ> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 67 13.9.1.2 Investment Statement Request <INVSTMTRQ> Tag Description and Type <INVSTMTRQ> Investment-request aggregate <INVACCTFROM> Money Usage Account-from aggregate </INVACCTFROM> <INCTRAN> <DTSTART> Include-transactions aggregate (at most one) Start date of request, datetime Money - Current date minus 30 days on first call. User can customize. Subsequent calls of all versions send DTEND from pervious call. <DTEND> Ending date of request (at most one),.datetime <INCLUDE> Whether to include transactions in the statement download, Boolean </INCTRAN> Not sent Y by default in Money 2004 and 2005. DissallowInvTranDownlo ad=1 in Provider.ini section of Money branding information will force N value Money 2006 will also set N value if user indicates that they want to track Positions only. Always N in MSN Money. <INCOO> Include investment open orders in response, Boolean Always N <INCPOS> Include investment positions in response Supported <DTASOF> Date that positions should be sent down for, datetime Today <INCLUDE> Whether to include positions in the statement download, Boolean </INCPOS> <INCBAL> Include investment balance in response, Boolean Supported </INVSTMTRQ> Enterprise and Support Training Microsoft Confidential March 2016 68 OFX Message Support in MSN Money and Microsoft Money 13.9.2 Investment Statement Response 13.9.2.1 Investment Statement Transaction Response 13.9.2.2 Investment Statement Response <INVSTMTRS> Tag Description <INVSTMTRS> Investment-response aggregate Money Usage <DTASOF> As of date & time for the statement download, datetime Ignored <CURDEF> Default currency for the statement, currsymbol Supported <INVACCTFROM> Which account at FI </INVACCTFROM> <INVTRANLIST> Begin transaction list (at most one) <DTSTART> Start date for transaction data, datetime <DTEND> This is the value that should be sent in the next <DTSTART> request to insure that no transactions are missed, datetime (investment transaction aggregates) <INVBANKTRAN> Used as DTSTART for next call. Investment statement transaction aggregates (zero or more); see section 13.9.2.4.4. Banking-related transactions for the investment account (zero or more) Supported by Microsoft Money Ignored by MSN Money </INVBANKTRAN> (See section 13.9.2.3) </INVTRANLIST> End of investment transaction list <INVPOSLIST> Beginning of investment position list (at most one) <POSxxxxx> Supported Security type specific position aggregates (zero or more): POSMF, POSSTOCK, POSDEBT, POSOPT, POSOTHER </POSxxxxx> </INVPOSLIST> <INVBAL> End of investment position list Balances aggregate, see section 13.9.2.7 Supported <INVOOLIST> Beginning of investment open order list (at most one) Ignored <OOxxxxx> Action and security type specific open order aggregates (zero or more) </INVBAL> </OOxxxxx> </INVOOLIST> End of investment open order list <MKTGINFO> Marketing information (at most one), A360. Ignored </INVSTMTRS> Enterprise and Support Training Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 69 13.9.2.3 Bank Transactions <INVBANKTRAN> INVBANKTRAN contains a transaction that applies only to the cash account – the transaction has no effect on any shares held. INVBANKTRAN contains a STMTTRN aggregate that is separated out and processed as if it was a banking Statement transaction for the cash account by Microsoft Money only. Tag Description <INVBANKTRAN> Banking related transactions for the investment account <STMTTRN> Bank (cash) transaction aggregates Money Usage Supported in Money, not in MSN Money My Accounts See STMTTRN (banking) </STMTTRN> (See chapter 11) <SUBACCTFUND> The sub-account associated with the funds for the transaction. Discarded, Money only has one associated cash account per investment account </INVBANKTRAN> 13.9.2.4.1 General Transaction Aggregate <INVTRAN> Tag Description <INVTRAN> Investment-transaction-response aggregate Money Usage Unique FI-assigned transaction ID. This ID is used to detect duplicate downloads. FITID Supported <SRVRTID> Server assigned transaction ID, SRVRTID Ignored <DTTRADE> Trade date; for stock splits, day of record, datetime Supported - Transaction date for all transactions except for splits. <FITID> NOTE: Server should ensure that DTTRADE and DTSETTLE are accurately displayed for all time zones. Microsoft recommends that server either send actual server time or time that equates to Noon GMT, such as CCYYMMDD120000. <DTSETTLE> Settlement date; for stock splits, execution date, datetime Supported only as transaction date for splits. <MEMO> Other information about transaction (at most one), memo Supported in Microsoft Money only </INVTRAN> 13.9.2.4.2 Transaction Aggregate Elements Because so many fields are re-used in investment transactions, descriptions will not be included in this section. The complete list is in table 13.9.2.4.2 in the OFX investment specification. Enterprise and Support Training Microsoft Confidential March 2016 70 OFX Message Support in MSN Money and Microsoft Money 13.9.2.4.3 Investment Buy/Sell Aggregates <INVBUY>/<INVSELL> Buys and Sells in OFX have unique transaction descriptions based on security type, however all of these transactions are based on an INVBUY or INVSELL type. The tables listed below include the transaction signage expected by Money. An OFX response that is not signed as expected. Microsoft Money rejects individual transactions if improperly signed, rather than the entire response. INVBUY Enterprise and Support Training Elements Money Usage <INVTRAN> aggregate See INVTRAN Money Signage <SECID> aggregate Identifies security <UNITS> Number of shares or bonds, based on sec. type Positive <UNITPRICE> Price Positive <MARKUP> * Positive <COMMISSION> Yes ** Positive <TAXES> Yes ** Positive <FEES> Yes ** Positive <LOAD> Yes ** Positive <TOTAL> Total *** Negative <CURRENCY> aggregate Yes <ORIGCURRENCY> aggregate Discarded <SUBACCTSEC> Discarded <SUBACCTFUND> Discarded Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 71 INVSELL Enterprise and Support Training Money Signage Elements Money Usage <INVTRAN> aggregate See INVTRAN <SECID> aggregate Identifies security <UNITS> Number of shares or bonds, based on sec. type Negative <UNITPRICE> Price Positive <MARKDOWN> Yes Positive <COMMISSION> Yes * Positive <TAXES> Yes * Positive <FEES> Yes * Positive <LOAD> Yes * Positive <WITHHOLDING> Yes * Positive <TAXEXEMPT> Discarded Positive <TOTAL> Total ** Positive <GAIN> Discarded <CURRENCY> aggregate Yes <ORIGCURRENCY> aggregate Discarded <SUBACCTSEC> Discarded <SUBACCTFUND> Discarded * The Commission recorded in the Microsoft Money register is the sum of COMMISSION, TAXES, FEES, LOAD, and WITHHOLDING. ** TOTAL should equal (UNITS * UNITPRICE +/- Total Commission). For Mutual Funds, Total must compute to within 5¢. All others must compute to within 2¢. Microsoft Money rejects individual transactions that do not compute. Microsoft Confidential March 2016 72 OFX Message Support in MSN Money and Microsoft Money 13.9.2.4.4 Investment Transaction Aggregates See OFX specification for description of tags. See notes at the end of this section for specific implementation issues. Aggregate Name <BUYDEBT> <BUYMF> <BUYOPT> <BUYOTHER> <BUYSTOCK> <CLOSUREOPT> <INCOME> <INVEXPENSE> <JRNLFUND> <JRNLSEC> <MARGININTEREST> <REINVEST> Enterprise and Support Training Elements <INVBUY> aggregate <ACCRDINT> <INVBUY> aggregate <BUYTYPE> <RELFITID> <INVBUY> aggregate <OPTBUYTYPE> <SHPERCTRCT> <INVBUY> aggregate <INVBUY> aggregate <BUYTYPE> <INVTRAN> aggregate <SECID> aggregate <OPTACTION> <UNITS> <SHPERCTRCT> <SUBACCTSEC> <RELFITID> <GAIN> <INVTRAN> aggregate <SECID> aggregate <INCOMETYPE> <TOTAL> <SUBACCTSEC> <SUBACCTFUND> <TAXEXEMPT> <WITHHOLDING> <CURRENCY> aggregate <ORIGCURRENCY> aggregate <INVTRAN> aggregate <SECID> aggregate <TOTAL> <SUBACCTSEC> <SUBACCTFUND> <CURRENCY> aggregate <ORIGCURRENCY> aggregate <INVTRAN> aggregate <SUBACCTTO> <SUBACCTFROM> <TOTAL> <INVTRAN> aggregate <SECID> aggregate <SUBACCTTO> <SUBACCTFROM> <UNITS> <INVTRAN> aggregate<TOTAL> <SUBACCTFUND> <CURRENCY> aggregate <ORIGCURRENCY> aggregate <INVTRAN> aggregate <SECID> aggregate <INCOMETYPE> <TOTAL> <SUBACCTSEC> <UNITS> <UNITPRICE> <COMMISSION> <TAXES> <FEES> <LOAD> <TAXEXEMPT> <CURRENCY> aggregate <ORIGCURRENCY> aggregate Microsoft Confidential Money Usage Supported Supported Supported Supported Ignored Supported Supported Supported Supported Supported Supported Ignored ALL Supported Supported Supported Supported Ignored Ignored Ignored Ignored Supported Ignored Supported Supported Supported Ignored Ignored Supported Ignored Ignored ALL Ignored ALL Supported in all versions but Money 2005 Ignored Supported Ignored Supported Supported Supported Supported Ignored Supported Supported Supported Supported Supported Supported Ignored Supported Ignored March 2016 OFX Message Support in MSN Money and Microsoft Money Aggregate Name <RETOFCAP> <SELLDEBT> <SELLMF> <SELLOPT> <SELLOTHER> <SELLSTOCK> <SPLIT> <TRANSFER> Elements <INVTRAN> <SECID> <TOTAL> <SUBACCTSEC> <SUBACCTFUND> <CURRENCY> aggregate <ORIGCURRENCY> aggregate <INVSELL> aggregate <SELLREASON> <ACCRDINT> <INVSELL> aggregate <SELLTYPE> <AVGCOSTBASIS> <RELFITID> <INVSELL> aggregate <OPTSELLTYPE> <SHPERCTRCT>** <RELFITID> <RELTYPE> <SECURED> <INVSELL> aggregate <INVSELL> aggregate <SELLTYPE> <INVTRAN> aggregate <SECID> aggregate <SUBACCTSEC> <OLDUNITS> <NEWUNITS> <NUMERATOR>* <DENOMINATOR>* <CURRENCY> aggregate <ORIGCURRENCY> aggregate <FRACCASH> <SUBACCTFUND> <INVTRAN> aggregate <SECID> aggregate <SUBACCTSEC> <UNITS> <TFERACTION> <POSTYPE> <INVACCTFROM> aggregate <AVGCOSTBASIS> <UNITPRICE> <DTPURCHASE> 73 Money Usage Supported Supported Supported Ignored Ignored Supported Ignored Supported Ignored Supported Supported Supported Ignored Ignored Supported Supported Supported** Ignored Ignored Ignored N Supported Supported Supported Supported Supported Ignored Ignored Ignored Supported - INT Supported - INT Supported Ignored Supported Ignored Supported Supported Ignored Supported Supported Supported Ignored Ignored Supported Supported Buys While the BUYTYPE fields is not stored permanently, Money does make short-term use of them to assist in lot matching during reconcile. BUY (stocks, MF) or BUYTOOPEN (options) indicates a new lot should be created (Activity = Buy) BUYTOCOVER or BUYTOCLOSE indicates an existing short lot should be closed. (Activity = Cover Short) Closures A closure activity happens, for instance, when an option expires. For Money’s purposes, the effect is the same as a sell (the shares are removed from the person’s holdings, and there is a tax effect and possible cash flow). Because Money has no closure transaction, Money will ignore the <CLOSUREOPT> aggregate. The OFX spec requires that a buy or sell of the underlying security will be sent as an additional INVTRAN. The Expire option is simply ignored. During Position reconciling, an appropriate Remove Shares transaction will be entered to compensate for the difference due to the Expire or Exercise. Enterprise and Support Training Microsoft Confidential March 2016 74 OFX Message Support in MSN Money and Microsoft Money Income The mapping from INCOMETYPE to transaction type in Money is as follows: CGLONG L-Term Cap Gains Dist CGSHORT S-Term Cap Gains Dist DIV Dividend INTEREST Interest MISC Other Expense Sell Similarly to buy, the SELLTYPE fields are not stored perpetually but help in lot selection when reconciling. SELL, SELLTOCLOSE indicates an existing lot is being sold (Activity = Sell) SELLSHORT, SELLTOOPEN indicates a new lot should be created (Activity = Short Sell) ACCRDINT <ACCRDINT> for a <BUYDEBT> or <SELLDEBT> is included as a separate cash transaction in the associated cash account. <ACCRDINT> should be less than or equal to zero for <BUYDEBT>. Conversely, <ACCRDINT> should be greater than or equal to zero for <SELLDEBT>. If the signage of <ACCRDINT> with respect to <BUYDEBT> and <SELLDEBT> is incorrect Money will not enter the transaction into the cash account. SHPERCTRCT Money presumes SHPERCTRCT of Options is always 100. Splits OLDUNITS and NEWUNITS - Ignored by Money. NUMERATOR and DENOMINATOR - Used by Money to calculate split. NOTE: Money requires these values to be integers. Server should round up to the nearest whole number, or use the lowest common denominator. UNITPRICE -Closing price on the trading day before the split date, adjusted for the split ratio. Transfers Enterprise and Support Training TFERACTION = IN - The transfer will be handled as an Add Shares. TFERACTION = OUT, the transfer will be handled as a Remove Shares. Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 75 13.9.2.4.5 Valid Transactions by Security Type Money rejects individual transactions if the transaction type is not supported in the OFX Specification for the security type. Debt BUYDEBT Mutual Fund Option Other Stock v v BUYMF v BUYOPT v BUYOTHER v v v BUYSTOCK v CLOSUREOPT INCOME v v INVEXPENSE v v v v v v v v v v v v v v v v v v v JRNLFUND JRNLSEC MARGININTEREST REINVEST RETOFCAP v SELLDEBT v v v v SELLMF v SELLOPT v SELLOTHER v SELLSTOCK v SPLIT TRANSFER Enterprise and Support Training Microsoft Confidential v v v v v v March 2016 76 OFX Message Support in MSN Money and Microsoft Money 13.9.2.5 Open Orders Not supported. 13.9.2.6 Positions Microsoft Money and MSN Money use the position information to make sure calculations of positions based on all transactions matches the numbers from the brokerage. Money adds or removes shares based upon this information. 13.9.2.6.1 Investment Position Information <INVPOS> Tag Description <INVPOS> General-position aggregate <SECID> Money & MSN Money Usage Security identifier Yes <HELDINACCT> Sub-account type CASH, MARGIN, SHORT, OTHER Discarded <POSTYPE> SHORT = Writer for options, Short for all others. Yes in Money and MSN Money My Accounts LONG = Holder for options, Long for all others. Determines sign of UNITS* For stocks, MFs, other, number of shares held. Bonds = face value. Options = number of contracts quantity Yes For stocks, MFs, other, price per share. Bonds = percentage of par Option = premium per share of underlying security unitprice Microsoft Money uses this data if creating a position adjustment. Otherwise, Money does not update data with this value. Prices are obtained from Quote feed. </SECID> <UNITS> <UNITPRICE> MSN Money My Accounts - Positions are noted as LONG or SHORT based upon signage. MSN Money My Accounts displays the UNITPRICE value. <MKTVAL> Market value of this position, amount Used but not stored <DTPRICEASOF> Date and time of unit price and market value. Can be 0 if unit price and market value are unknown, datetime Discarded <CURRENCY> Currency information if different from default currency. </CURRENCY> <MEMO> Comment, memo Ignored. </INVPOS> * Enterprise and Support Training If POSTYPE is SHORT, the number of shares held is negative; if POSTYPE is LONG, the number of shares held is positive. Note: Money may receive multiple position records for a single security – separate long and short positions, perhaps even held in different sub-accounts. Money sums all of these to arrive at a single aggregate shares held number. Microsoft Confidential March 2016 OFX Message Support in MSN Money and Microsoft Money 77 13.9.2.6.2 Investment Positions Investment Position Aggregates Elements Money & MSN Money Usage <POSDEBT> <INVPOS> aggregate Supported <POSMF> <INVPOS> aggregate Supported <UNITSSTREET> Ignored <UNITSUSER> Ignored <REINVDIV> Ignored <REINVCG> Ignored <INVPOS> aggregate Supported <SECURED> Ignored <POSOTHER> <INVPOS> aggregate Supported <POSSTOCK> <INVPOS> aggregate Supported <UNITSSTREET> Ignored <UNITSUSER> Ignored <REINVDIV> Ignored <POSOPT> 13.9.2.7 Investment Balances <INVBAL> Tag Description <INVBAL> Balances aggregate Money Usage <AVAILCASH> Cash balance across all sub-accounts. Should include sweep funds. amount Used to display balance of cash account if MARGINBALANCE is 0. <MARGINBALANCE> Margin balance. A positive balance indicates a positive cash balance, while a negative balance indicates the customer has borrowed funds. amount Used to display balance of cash account <SHORTBALANCE> Market value of all short positions, amount Ignored <BUYPOWER> Buying power, amount Ignored <BALLIST> Beginning of Investment balance list (at most one) Ignored <BAL> Balance aggregates (one or more) Ignored </BAL> See Chapter 3 </BALLIST> </INVBAL> 13.10 Investment E-Mail Not supported. Enterprise and Support Training Microsoft Confidential March 2016 78 OFX Message Support in MSN Money and Microsoft Money OFX 2.0 Microsoft Money supports the OFX 2.0 message set for all message sets supported by Money. Money 2006 also supports sending and receiving OFX messages sets in OFX 2.02. Money 2006, however, will ignore the new tags in that specification, such as the REVERSALFITID tag in the investment message set or the BALLIST in a bank massage set. Support for OFX 2.0 and XML Header Money has an entry in the Provider.ini section of Money branding information, OfxHeadVer. The default setting is OfxHeadVer=102 to indicate 1.02 support. If OfxHeadVer=200, this indicates that the OFX 2.0 specification is supported. If 2.0 support is indicated, Money sends all requests with the OFX 2.0 XML header, and sends end tags for all tags. Money 2006 also supports OFX 2.02, and will send OfxHeadVer=202, if our branding data indicates support for this. The OFX consortium has published an XML schema for the OFX 2.02 spec which is available at http://www.ofx.net/ofx/downloads/collaborate/architecture/OFX_XML_Schema.zip. 401K support While Microsoft Money can support the OFX 2.0 and 2.02 message sets, it ignores the 401K specific aggregates included in these specifications. Review the Microsoft Money Handling of 401K and 403B Designated Accounts section earlier in this document for further information on how Microsoft Money handles these accounts. For a work around to this issue, please see http://support.microsoft.com/default.aspx?scid=kb;en-us;822766. Enterprise and Support Training Microsoft Confidential March 2016