Sample code for 30+ languages & platforms
VBScript

ETrade List Transactions

See more ETrade Examples

Gets transactions for the selected brokerage account.

Chilkat VBScript Downloads

VBScript
Dim fso, outFile
Set fso = CreateObject("Scripting.FileSystemObject")
'Create a Unicode (utf-16) output text file.
Set outFile = fso.CreateTextFile("output.txt", True, True)

success = 0

' This requires the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.

set http = CreateObject("Chilkat.Http")

http.OAuth1 = 1
http.OAuthVerifier = ""
http.OAuthConsumerKey = "ETRADE_CONSUMER_KEY"
http.OAuthConsumerSecret = "ETRADE_CONSUMER_SECRET"

' Load the access token previously obtained via the OAuth1 Authorization
set jsonToken = CreateObject("Chilkat.JsonObject")
success = jsonToken.LoadFile("qa_data/tokens/etrade.json")
If (success <> 1) Then
    outFile.WriteLine("Failed to load OAuth1 token")
    WScript.Quit
End If

http.OAuthToken = jsonToken.StringOf("oauth_token")
http.OAuthTokenSecret = jsonToken.StringOf("oauth_token_secret")

sandboxUrl = "https://apisb.etrade.com/v1/accounts/{$accountIdKey}/transactions"
liveUrl = "https://api.etrade.com/v1/accounts/{$accountIdKey}/transactions"

success = http.SetUrlVar("accountIdKey","6_Dpy0rmuQ9cu9IbTfvF2A")

set resp = CreateObject("Chilkat.HttpResponse")
success = http.HttpNoBody("GET",sandboxUrl,resp)
If (success = 0) Then
    outFile.WriteLine(http.LastErrorText)
    WScript.Quit
End If

' Make sure a successful response was received.
If (resp.StatusCode > 200) Then
    outFile.WriteLine(resp.StatusLine)
    outFile.WriteLine(resp.Header)
    outFile.WriteLine(resp.BodyStr)
    WScript.Quit
End If

' Sample XML response:

' Use this online tool to generate parsing code from sample XML: 
' Generate Parsing Code from XML

' <?xml version="1.0" encoding="UTF-8"?>
' <TransactionListResponse>
'    <Transaction>
'       <transactionId>18165100001766</transactionId>
'       <accountId>83564979</accountId>
'       <transactionDate>1528948800000</transactionDate>
'       <postDate>1528948800000</postDate>
'       <amount>-2</amount>
'       <description>ACH WITHDRAWL REFID:109187276;</description>
'       <description2>109187276</description2>
'       <transactionType>Transfer</transactionType>
'       <memo />
'       <imageFlag>false</imageFlag>
'       <instType>BROKERAGE</instType>
'       <brokerage>
'          <product />
'          <quantity>0</quantity>
'          <price>0</price>
'          <settlementCurrency>USD</settlementCurrency>
'          <paymentCurrency>USD</paymentCurrency>
'          <fee>0</fee>
'          <settlementDate>1528948800000</settlementDate>
'       </brokerage>
'       <detailsURI>https://api.etrade.com/v1/accounts/yIFaUoJ81qyAhgxLWRQ42g/transactions/18165100001766</detailsURI>
'    </Transaction>
'    <Transaction>
'       <transactionId>18158100000983</transactionId>
'       <accountId>83564979</accountId>
'       <transactionDate>1528344000000</transactionDate>
'       <postDate>1528344000000</postDate>
'       <amount>-2</amount>
'       <description>ACH WITHDRAWL REFID:98655276;</description>
'       <description2>98655276</description2>
'       <transactionType>Transfer</transactionType>
'       <memo />
'       <imageFlag>false</imageFlag>
'       <instType>BROKERAGE</instType>
'       <brokerage>
'          <product />
'          <quantity>0</quantity>
'          <price>0</price>
'          <settlementCurrency>USD</settlementCurrency>
'          <paymentCurrency>USD</paymentCurrency>
'          <fee>0</fee>
'          <settlementDate>1528344000000</settlementDate>
'       </brokerage>
'       <detailsURI>https://api.etrade.com/v1/accounts/yIFaUoJ81qyAhgxLWRQ42g/transactions/18158100000983</detailsURI>
'    </Transaction>
'    <pageMarkers>eNpTsAlITE91zi%2FNK%2FHMc04syi8tTs2xM7TRxybMpWATkl%2BSmBOUmpxflAKWtTO10ccQg6mDmwEyEE0EqAbE8SvNTUotCk4tLE3NS061M9Ax0DEEYgOIA9BkuRQgmjxTfDKLQUYoQAV8E4uyU4vsDC0MzUwNDYDA0NzMrKamBmIKVJYLphpiKsyTUB7IbH1kwwFa7F0D</pageMarkers>
'    <moreTransactions>false</moreTransactions>
'    <transactionCount>5</transactionCount>
'    <totalCount>5</totalCount>
' </TransactionListResponse>

set xml = CreateObject("Chilkat.Xml")
success = xml.LoadXml(resp.BodyStr)
outFile.WriteLine(xml.GetXml())

i = 0
count_i = xml.NumChildrenHavingTag("Transaction")
Do While i < count_i
    xml.I = i
    transactionId = xml.GetChildContent("Transaction[i]|transactionId")
    accountId = xml.GetChildIntValue("Transaction[i]|accountId")
    transactionDate = xml.GetChildContent("Transaction[i]|transactionDate")
    postDate = xml.GetChildContent("Transaction[i]|postDate")
    amount = xml.GetChildIntValue("Transaction[i]|amount")
    description = xml.GetChildContent("Transaction[i]|description")
    description2 = xml.GetChildIntValue("Transaction[i]|description2")
    transactionType = xml.GetChildContent("Transaction[i]|transactionType")
    imageFlag = xml.GetChildContent("Transaction[i]|imageFlag")
    instType = xml.GetChildContent("Transaction[i]|instType")
    quantity = xml.GetChildIntValue("Transaction[i]|brokerage|quantity")
    price = xml.GetChildIntValue("Transaction[i]|brokerage|price")
    settlementCurrency = xml.GetChildContent("Transaction[i]|brokerage|settlementCurrency")
    paymentCurrency = xml.GetChildContent("Transaction[i]|brokerage|paymentCurrency")
    fee = xml.GetChildIntValue("Transaction[i]|brokerage|fee")
    settlementDate = xml.GetChildContent("Transaction[i]|brokerage|settlementDate")
    detailsURI = xml.GetChildContent("Transaction[i]|detailsURI")
    i = i + 1
Loop
pageMarkers = xml.GetChildContent("pageMarkers")
moreTransactions = xml.GetChildContent("moreTransactions")
transactionCount = xml.GetChildIntValue("transactionCount")
totalCount = xml.GetChildIntValue("totalCount")

outFile.WriteLine("Success.")

outFile.Close