Skip to content

Commit cc490f6

Browse files
author
atseytli
committed
added sample code for apple pay and paypal
1 parent deff8ac commit cc490f6

File tree

1 file changed

+54
-14
lines changed

1 file changed

+54
-14
lines changed

src/test/java/net/authorize/api/controller/sampletest/CreateTransactionTest.java

Lines changed: 54 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717
import net.authorize.api.contract.v1.CustomerDataType;
1818
import net.authorize.api.contract.v1.MessageTypeEnum;
1919
import net.authorize.api.contract.v1.MessagesType;
20+
import net.authorize.api.contract.v1.OpaqueDataType;
21+
import net.authorize.api.contract.v1.PayPalType;
2022
import net.authorize.api.contract.v1.PaymentType;
2123
import net.authorize.api.contract.v1.TransactionRequestType;
2224
import net.authorize.api.controller.CreateCustomerProfileFromTransactionConroller;
@@ -48,34 +50,72 @@ public void tearDown() throws Exception {
4850
}
4951

5052
@Test
51-
public void createTransactionSample()
53+
public void createTransactionWithCreditCard()
5254
{
53-
//Common code to set for all requests
54-
ApiOperationBase.setEnvironment(environment);
55-
ApiOperationBase.setMerchantAuthentication(cnpMerchantAuthenticationType);
56-
5755
CreditCardType creditCard = new CreditCardType();
5856
creditCard.setCardNumber("4111111111111111");
5957
creditCard.setExpirationDate("0616");
6058

6159
PaymentType paymentType = new PaymentType();
6260
paymentType.setCreditCard(creditCard);
6361

62+
CreateTransactionResponse response = createAndValidate("authOnlyTransaction",paymentType);
63+
64+
Assert.assertNotNull(response);
65+
Assert.assertEquals(MessageTypeEnum.OK, response.getMessages().getResultCode());
66+
Assert.assertFalse(response.getTransactionResponse().getTransId().isEmpty());
67+
}
68+
69+
@Test
70+
public void createTransactionWithApplePay()
71+
{
72+
OpaqueDataType opaqueData = new OpaqueDataType();
73+
opaqueData.setDataDescriptor("COMMON.APPLE.INAPP.PAYMENT");
74+
opaqueData.setDataValue("eyJkYXRhIjoiQkRQTldTdE1tR2V3UVVXR2c0bzdFXC9qKzFjcTFUNzhxeVU4NGI2N2l0amNZSTh3UFlBT2hzaGpoWlBycWRVcjRYd1BNYmo0emNHTWR5KysxSDJWa1BPWStCT01GMjV1YjE5Y1g0bkN2a1hVVU9UakRsbEIxVGdTcjhKSFp4Z3A5ckNnc1NVZ2JCZ0tmNjBYS3V0WGY2YWpcL284WkliS25yS1E4U2gwb3VMQUtsb1VNbit2UHU0K0E3V0tycXJhdXo5SnZPUXA2dmhJcStIS2pVY1VOQ0lUUHlGaG1PRXRxK0grdzB2UmExQ0U2V2hGQk5uQ0hxenpXS2NrQlwvMG5xTFpSVFliRjBwK3Z5QmlWYVdIZWdoRVJmSHhSdGJ6cGVjelJQUHVGc2ZwSFZzNDhvUExDXC9rXC8xTU5kNDdrelwvcEhEY1JcL0R5NmFVTStsTmZvaWx5XC9RSk4rdFMzbTBIZk90SVNBUHFPbVhlbXZyNnhKQ2pDWmxDdXcwQzltWHpcL29iSHBvZnVJRVM4cjljcUdHc1VBUERwdzdnNjQybTRQendLRitIQnVZVW5lV0RCTlNEMnU2amJBRzMiLCJ2ZXJzaW9uIjoiRUNfdjEiLCJoZWFkZXIiOnsiYXBwbGljYXRpb25EYXRhIjoiOTRlZTA1OTMzNWU1ODdlNTAxY2M0YmY5MDYxM2UwODE0ZjAwYTdiMDhiYzdjNjQ4ZmQ4NjVhMmFmNmEyMmNjMiIsInRyYW5zYWN0aW9uSWQiOiJjMWNhZjVhZTcyZjAwMzlhODJiYWQ5MmI4MjgzNjM3MzRmODViZjJmOWNhZGYxOTNkMWJhZDlkZGNiNjBhNzk1IiwiZXBoZW1lcmFsUHVibGljS2V5IjoiTUlJQlN6Q0NBUU1HQnlxR1NNNDlBZ0V3Z2ZjQ0FRRXdMQVlIS29aSXpqMEJBUUloQVBcL1wvXC9cLzhBQUFBQkFBQUFBQUFBQUFBQUFBQUFcL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL01Gc0VJUFwvXC9cL1wvOEFBQUFCQUFBQUFBQUFBQUFBQUFBQVwvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cLzhCQ0JheGpYWXFqcVQ1N1BydlZWMm1JYThaUjBHc014VHNQWTd6ancrSjlKZ1N3TVZBTVNkTmdpRzV3U1RhbVo0NFJPZEpyZUJuMzZRQkVFRWF4ZlI4dUVzUWtmNHZPYmxZNlJBOG5jRGZZRXQ2ek9nOUtFNVJkaVl3cFpQNDBMaVwvaHBcL200N242MHA4RDU0V0s4NHpWMnN4WHM3THRrQm9ONzlSOVFJaEFQXC9cL1wvXC84QUFBQUFcL1wvXC9cL1wvXC9cL1wvXC9cLys4NXZxdHB4ZWVoUE81eXNMOFl5VlJBZ0VCQTBJQUJHbStnc2wwUFpGVFwva0RkVVNreHd5Zm84SnB3VFFRekJtOWxKSm5tVGw0REdVdkFENEdzZUdqXC9wc2hCWjBLM1RldXFEdFwvdERMYkUrOFwvbTB5Q21veHc9IiwicHVibGljS2V5SGFzaCI6IlwvYmI5Q05DMzZ1QmhlSEZQYm1vaEI3T28xT3NYMkora0pxdjQ4ek9WVmlRPSJ9LCJzaWduYXR1cmUiOiJNSUlEUWdZSktvWklodmNOQVFjQ29JSURNekNDQXk4Q0FRRXhDekFKQmdVckRnTUNHZ1VBTUFzR0NTcUdTSWIzRFFFSEFhQ0NBaXN3Z2dJbk1JSUJsS0FEQWdFQ0FoQmNsK1BmMytVNHBrMTNuVkQ5bndRUU1Ba0dCU3NPQXdJZEJRQXdKekVsTUNNR0ExVUVBeDRjQUdNQWFBQnRBR0VBYVFCQUFIWUFhUUJ6QUdFQUxnQmpBRzhBYlRBZUZ3MHhOREF4TURFd05qQXdNREJhRncweU5EQXhNREV3TmpBd01EQmFNQ2N4SlRBakJnTlZCQU1lSEFCakFHZ0FiUUJoQUdrQVFBQjJBR2tBY3dCaEFDNEFZd0J2QUcwd2daOHdEUVlKS29aSWh2Y05BUUVCQlFBRGdZMEFNSUdKQW9HQkFOQzgra2d0Z212V0YxT3pqZ0ROcmpURUJSdW9cLzVNS3ZsTTE0NnBBZjdHeDQxYmxFOXc0ZklYSkFEN0ZmTzdRS2pJWFlOdDM5ckx5eTd4RHdiXC81SWtaTTYwVFoyaUkxcGo1NVVjOGZkNGZ6T3BrM2Z0WmFRR1hOTFlwdEcxZDlWN0lTODJPdXA5TU1vMUJQVnJYVFBITmNzTTk5RVBVblBxZGJlR2M4N20wckFnTUJBQUdqWERCYU1GZ0dBMVVkQVFSUk1FK0FFSFpXUHJXdEpkN1laNDMxaENnN1lGU2hLVEFuTVNVd0l3WURWUVFESGh3QVl3Qm9BRzBBWVFCcEFFQUFkZ0JwQUhNQVlRQXVBR01BYndCdGdoQmNsK1BmMytVNHBrMTNuVkQ5bndRUU1Ba0dCU3NPQXdJZEJRQURnWUVBYlVLWUNrdUlLUzlRUTJtRmNNWVJFSW0ybCtYZzhcL0pYditHQlZRSmtPS29zY1k0aU5ERkFcL2JRbG9nZjlMTFU4NFRId05SbnN2VjNQcnY3UlRZODFncTBkdEM4elljQWFBa0NISUkzeXFNbko0QU91NkVPVzlrSmsyMzJnU0U3V2xDdEhiZkxTS2Z1U2dRWDhLWFFZdVpMazJScjYzTjhBcFhzWHdCTDNjSjB4Z2VBd2dkMENBUUV3T3pBbk1TVXdJd1lEVlFRREhod0FZd0JvQUcwQVlRQnBBRUFBZGdCcEFITUFZUUF1QUdNQWJ3QnRBaEJjbCtQZjMrVTRwazEzblZEOW53UVFNQWtHQlNzT0F3SWFCUUF3RFFZSktvWklodmNOQVFFQkJRQUVnWUJhSzNFbE9zdGJIOFdvb3NlREFCZitKZ1wvMTI5SmNJYXdtN2M2VnhuN1phc05iQXEzdEF0OFB0eSt1UUNnc3NYcVprTEE3a3oyR3pNb2xOdHY5d1ltdTlVandhcjFQSFlTK0JcL29Hbm96NTkxd2phZ1hXUnowbk1vNXkzTzFLelgwZDhDUkhBVmE4OFNyVjFhNUpJaVJldjNvU3RJcXd2NXh1WmxkYWc2VHI4dz09In0=");
75+
76+
PaymentType paymentType = new PaymentType();
77+
paymentType.setOpaqueData(opaqueData);
78+
79+
CreateTransactionResponse response = createAndValidate("authCaptureTransaction", paymentType);
80+
Assert.assertNotNull(response);
81+
Assert.assertFalse(response.getTransactionResponse().getTransHash().isEmpty());
82+
}
83+
84+
@Test
85+
public void createTransactionWithPayPal()
86+
{
87+
PayPalType payPalData = new PayPalType();
88+
payPalData.setPaypalLc("IT");
89+
payPalData.setPaypalPayflowcolor("FFFF00");
90+
91+
PaymentType paymentType = new PaymentType();
92+
paymentType.setPayPal(payPalData);
93+
94+
CreateTransactionResponse response = createAndValidate("authOnlyTransaction", paymentType);
95+
Assert.assertNotNull(response);
96+
Assert.assertFalse(response.getTransactionResponse().getTransId().isEmpty());
97+
Assert.assertFalse(response.getTransactionResponse().getTransHash().isEmpty());
98+
Assert.assertNotNull(response.getTransactionResponse().getSecureAcceptance());
99+
Assert.assertFalse(response.getTransactionResponse().getSecureAcceptance().getSecureAcceptanceUrl().isEmpty());
100+
}
101+
102+
private CreateTransactionResponse createAndValidate(String transactionType, PaymentType paymentType)
103+
{
104+
//Common code to set for all requests
105+
ApiOperationBase.setEnvironment(environment);
106+
ApiOperationBase.setMerchantAuthentication(cnpMerchantAuthenticationType);
107+
64108
TransactionRequestType requestInternal = new TransactionRequestType();
65-
requestInternal.setTransactionType("authOnlyTransaction");
109+
requestInternal.setTransactionType(transactionType);
66110
requestInternal.setPayment(paymentType);
67111
requestInternal.setAmount(new BigDecimal(System.currentTimeMillis() % 100));
68-
112+
69113
CreateTransactionRequest request = new CreateTransactionRequest();
70114
request.setTransactionRequest(requestInternal);
71-
115+
72116
CreateTransactionController controller = new CreateTransactionController(request);
73117
controller.execute();
74-
75-
CreateTransactionResponse response = controller.getApiResponse();
76-
77-
Assert.assertNotNull(response);
78-
Assert.assertEquals(MessageTypeEnum.OK, response.getMessages().getResultCode());
79-
Assert.assertFalse(response.getTransactionResponse().getTransId().isEmpty());
118+
119+
return controller.getApiResponse();
80120
}
81121
}

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy