I want getTransactionDetail or GetTransactionList.
sample:
public static void GetAuthroizeMessage(String apiLogID, String transactionKey)
{
Merchant merchant = Merchant.createMerchant(Environment.SANDBOX, apiLogID, transactionKey);
Transaction transaction = merchant.createReportingTransaction(TransactionType.GET_TRANSACTION_DETAILS);
ReportingDetails reportingDetails = ReportingDetails.createReportingDetails();
reportingDetails.setBatchIncludeStatistics(true);
transaction.setReportingDetails(reportingDetails);
Result<Transaction> result = (Result<Transaction>) merchant.postTransaction(transaction);
System.out.println("Result Code:" + result.getResultCode() != null ? result.getResultCode() :" No result code");
if(result.isOk()){
for (TransactionDetails transactionDetail : result.getReportingDetails().getTransactionDetailList())
{
System.out.println("AccountNumber: "+transactionDetail.getAccountNumber());
System.out.println("AuthCode: "+transactionDetail.getAuthCode());
System.out.println("Firstname: "+transactionDetail.getFirstName());
System.out.println("LastName : "+transactionDetail.getLastName());
System.out.println("InvoiceNumber: "+transactionDetail.getInvoiceNumber());
System.out.println("transID: "+transactionDetail.getTransId());
System.out.println("BatchID: "+transactionDetail.getBatch().getBatchId());
System.out.println(" AuthAmount: "+transactionDetail.getAuthAmount().doubleValue());
System.out.println("Customer Email: "+transactionDetail.getCustomer().getEmail());
System.out.println("Customer FaxNumber: "+transactionDetail.getCustomer().getFaxNumber());
System.out.println("Customer BillTo: "+ transactionDetail.getCustomer().getBillTo());
System.out.println("SettlementState: "+transactionDetail.getBatch().getSettlementState());
}
}
}
I want to this code getTransactionDetail. or GetTransactionList.
change
Transaction transaction = merchant.createReportingTransaction(TransactionType.GET_TRANSACTION_DETAILS);
but fail.
any idea! or give me some advice! thx!
Solved! Go to Solution.
02-21-2012 09:59 PM
hi RaynorC1emen7
Thanks you for you help!
So I solve it.
this is my think and success
The first : get BatchId from use GET_SETTLED_BATCH_LIST call.
The second: getTransactionList use GET_TRANSACTION_LIST
The third : getTransactionDetail use GET_TRANSACTION_DETAILS
ok this is my java Code. if you want ,you can debug it.
public class Client {
public static void main(String[] args) {
String login = " ";
String transactionKey = " ";
getSettledBatchList(login, transactionKey);
}
public static void getSettledBatchList(String login,
String transactionKey) {
Merchant merchant = Merchant.createMerchant(Environment.SANDBOX,
login, transactionKey);
// batch list request
net.authorize.reporting.Transaction transaction = merchant
.createReportingTransaction(TransactionType.GET_SETTLED_BATCH_LIST);
ReportingDetails reportingDetails = ReportingDetails
.createReportingDetails();
Calendar firstSettlementCal = Calendar.getInstance();
firstSettlementCal.add(Calendar.DAY_OF_YEAR, -2);
reportingDetails.setBatchFirstSettlementDate(firstSettlementCal
.getTime());
reportingDetails.setBatchLastSettlementDate(Calendar.getInstance()
.getTime());
reportingDetails.setBatchIncludeStatistics(true);
transaction.setReportingDetails(reportingDetails);
Result<Transaction> result = (Result<Transaction>) merchant
.postTransaction(transaction);
for (BatchDetails batchDetail : result.getReportingDetails()
.getBatchDetailsList()) {
getTransactionList(batchDetail.getBatchId(), login,transactionKey)
}
}
public static void getTransactionList(String reportingBatchId,
String login, String transactionKey) {
System.out.println("GetTransactionList Start....");
Merchant merchant = Merchant.createMerchant(Environment.SANDBOX,
login, transactionKey);
net.authorize.reporting.Transaction transaction = merchant
.createReportingTransaction(TransactionType.GET_TRANSACTION_LIST);
ReportingDetails reportingDetails = ReportingDetails
.createReportingDetails();
reportingDetails.setBatchId(reportingBatchId);
transaction.setReportingDetails(reportingDetails);
Result<Transaction> result = (Result<Transaction>) merchant
.postTransaction(transaction);
for (TransactionDetails transactionDetail : result
.getReportingDetails().getTransactionDetailList()) {
String reportingTransId = transactionDetail.getTransId();
String type = transactionDetail.getAccountType().getValue();
getTransactionDetailsRequestLive(reportingTransId, login,
transactionKey);
}
System.out.println("GetTransctionList End....");
}
public static void getTransactionDetailsRequestLive(
String reportingTransId, String login, String transactionKey) {
System.out.println("GetTransactionDetails Start....");
Merchant merchant = Merchant.createMerchant(Environment.SANDBOX,
login, transactionKey);
net.authorize.reporting.Transaction transaction = merchant
.createReportingTransaction(TransactionType.GET_TRANSACTION_DETAILS);
ReportingDetails reportingDetails = ReportingDetails
.createReportingDetails();
reportingDetails.setTransactionId(reportingTransId);
transaction.setReportingDetails(reportingDetails);
Result<Transaction> result = (Result<Transaction>) merchant
.postTransaction(transaction);
for (TransactionDetails transactionDetail : result
.getReportingDetails().getTransactionDetailList())
{
if (transactionDetail.getOrder().getOrderItems().size() > 0)
{
for (OrderItem order : transactionDetail.getOrder()
.getOrderItems()) {
}
}
}
System.out.println("GetTransactionDetails End....");
}
}
02-23-2012 11:27 PM
Don't use java anymore but the documentation http://developer.authorize.net/api/transaction_details/
said GetTransactionDetail need a TransactionID and the GetTransactionList need a batchID.
So I don't think is just changing the TransactionType.GET_TRANSACTION_DETAILS.
And when you said fail, what error are you getting? compile error? authorize.net error?
02-22-2012 04:49 AM
hi RaynorC1emen7
Thanks you for you help!
So I solve it.
this is my think and success
The first : get BatchId from use GET_SETTLED_BATCH_LIST call.
The second: getTransactionList use GET_TRANSACTION_LIST
The third : getTransactionDetail use GET_TRANSACTION_DETAILS
ok this is my java Code. if you want ,you can debug it.
public class Client {
public static void main(String[] args) {
String login = " ";
String transactionKey = " ";
getSettledBatchList(login, transactionKey);
}
public static void getSettledBatchList(String login,
String transactionKey) {
Merchant merchant = Merchant.createMerchant(Environment.SANDBOX,
login, transactionKey);
// batch list request
net.authorize.reporting.Transaction transaction = merchant
.createReportingTransaction(TransactionType.GET_SETTLED_BATCH_LIST);
ReportingDetails reportingDetails = ReportingDetails
.createReportingDetails();
Calendar firstSettlementCal = Calendar.getInstance();
firstSettlementCal.add(Calendar.DAY_OF_YEAR, -2);
reportingDetails.setBatchFirstSettlementDate(firstSettlementCal
.getTime());
reportingDetails.setBatchLastSettlementDate(Calendar.getInstance()
.getTime());
reportingDetails.setBatchIncludeStatistics(true);
transaction.setReportingDetails(reportingDetails);
Result<Transaction> result = (Result<Transaction>) merchant
.postTransaction(transaction);
for (BatchDetails batchDetail : result.getReportingDetails()
.getBatchDetailsList()) {
getTransactionList(batchDetail.getBatchId(), login,transactionKey)
}
}
public static void getTransactionList(String reportingBatchId,
String login, String transactionKey) {
System.out.println("GetTransactionList Start....");
Merchant merchant = Merchant.createMerchant(Environment.SANDBOX,
login, transactionKey);
net.authorize.reporting.Transaction transaction = merchant
.createReportingTransaction(TransactionType.GET_TRANSACTION_LIST);
ReportingDetails reportingDetails = ReportingDetails
.createReportingDetails();
reportingDetails.setBatchId(reportingBatchId);
transaction.setReportingDetails(reportingDetails);
Result<Transaction> result = (Result<Transaction>) merchant
.postTransaction(transaction);
for (TransactionDetails transactionDetail : result
.getReportingDetails().getTransactionDetailList()) {
String reportingTransId = transactionDetail.getTransId();
String type = transactionDetail.getAccountType().getValue();
getTransactionDetailsRequestLive(reportingTransId, login,
transactionKey);
}
System.out.println("GetTransctionList End....");
}
public static void getTransactionDetailsRequestLive(
String reportingTransId, String login, String transactionKey) {
System.out.println("GetTransactionDetails Start....");
Merchant merchant = Merchant.createMerchant(Environment.SANDBOX,
login, transactionKey);
net.authorize.reporting.Transaction transaction = merchant
.createReportingTransaction(TransactionType.GET_TRANSACTION_DETAILS);
ReportingDetails reportingDetails = ReportingDetails
.createReportingDetails();
reportingDetails.setTransactionId(reportingTransId);
transaction.setReportingDetails(reportingDetails);
Result<Transaction> result = (Result<Transaction>) merchant
.postTransaction(transaction);
for (TransactionDetails transactionDetail : result
.getReportingDetails().getTransactionDetailList())
{
if (transactionDetail.getOrder().getOrderItems().size() > 0)
{
for (OrderItem order : transactionDetail.getOrder()
.getOrderItems()) {
}
}
}
System.out.println("GetTransactionDetails End....");
}
}
02-23-2012 11:27 PM