Создать файлы запросов и ответов OFX в Python API
Contents
[
Hide
]
Aspose.Finance для Python через .NET поддерживает создание файлов запросов и ответов OFX в формате 1.03 и 2.2. Для создания документов OFX API предоставляет классы OfxRequestDocument и OfxResponseDocument. В следующих примерах показано создание OFX файлов запросов и файлов ответов в форматах 1.03 и 2.2.
Создайте файл запроса OFX в .NET
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ofxRequestDoc = OfxRequestDocument() | |
ofxRequestDoc.signon_request_message_set_v1 = SignonRequestMessageSetV1() | |
signonRequest = SignonRequest() | |
ofxRequestDoc.signon_request_message_set_v1.signon_request = signonRequest | |
signonRequest.client_date = "20200611000000" | |
signonRequest.user_id = "aspose" | |
signonRequest.user_password = "password" | |
fi = FinancialInstitution() | |
fi.organization = "aspose" | |
fi.financial_institution_id = "1" | |
signonRequest.financial_institution = fi | |
signonRequest.app_version = "1.0" | |
signonRequest.app_id = "Aspose.Finance" | |
signonRequest.client_user_id = "aaaaaaa" | |
ofxRequestDoc.bank_request_message_set_v1 = BankRequestMessageSetV1() | |
stmtTransRequest = StatementTransactionRequest() | |
ofxRequestDoc.bank_request_message_set_v1.statement_transaction_requests.append(stmtTransRequest) | |
stmtTransRequest.transaction_unique_id = "1111111" | |
stmtTransRequest.statement_request = StatementRequest() | |
stmtTransRequest.statement_request.bank_account_from = BankAccount() | |
stmtTransRequest.statement_request.bank_account_from.bank_id = "sssss" | |
stmtTransRequest.statement_request.bank_account_from.account_id = "sfsdfsfsdf" | |
stmtTransRequest.statement_request.bank_account_from.account_type = AccountEnum.CHECKING | |
stmtTransRequest.statement_request.inc_transaction = IncTransaction() | |
stmtTransRequest.statement_request.inc_transaction.start_date = "20200601000000" | |
stmtTransRequest.statement_request.inc_transaction.end_date = "20200611000000" | |
stmtTransRequest.statement_request.inc_transaction.include = True | |
ofxRequestDoc.save(os.path.join(outputDir, "newOfxRequestBankStatement.xml"), OfxVersionEnum.V2X) | |
ofxRequestDoc.save(os.path.join(outputDir, "newOfxRequestBankStatement.sgml"), OfxVersionEnum.V1X) |
Создайте файл ответов OFX в .NET
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ofxResponseDoc = OfxResponseDocument() | |
ofxResponseDoc.signon_response_message_set_v1 = SignonResponseMessageSetV1() | |
signonResponse = SignonResponse() | |
ofxResponseDoc.signon_response_message_set_v1.signon_response = signonResponse | |
signonResponse.status = Status() | |
signonResponse.status.code = "0" | |
signonResponse.status.severity = SeverityEnum.INFO | |
signonResponse.status.message = "SUCCESS" | |
signonResponse.server_date = "20200611" | |
signonResponse.profile_update_date = "20200611" | |
fi = FinancialInstitution() | |
fi.organization = "aspose" | |
fi.financial_institution_id = "1" | |
signonResponse.financial_institution = fi | |
signonResponse.session_cookie = "11111111111111111" | |
ofxResponseDoc.bank_response_message_set_v1 = BankResponseMessageSetV1() | |
stmtTransResponse = StatementTransactionResponse() | |
ofxResponseDoc.bank_response_message_set_v1.statement_transaction_responses.append(stmtTransResponse) | |
stmtTransResponse.transaction_unique_id = "829631324" | |
stmtTransResponse.status = Status() | |
stmtTransResponse.status.code = "0" | |
stmtTransResponse.status.severity = SeverityEnum.INFO | |
stmtTransResponse.statement_response = StatementResponse() | |
stmtTransResponse.statement_response.currency = CurrencyEnum.USD | |
stmtTransResponse.statement_response.bank_account_from = BankAccount() | |
stmtTransResponse.statement_response.bank_account_from.bank_id = "1111111" | |
stmtTransResponse.statement_response.bank_account_from.account_id = "1111111111111" | |
stmtTransResponse.statement_response.bank_account_from.account_type = AccountEnum.CHECKING | |
stmtTransResponse.statement_response.bank_transaction_list = BankTransactionList() | |
stmtTransResponse.statement_response.bank_transaction_list.start_date = "20200601000000" | |
stmtTransResponse.statement_response.bank_transaction_list.end_date = "20200611000000" | |
transaction1 = StatementTransaction() | |
transaction1.transaction_type = TransactionEnum.DEBIT | |
transaction1.posted_date = "20200611000000" | |
transaction1.transaction_amount = "-12" | |
transaction1.financial_institution_transaction_id = "1111111111111111111111111" | |
transaction1.name = "bbbbbbbbbbbbbbbbbbbbbbb" | |
transaction2 = StatementTransaction() | |
transaction2.transaction_type = TransactionEnum.CREDIT | |
transaction2.posted_date = "20200611000000" | |
transaction2.transaction_amount = "22222.11" | |
transaction2.financial_institution_transaction_id = "2222222222222222222222222222" | |
transaction2.name = "wwwwwwwwwwwwwwwwwwwwwwww" | |
stmtTransResponse.statement_response.bank_transaction_list.statement_transactions.append(transaction1) | |
stmtTransResponse.statement_response.bank_transaction_list.statement_transactions.append(transaction2) | |
stmtTransResponse.statement_response.ledger_balance = LedgerBalance() | |
stmtTransResponse.statement_response.ledger_balance.balance_amount = "+2222.42" | |
stmtTransResponse.statement_response.ledger_balance.date_as_of = "20200611000000" | |
stmtTransResponse.statement_response.available_balance = AvailableBalance() | |
stmtTransResponse.statement_response.available_balance.balance_amount = "+222222.42" | |
stmtTransResponse.statement_response.available_balance.date_as_of = "20200611000000" | |
ofxResponseDoc.save(os.path.join(outputDir,"newOfxResponseBankStatement.xml"), OfxVersionEnum.V2X) | |
ofxResponseDoc.save(os.path.join(outputDir,"newOfxResponseBankStatement.sgml"), OfxVersionEnum.V1X) |