Skip to content

Commit d0a2173

Browse files
OctopusDeploy release: 14.2.16
1 parent b0e882d commit d0a2173

File tree

4 files changed

+57
-2
lines changed

4 files changed

+57
-2
lines changed

CHANGELOG.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,18 @@
11
# Changelog
2-
## Latest Version - V14.2.15 (04/17/2025)
2+
## Latest Version - V14.2.16 (04/22/2025)
3+
### Bug Fixes
4+
- [NTS] - Added code 70/70/79 scenerio for retransmitBatchClose transaction with Message Code 16 (Issue -10358).
5+
6+
## V14.2.15 (04/17/2025)
37
### Bug Fixes
48
- [NTS] - EMV tag data removal from the Wex Fleet Retransmit Data Collect transaction(Issue -10356).
59
- [UPA] - Unit test addition to check the mapping of Merchant ID in Terminal Response object.
610
- [UPA] - General maintenance on Java SDK to clean-up inconsistent getters and setters.
711
- [UPA] - Updated UpaTcpInterface to account for multi-messaging.
812

13+
### Enhancements
14+
- [UPA] - Implementation of AIDL for Android.
15+
916
## V14.2.14 (04/03/2025)
1017
### Enhancements
1118
- [Portico] - Added variable to Transaction for splitTenderBalanceDueAmt, rewards, and notes.

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<modelVersion>4.0.0</modelVersion>
44
<groupId>com.heartlandpaymentsystems</groupId>
55
<artifactId>globalpayments-sdk</artifactId>
6-
<version>14.2.15</version>
6+
<version>14.2.16</version>
77
<packaging>jar</packaging>
88
<name>Heartland &amp; Global Payments SDK</name>
99
<description>API for processing payments through Global Payments</description>

src/main/java/com/global/api/gateways/NtsConnector.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -388,6 +388,9 @@ public Transaction resubmitTransaction(ResubmitBuilder builder) throws ApiExcept
388388
originalReq = originalReq.substring(0, count) + NtsMessageCode.ForceRequestToBalance.getValue() + originalReq.substring(count + 2);
389389
}
390390
}
391+
if (builder.getHostResponseCode().equals(NtsHostResponseCode.Code70TwiceInRow.getValue())){
392+
originalReq = originalReq.substring(0, hostRespCount) + NtsHostResponseCode.Code70TwiceInRow.getValue() + originalReq.substring(hostRespCount + 2);
393+
}
391394
}
392395
break;
393396
case DataCollect:

src/test/java/com/global/api/tests/network/nts/NtsRequestToBalanceTest.java

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -839,8 +839,53 @@ public void test_BatchCloseIssue_10213_RTB_40() throws ApiException {
839839
assertNotNull(newSummary);
840840

841841
}
842+
}
843+
844+
@Test
845+
public void test_BatchCloseIssue_10358_MC16_70_79() throws ApiException {
846+
847+
Transaction t = creditSale(10.11);
848+
Transaction t1 = creditSale(20.22);
849+
850+
NtsRequestMessageHeader ntsRequestMessageHeader = new NtsRequestMessageHeader();
851+
ntsRequestMessageHeader.setTerminalDestinationTag("478");
852+
ntsRequestMessageHeader.setPinIndicator(PinIndicator.WithPin);
853+
ntsRequestMessageHeader.setNtsMessageCode(NtsMessageCode.RequestToBalacnce);
854+
ntsRequestMessageHeader.setPinIndicator(PinIndicator.NotPromptedPin);
855+
856+
priorMessageInformation = new PriorMessageInformation();
857+
priorMessageInformation.setResponseTime("999");
858+
priorMessageInformation.setConnectTime("999");
859+
priorMessageInformation.setMessageReasonCode("01");
860+
ntsRequestMessageHeader.setPriorMessageInformation(priorMessageInformation);
861+
862+
NtsRequestToBalanceData data = new NtsRequestToBalanceData(batchProvider.getSequenceNumber(), new BigDecimal(1), "Version");
863+
Transaction batchClose = BatchService.closeBatch(BatchCloseType.EndOfShift,
864+
ntsRequestMessageHeader, batchProvider.getBatchNumber(), 2
865+
, new BigDecimal(30.33), BigDecimal.ONE, data)
866+
.execute();
867+
assertNotNull(batchClose);
868+
869+
Transaction retransmitBatchCloseResponse = NetworkService.resubmitBatchClose(batchClose.getTransactionToken())
870+
.execute();
871+
assertNotNull(retransmitBatchCloseResponse);
842872

873+
NtsHostResponseCode responseCode = retransmitBatchCloseResponse.getNtsResponse().getNtsResponseMessageHeader().getNtsNetworkMessageHeader().getResponseCode();
874+
if (responseCode.equals(NtsHostResponseCode.FormatError)) {
875+
for (int i = 0; i < 2; i++) {
876+
if (i == 0) {
877+
Transaction transaction = NetworkService.resubmitBatchClose(retransmitBatchCloseResponse.getTransactionToken())
878+
.execute();
879+
} else {
880+
Transaction transaction = NetworkService.resubmitBatchClose(retransmitBatchCloseResponse.getTransactionToken())
881+
.withHostResponseCode("79")
882+
.execute();
883+
BatchSummary newSummary = transaction.getBatchSummary();
884+
assertNotNull(newSummary);
885+
}
843886

887+
}
888+
}
844889
}
845890
@Test
846891
public void test_WexFleetEMV_RTB_01_Issue_10356() throws ApiException {

0 commit comments

Comments
 (0)