Sample code for 30+ languages & platforms
PHP ActiveX

ETrade v1 List Transactions

See more HTTP Misc Examples

Get information about the transactions in an ETrade brokerage account.

Chilkat PHP ActiveX Downloads

PHP ActiveX
<?php

$success = 0;

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

$http = new COM("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 3-Legged Authorization examples Step1 and Step2.
$json = new COM("Chilkat.JsonObject");
$success = $json->LoadFile('qa_data/tokens/etrade.json');
if ($success != 1) {
    print 'Failed to load OAuth1 token' . "\n";
    exit;
}

$http->OAuthToken = $json->stringOf('oauth_token');
$http->OAuthTokenSecret = $json->stringOf('oauth_token_secret');

// See the ETrade v1 API documentation HERE.

$http->SetUrlVar('accountIdKey','vsnhtF7d9jXxBy6HyaAC4vQ');
$respStr = $http->quickGetStr('https://apisb.etrade.com/v1/accounts/{$accountIdKey}/transactions');
if ($http->LastMethodSuccess != 1) {
    print $http->LastErrorText . "\n";
    exit;
}

// A 200 status code indicates success.
$statusCode = $http->LastStatus;
print 'statusCode = ' . $statusCode . "\n";

// Use the following online tool to generate parsing code from sample XML: 
// Generate Parsing Code from XML

// A sample XML response is shown below...

$xml = new COM("Chilkat.Xml");
$xml->LoadXml($respStr);

$i = 0;
$count_i = $xml->NumChildrenHavingTag('Transaction');
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;
}

$pageMarkers = $xml->getChildContent('pageMarkers');
$moreTransactions = $xml->getChildContent('moreTransactions');
$transactionCount = $xml->GetChildIntValue('transactionCount');
$totalCount = $xml->GetChildIntValue('totalCount');

// <?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

?>