From 1714fc4b143f829e3acf5ee3b3a703f23bffb732 Mon Sep 17 00:00:00 2001 From: zhaque Date: Wed, 25 Nov 2015 23:28:17 +0530 Subject: [PATCH] Added CreateAnApplePayTransaction sample code and modified SampleCode --- pom.xml | 2 +- .../CreateAnApplePayTransaction.java | 65 +++++++++++++++++++ .../java/net/authorize/sample/SampleCode.java | 7 +- 3 files changed, 72 insertions(+), 2 deletions(-) create mode 100644 src/main/java/net/authorize/sample/ApplePayTransactions/CreateAnApplePayTransaction.java diff --git a/pom.xml b/pom.xml index 0ffcef66..dc4c0c44 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ net.authorize anet-java-sdk - 1.8.4 + 1.8.6 diff --git a/src/main/java/net/authorize/sample/ApplePayTransactions/CreateAnApplePayTransaction.java b/src/main/java/net/authorize/sample/ApplePayTransactions/CreateAnApplePayTransaction.java new file mode 100644 index 00000000..959b2e83 --- /dev/null +++ b/src/main/java/net/authorize/sample/ApplePayTransactions/CreateAnApplePayTransaction.java @@ -0,0 +1,65 @@ +package net.authorize.sample.ApplePayTransactions; + +import java.math.BigDecimal; +import net.authorize.Environment; +import net.authorize.TransactionType; +import net.authorize.api.contract.v1.*; +import net.authorize.api.controller.CreateTransactionController; +import net.authorize.api.controller.base.ApiOperationBase; + +public class CreateAnApplePayTransaction +{ + public static void run(String apiLoginId, String transactionKey) + { + ApiOperationBase.setEnvironment(Environment.SANDBOX); + + // Giving the merchant authentication information + MerchantAuthenticationType merchantAuthenticationType = new MerchantAuthenticationType() ; + merchantAuthenticationType.setName(apiLoginId); + merchantAuthenticationType.setTransactionKey(transactionKey); + ApiOperationBase.setMerchantAuthentication(merchantAuthenticationType); + // Setting the payment + OpaqueDataType op = new OpaqueDataType(); + op.setDataDescriptor("COMMON.APPLE.INAPP.PAYMENT"); + op.setDataValue("eyJkYXRhIjoiQkRQTldTdE1tR2V3UVVXR2c0bzdFXC9qKzFjcTFUNzhxeVU4NGI2N2l0amNZSTh3UFlBT2hzaGpoWlBycWRVcjRYd1BNYmo0emNHTWR5KysxSDJWa1BPWStCT01GMjV1YjE5Y1g0bkN2a1hVVU9UakRsbEIxVGdTcjhKSFp4Z3A5ckNnc1NVZ2JCZ0tmNjBYS3V0WGY2YWpcL284WkliS25yS1E4U2gwb3VMQUtsb1VNbit2UHU0K0E3V0tycXJhdXo5SnZPUXA2dmhJcStIS2pVY1VOQ0lUUHlGaG1PRXRxK0grdzB2UmExQ0U2V2hGQk5uQ0hxenpXS2NrQlwvMG5xTFpSVFliRjBwK3Z5QmlWYVdIZWdoRVJmSHhSdGJ6cGVjelJQUHVGc2ZwSFZzNDhvUExDXC9rXC8xTU5kNDdrelwvcEhEY1JcL0R5NmFVTStsTmZvaWx5XC9RSk4rdFMzbTBIZk90SVNBUHFPbVhlbXZyNnhKQ2pDWmxDdXcwQzltWHpcL29iSHBvZnVJRVM4cjljcUdHc1VBUERwdzdnNjQybTRQendLRitIQnVZVW5lV0RCTlNEMnU2amJBRzMiLCJ2ZXJzaW9uIjoiRUNfdjEiLCJoZWFkZXIiOnsiYXBwbGljYXRpb25EYXRhIjoiOTRlZTA1OTMzNWU1ODdlNTAxY2M0YmY5MDYxM2UwODE0ZjAwYTdiMDhiYzdjNjQ4ZmQ4NjVhMmFmNmEyMmNjMiIsInRyYW5zYWN0aW9uSWQiOiJjMWNhZjVhZTcyZjAwMzlhODJiYWQ5MmI4MjgzNjM3MzRmODViZjJmOWNhZGYxOTNkMWJhZDlkZGNiNjBhNzk1IiwiZXBoZW1lcmFsUHVibGljS2V5IjoiTUlJQlN6Q0NBUU1HQnlxR1NNNDlBZ0V3Z2ZjQ0FRRXdMQVlIS29aSXpqMEJBUUloQVBcL1wvXC9cLzhBQUFBQkFBQUFBQUFBQUFBQUFBQUFcL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL01Gc0VJUFwvXC9cL1wvOEFBQUFCQUFBQUFBQUFBQUFBQUFBQVwvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cLzhCQ0JheGpYWXFqcVQ1N1BydlZWMm1JYThaUjBHc014VHNQWTd6ancrSjlKZ1N3TVZBTVNkTmdpRzV3U1RhbVo0NFJPZEpyZUJuMzZRQkVFRWF4ZlI4dUVzUWtmNHZPYmxZNlJBOG5jRGZZRXQ2ek9nOUtFNVJkaVl3cFpQNDBMaVwvaHBcL200N242MHA4RDU0V0s4NHpWMnN4WHM3THRrQm9ONzlSOVFJaEFQXC9cL1wvXC84QUFBQUFcL1wvXC9cL1wvXC9cL1wvXC9cLys4NXZxdHB4ZWVoUE81eXNMOFl5VlJBZ0VCQTBJQUJHbStnc2wwUFpGVFwva0RkVVNreHd5Zm84SnB3VFFRekJtOWxKSm5tVGw0REdVdkFENEdzZUdqXC9wc2hCWjBLM1RldXFEdFwvdERMYkUrOFwvbTB5Q21veHc9IiwicHVibGljS2V5SGFzaCI6IlwvYmI5Q05DMzZ1QmhlSEZQYm1vaEI3T28xT3NYMkora0pxdjQ4ek9WVmlRPSJ9LCJzaWduYXR1cmUiOiJNSUlEUWdZSktvWklodmNOQVFjQ29JSURNekNDQXk4Q0FRRXhDekFKQmdVckRnTUNHZ1VBTUFzR0NTcUdTSWIzRFFFSEFhQ0NBaXN3Z2dJbk1JSUJsS0FEQWdFQ0FoQmNsK1BmMytVNHBrMTNuVkQ5bndRUU1Ba0dCU3NPQXdJZEJRQXdKekVsTUNNR0ExVUVBeDRjQUdNQWFBQnRBR0VBYVFCQUFIWUFhUUJ6QUdFQUxnQmpBRzhBYlRBZUZ3MHhOREF4TURFd05qQXdNREJhRncweU5EQXhNREV3TmpBd01EQmFNQ2N4SlRBakJnTlZCQU1lSEFCakFHZ0FiUUJoQUdrQVFBQjJBR2tBY3dCaEFDNEFZd0J2QUcwd2daOHdEUVlKS29aSWh2Y05BUUVCQlFBRGdZMEFNSUdKQW9HQkFOQzgra2d0Z212V0YxT3pqZ0ROcmpURUJSdW9cLzVNS3ZsTTE0NnBBZjdHeDQxYmxFOXc0ZklYSkFEN0ZmTzdRS2pJWFlOdDM5ckx5eTd4RHdiXC81SWtaTTYwVFoyaUkxcGo1NVVjOGZkNGZ6T3BrM2Z0WmFRR1hOTFlwdEcxZDlWN0lTODJPdXA5TU1vMUJQVnJYVFBITmNzTTk5RVBVblBxZGJlR2M4N20wckFnTUJBQUdqWERCYU1GZ0dBMVVkQVFSUk1FK0FFSFpXUHJXdEpkN1laNDMxaENnN1lGU2hLVEFuTVNVd0l3WURWUVFESGh3QVl3Qm9BRzBBWVFCcEFFQUFkZ0JwQUhNQVlRQXVBR01BYndCdGdoQmNsK1BmMytVNHBrMTNuVkQ5bndRUU1Ba0dCU3NPQXdJZEJRQURnWUVBYlVLWUNrdUlLUzlRUTJtRmNNWVJFSW0ybCtYZzhcL0pYditHQlZRSmtPS29zY1k0aU5ERkFcL2JRbG9nZjlMTFU4NFRId05SbnN2VjNQcnY3UlRZODFncTBkdEM4elljQWFBa0NISUkzeXFNbko0QU91NkVPVzlrSmsyMzJnU0U3V2xDdEhiZkxTS2Z1U2dRWDhLWFFZdVpMazJScjYzTjhBcFhzWHdCTDNjSjB4Z2VBd2dkMENBUUV3T3pBbk1TVXdJd1lEVlFRREhod0FZd0JvQUcwQVlRQnBBRUFBZGdCcEFITUFZUUF1QUdNQWJ3QnRBaEJjbCtQZjMrVTRwazEzblZEOW53UVFNQWtHQlNzT0F3SWFCUUF3RFFZSktvWklodmNOQVFFQkJRQUVnWUJhSzNFbE9zdGJIOFdvb3NlREFCZitKZ1wvMTI5SmNJYXdtN2M2VnhuN1phc05iQXEzdEF0OFB0eSt1UUNnc3NYcVprTEE3a3oyR3pNb2xOdHY5d1ltdTlVandhcjFQSFlTK0JcL29Hbm96NTkxd2phZ1hXUnowbk1vNXkzTzFLelgwZDhDUkhBVmE4OFNyVjFhNUpJaVJldjNvU3RJcXd2NXh1WmxkYWc2VHI4dz09In0="); + PaymentType paymentOne = new PaymentType(); + paymentOne.setOpaqueData(op); + // Setting the transaction + TransactionRequestType transactionRequest = new TransactionRequestType(); + transactionRequest.setAmount(new BigDecimal("131")); + transactionRequest.setTransactionType(TransactionTypeEnum.AUTH_CAPTURE_TRANSACTION.value()); + transactionRequest.setPayment(paymentOne); + // Making the api request + CreateTransactionRequest apiRequest = new CreateTransactionRequest(); + apiRequest.setTransactionRequest(transactionRequest); + // Creating the controller + CreateTransactionController controller = new CreateTransactionController(apiRequest); + controller.execute(); + // Getting the response + CreateTransactionResponse response = controller.getApiResponse(); + if(response!=null) + { + if (response.getMessages().getResultCode() == MessageTypeEnum.OK) + { + if (response.getTransactionResponse() != null) + { + TransactionResponse result = response.getTransactionResponse(); + System.out.println("Successful: Create an ApplePay Transaction"); + System.out.println("Response Code : " + result.getResponseCode()); + System.out.println("Transaction ID : " + result.getTransId()); + System.out.println("Auth code : " + result.getAuthCode()); + } + } + else + { + System.out.println("Failed: Create ApplePay Transaction"); + if(!response.getMessages().getMessage().isEmpty()) + System.out.println("Error: " + response.getMessages().getMessage().get(0).getCode() + " " + response.getMessages().getMessage().get(0).getText()); + + if (response.getTransactionResponse() != null) + if(!response.getTransactionResponse().getErrors().getError().isEmpty()) + System.out.println("Transaction Error : " + response.getTransactionResponse().getErrors().getError().get(0).getErrorCode() + " " + response.getTransactionResponse().getErrors().getError().get(0).getErrorText()); + } + } + } +} diff --git a/src/main/java/net/authorize/sample/SampleCode.java b/src/main/java/net/authorize/sample/SampleCode.java index b63a06d2..f5b3960e 100644 --- a/src/main/java/net/authorize/sample/SampleCode.java +++ b/src/main/java/net/authorize/sample/SampleCode.java @@ -3,6 +3,7 @@ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; +import net.authorize.sample.ApplePayTransactions.CreateAnApplePayTransaction; import net.authorize.sample.VisaCheckout.*; import net.authorize.sample.PaymentTransactions.*; @@ -11,7 +12,7 @@ import net.authorize.sample.RecurringBilling.*; import net.authorize.sample.TransactionReporting.*; import net.authorize.sample.CustomerProfiles.*; - +import net.authorize.sample.ApplePayTransactions.*; /** * Created by anetdeveloper on 8/5/15. */ @@ -85,6 +86,7 @@ private static void ShowMethods() System.out.println(" DebitBankAccount"); System.out.println(" CreditBankAccount"); System.out.println(" ChargeTokenizedCreditCard"); + System.out.println(" CreateAnApplePayTransaction"); System.out.println(" ChargeCustomerProfile"); System.out.println(" CreateSubscription"); System.out.println(" GetSubscription"); @@ -170,6 +172,9 @@ private static void RunMethod(String methodName) case "ChargeTokenizedCreditCard": ChargeTokenizedCreditCard.run(apiLoginId, transactionKey); break; + case "CreateAnApplePayTransaction": + CreateAnApplePayTransaction.run(apiLoginId, transactionKey); + break; case "ChargeCustomerProfile": ChargeCustomerProfile.run(apiLoginId, transactionKey); break;