34 std::string request = OfxHeader(login->header_version) + strq.Output();
36 unsigned size = request.size();
37 char* result = (
char*)malloc(size + 1);
38 request.copy(result, size);
62 bankacctfromTag.
Add(
"BANKID", m_account.
bank_id );
65 bankacctfromTag.
Add(
"ACCTTYPE",
"CHECKING" );
66 else if ( m_account.account_type == m_account.
OFX_SAVINGS )
67 bankacctfromTag.
Add(
"ACCTTYPE",
"SAVINGS" );
69 bankacctfromTag.
Add(
"ACCTTYPE",
"MONEYMRKT" );
71 bankacctfromTag.
Add(
"ACCTTYPE",
"CREDITLINE" );
72 else if ( m_account.account_type == m_account.
OFX_CMA )
73 bankacctfromTag.
Add(
"ACCTTYPE",
"CMA" );
76 inctranTag.
Add(
"DTSTART", time_t_to_ofxdate( m_date_from ) );
77 inctranTag.
Add(
"INCLUDE",
"Y" );
80 stmtrqTag.
Add( bankacctfromTag );
81 stmtrqTag.
Add( inctranTag );
100 inctranTag.
Add(
"DTSTART", time_t_to_ofxdate( m_date_from ) );
101 inctranTag.
Add(
"INCLUDE",
"Y" );
104 ccstmtrqTag.
Add( ccacctfromTag );
105 ccstmtrqTag.
Add( inctranTag );
114 invacctfromTag.
Add(
"BROKERID", m_account.broker_id );
118 inctranTag.
Add(
"DTSTART", time_t_to_ofxdate( m_date_from ) );
119 inctranTag.
Add(
"INCLUDE",
"Y" );
122 incposTag.
Add(
"DTASOF", time_t_to_ofxdatetime( time(NULL) ) );
123 incposTag.
Add(
"INCLUDE",
"Y" );
126 invstmtrqTag.
Add( invacctfromTag );
127 invstmtrqTag.
Add( inctranTag );
128 invstmtrqTag.
Add(
"INCOO",
"Y" );
129 invstmtrqTag.
Add( incposTag );
130 invstmtrqTag.
Add(
"INCBAL",
"Y" );
133 invstmtrqTag.
AddXml(
"INC401K",
"Y" );
134 invstmtrqTag.
AddXml(
"INC401KBAL",
"Y" );
143 std::string request = OfxHeader(login->header_version) + strq.Output();
145 unsigned size = request.size();
146 char* result = (
char*)malloc(size + 1);
147 request.copy(result, size);
162 bankacctfromTag.
Add(
"BANKID", m_account.
bank_id );
165 bankacctfromTag.
Add(
"ACCTTYPE",
"CHECKING" );
166 else if ( m_account.account_type == m_account.
OFX_SAVINGS )
167 bankacctfromTag.
Add(
"ACCTTYPE",
"SAVINGS" );
168 else if ( m_account.account_type == m_account.
OFX_MONEYMRKT )
169 bankacctfromTag.
Add(
"ACCTTYPE",
"MONEYMRKT" );
171 bankacctfromTag.
Add(
"ACCTTYPE",
"CREDITLINE" );
172 else if ( m_account.account_type == m_account.
OFX_CMA )
173 bankacctfromTag.
Add(
"ACCTTYPE",
"CMA" );
176 payeeTag.
Add(
"NAME", m_payee.name );
177 payeeTag.
Add(
"ADDR1", m_payee.address1 );
178 payeeTag.
Add(
"CITY", m_payee.city );
179 payeeTag.
Add(
"STATE", m_payee.state );
180 payeeTag.
Add(
"POSTALCODE", m_payee.postalcode );
181 payeeTag.
Add(
"PHONE", m_payee.phone );
184 pmtinfoTag.
Add( bankacctfromTag );
185 pmtinfoTag.
Add(
"TRNAMT", m_payment.amount );
186 pmtinfoTag.
Add( payeeTag );
187 pmtinfoTag.
Add(
"PAYACCT", m_payment.account );
188 pmtinfoTag.
Add(
"DTDUE", m_payment.datedue );
189 pmtinfoTag.
Add(
"MEMO", m_payment.memo );
192 pmtrqTag.
Add( pmtinfoTag );
197 char* libofx_request_payment_status(
const struct OfxFiLogin* login,
const char* transactionid )
201 pmtinqrqTag.Add(
"SRVRTID", transactionid );
204 ofx.Add( ofx.SignOnRequest() );
205 ofx.Add( ofx.RequestMessage(
"BILLPAY",
"PMTINQ", pmtinqrqTag) );
207 std::string request = OfxHeader() + ofx.Output();
209 unsigned size = request.size();
210 char* result = (
char*)malloc(size + 1);
211 request.copy(result, size);
215 payeesyncrq.Add(
"TOKEN",
"0" );
216 payeesyncrq.Add(
"TOKENONLY",
"N" );
217 payeesyncrq.Add(
"REFRESH",
"Y" );
218 payeesyncrq.Add(
"REJECTIFMISSING",
"N" );
221 message.Add( payeesyncrq );
224 ofx.Add( ofx.SignOnRequest() );
227 std::string request = OfxHeader(login->header_version) + ofx.Output();
229 unsigned size = request.size();
230 char* result = (
char*)malloc(size + 1);
231 request.copy(result, size);