@Test public void testGetTransaction() { Gateway beanstream = new Gateway( "v1", 300200578, "4BaD82D9197b4cc4b70a221911eE9f70", // payments API passcode "D97D3BE1EE964A6193D17A571D9FBC80", // profiles API passcode "4e6Ff318bee64EA391609de89aD4CF5d"); // reporting API passcode CardPaymentRequest paymentRequest = new CardPaymentRequest(); paymentRequest.setAmount(30.00).setOrderNumber(getRandomOrderId("get")); paymentRequest .getCard() .setName("John Doe") .setNumber("5100000010001004") .setExpiryMonth("12") .setExpiryYear("18") .setCvd("123"); try { PaymentResponse response = beanstream.payments().makePayment(paymentRequest); Assert.assertTrue(response.isApproved()); if (response.isApproved()) { Transaction transaction = beanstream.reports().getTransaction(response.id); System.out.println( "Transaction: " + transaction.getAmount() + " approved? " + transaction.getApproved()); } } catch (BeanstreamApiException ex) { Logger.getLogger(this.getClass().getName()).log(Level.SEVERE, "An error occurred", ex); Assert.fail(ex.getMessage()); } }
@Test public void testQueryTransactions() { System.out.println("############################################################3"); System.out.println("############################################################3"); System.out.println("############################################################3"); System.out.println("############################################################3"); Gateway beanstream = new Gateway( "v1", 300200578, "4BaD82D9197b4cc4b70a221911eE9f70", // payments API passcode "D97D3BE1EE964A6193D17A571D9FBC80", // profiles API passcode "4e6Ff318bee64EA391609de89aD4CF5d"); // reporting API passcode String order = getRandomOrderId("q"); CardPaymentRequest paymentRequest = new CardPaymentRequest(); paymentRequest.setAmount(20.50).setOrderNumber(order); paymentRequest .getCard() .setName("Bob Doe") .setNumber("5100000010001004") .setExpiryMonth("12") .setExpiryYear("18") .setCvd("123"); try { PaymentResponse response = beanstream.payments().makePayment(paymentRequest); if (response.isApproved()) { Calendar cal = Calendar.getInstance(); cal.add(Calendar.DAY_OF_MONTH, -1); Date startDate = cal.getTime(); // yesterday cal = Calendar.getInstance(); cal.add(Calendar.DAY_OF_MONTH, 1); Date endDate = cal.getTime(); // tomorrow Criteria[] searchFilter = new Criteria[] {new Criteria(QueryFields.OrderNumber, Operators.Equals, order)}; List<TransactionRecord> query = beanstream.reports().query(startDate, endDate, 1, 2, searchFilter); Assert.assertNotNull(query); Assert.assertFalse(query.isEmpty()); System.out.println("Queried " + query.size() + " items."); // print out the first 10 records int i = 0; for (TransactionRecord tr : query) { System.out.println( tr.getTransactionId() + " from " + tr.getCardOwner() + " -> $" + tr.getAmount()); i++; if (i > 10) { break; } } } } catch (BeanstreamApiException ex) { Logger.getLogger(this.getClass().getName()) .log(Level.SEVERE, "An error occurred: " + ex.toString(), ex); System.out.println("Error Details: " + ex.getCode() + ", " + ex.getCategory()); Assert.fail(ex.getMessage()); } }