combine MPU and internation hosts

This commit is contained in:
MooN 2026-02-08 21:28:53 +06:30
parent 13cc4db6ab
commit e873606e4c
12 changed files with 112 additions and 222 deletions

View File

@ -158,10 +158,10 @@ public class MainActivity extends AppCompatActivity implements
} }
private void initKey(){ private void initKey(){
// SystemParamsOperation.getInstance().setTmsAddress("https://api-tms-uat.kbzbank.com:8443/sirius"); SystemParamsOperation.getInstance().setTmsAddress("https://api-tms-uat.kbzbank.com:8443/sirius");
SystemParamsOperation.getInstance().setTmsAddress("https://sirius-nest.utsmyanmar.com"); // SystemParamsOperation.getInstance().setTmsAddress("https://sirius-nest.utsmyanmar.com");
// SystemParamsOperation.getInstance().setEReceiptAddress("https://api-tms-uat.kbzbank.com:8443/receipt"); SystemParamsOperation.getInstance().setEReceiptAddress("https://api-tms-uat.kbzbank.com:8443/receipt");
SystemParamsOperation.getInstance().setEReceiptAddress("https://receipt-nest.utsmyanmar.com"); // SystemParamsOperation.getInstance().setEReceiptAddress("https://receipt-nest.utsmyanmar.com");
PinPad pinPad = MyApplication.getInstance().deviceEngine.getPinPad(); PinPad pinPad = MyApplication.getInstance().deviceEngine.getPinPad();
byte[] encryptedPIK = SystemParamsOperation.getInstance().getPIK(); byte[] encryptedPIK = SystemParamsOperation.getInstance().getPIK();

View File

@ -175,10 +175,17 @@ public class InputTraceNoFragment extends DataBindingFragment {
sharedViewModel.payDetail.setValue(payDetail); sharedViewModel.payDetail.setValue(payDetail);
if(sharedViewModel.hostType.getValue() == HostType.MPU) { if(sharedViewModel.hostType.getValue() == HostType.MPU) {
sharedViewModel.isEmv.setValue(false); boolean isMpu = "MPU".equals(payDetail.getAccountType());
transProcessViewModel.transType.setValue(sharedViewModel.transactionsType.getValue()); if (isMpu) {
transProcessViewModel.setOldTransPayDetail(payDetail); sharedViewModel.isEmv.setValue(false);
transProcessViewModel.setPayDetail(payDetail); transProcessViewModel.transType.setValue(sharedViewModel.transactionsType.getValue());
transProcessViewModel.setOldTransPayDetail(payDetail);
transProcessViewModel.setPayDetail(payDetail);
} else {
sharedViewModel.isEmv.setValue(true);
emvTransactionProcessViewModel.transType.setValue(sharedViewModel.transactionsType.getValue());
emvTransactionProcessViewModel.setPayDetail(payDetail);
}
} else { } else {
sharedViewModel.isEmv.setValue(true); sharedViewModel.isEmv.setValue(true);
emvTransactionProcessViewModel.transType.setValue(sharedViewModel.transactionsType.getValue()); emvTransactionProcessViewModel.transType.setValue(sharedViewModel.transactionsType.getValue());

View File

@ -94,12 +94,8 @@ public class DetailReportFragment extends DataBindingFragment {
managementViewModel.hostTypeDR.setValue("PAYMENT"); managementViewModel.hostTypeDR.setValue("PAYMENT");
managementViewModel.cardTypeDR.setValue("QR PAY"); managementViewModel.cardTypeDR.setValue("QR PAY");
} else if(sharedViewModel.hostType.getValue() == HostType.MPU) { } else if(sharedViewModel.hostType.getValue() == HostType.MPU) {
managementViewModel.hostTypeDR.setValue("MPU"); managementViewModel.hostTypeDR.setValue("CARD");
managementViewModel.cardTypeDR.setValue("MPU"); managementViewModel.cardTypeDR.setValue("CARD");
} else if(sharedViewModel.hostType.getValue() == HostType.VISA_MASTER) {
managementViewModel.hostTypeDR.setValue("VISA/MASTER");
managementViewModel.cardTypeDR.setValue("VISA/MASTER");
} }
} }
@ -153,7 +149,7 @@ public class DetailReportFragment extends DataBindingFragment {
if(sharedViewModel.hostType.getValue() == HostType.MPU) { if(sharedViewModel.hostType.getValue() == HostType.MPU) {
if(payDetail.getAccountType().equals("MPU") && payDetail.getTransactionType() != TransactionsType.MMQR_REFUND.value && payDetail.getTransactionType() != TransactionsType.MMQR.value && payDetail.getTransactionType() != TransactionsType.REVERSAL.value && payDetail.getTransactionType() != TransactionsType.SETTLEMENT.value && POSUtil.getInstance().getYesterdayDate().compareTo(POSUtil.getInstance().getDateByString(payDetail.transDate)) < 1) { if(payDetail.getTransactionType() != TransactionsType.MMQR_REFUND.value && payDetail.getTransactionType() != TransactionsType.MMQR.value && payDetail.getTransactionType() != TransactionsType.REVERSAL.value && payDetail.getTransactionType() != TransactionsType.SETTLEMENT.value && POSUtil.getInstance().getYesterdayDate().compareTo(POSUtil.getInstance().getDateByString(payDetail.transDate)) < 1) {
boolean isNeedMinusSign = payDetail.getTransactionType() == TransactionsType.VOID.value || payDetail.getTransactionType() == TransactionsType.REFUND.value; boolean isNeedMinusSign = payDetail.getTransactionType() == TransactionsType.VOID.value || payDetail.getTransactionType() == TransactionsType.REFUND.value;
lists.add(payDetail); lists.add(payDetail);
count++; count++;
@ -175,19 +171,6 @@ public class DetailReportFragment extends DataBindingFragment {
totalAmount += payDetail.getAmount(); totalAmount += payDetail.getAmount();
} }
} }
} if(sharedViewModel.hostType.getValue() == HostType.VISA_MASTER) {
if(!payDetail.getAccountType().equals("MPU") && payDetail.getTransactionType() != TransactionsType.MMQR_REFUND.value && payDetail.getTransactionType() != TransactionsType.MMQR.value && payDetail.getTransactionType() != TransactionsType.REVERSAL.value && payDetail.getTransactionType() != TransactionsType.SETTLEMENT.value && POSUtil.getInstance().getYesterdayDate().compareTo(POSUtil.getInstance().getDateByString(payDetail.transDate)) < 1) {
boolean isNeedMinusSign = payDetail.getTransactionType() == TransactionsType.VOID.value || payDetail.getTransactionType() == TransactionsType.REFUND.value;
lists.add(payDetail);
count++;
if(isNeedMinusSign) {
totalAmount -= payDetail.getAmount();
} else {
totalAmount += payDetail.getAmount();
}
}
} }
} }

View File

@ -122,6 +122,7 @@ public class ManagementFunctionFragment extends DataBindingFragment {
public void onClickReprintLastTrans() { public void onClickReprintLastTrans() {
sharedViewModel.setTransMenu(TransMenu.REPRINT); sharedViewModel.setTransMenu(TransMenu.REPRINT);
sharedViewModel.suppressReprintButtons.setValue(false);
observeLastTransaction(); observeLastTransaction();
} }

View File

@ -308,7 +308,7 @@ public class ReprintAnyTransactionFragment extends DataBindingFragment {
// April 2, 2024 client requested to add QR host at host selection type // April 2, 2024 client requested to add QR host at host selection type
if(sharedViewModel.hostType.getValue() == HostType.MPU) { if(sharedViewModel.hostType.getValue() == HostType.MPU) {
if(pay.getAccountType().equals("MPU") && pay.getTransactionType() != TransactionsType.MMQR.value && pay.getTransactionType() != TransactionsType.MMQR_REFUND.value) { if(pay.getTransactionType() != TransactionsType.MMQR.value && pay.getTransactionType() != TransactionsType.MMQR_REFUND.value) {
filteredLists.add(pay); filteredLists.add(pay);
} }
@ -318,10 +318,6 @@ public class ReprintAnyTransactionFragment extends DataBindingFragment {
filteredLists.add(pay); filteredLists.add(pay);
} }
} }
} else if(sharedViewModel.hostType.getValue() == HostType.VISA_MASTER) {
if(!pay.getAccountType().equals("MPU") && pay.getTransactionType() != TransactionsType.MMQR.value && pay.getTransactionType() != TransactionsType.MMQR_REFUND.value) {
filteredLists.add(pay);
}
} }
} }

View File

@ -354,13 +354,11 @@ public class SelectHostFragment extends DataBindingFragment implements DataBindi
} }
break; break;
case TIP_ADJUSTMENT: case TIP_ADJUSTMENT:
if(sharedViewModel.hostType.getValue() == HostType.VISA_MASTER) { if(sharedViewModel.hostType.getValue() != HostType.QR) {
routeId = R.id.action_selectHostFragment_to_inputTraceFragment; routeId = R.id.action_selectHostFragment_to_inputTraceFragment;
} else { } else {
routeId = R.id.action_selectHostFragment_to_errorFragment; routeId = R.id.action_selectHostFragment_to_errorFragment;
sharedViewModel.set_errorFragmentMsg(getResourceString(R.string.txt_tip_adjust_not_allowed)); sharedViewModel.set_errorFragmentMsg(getResourceString(R.string.txt_tip_adjust_not_allowed));
} }
safeNavigateToRouteId(); safeNavigateToRouteId();
break; break;
@ -411,23 +409,9 @@ public class SelectHostFragment extends DataBindingFragment implements DataBindi
public class ClickEvent { public class ClickEvent {
public void onClickVisaMaster() { public void onClickCards() {
sharedViewModel.hostType.setValue(HostType.VISA_MASTER);
if(SystemParamsOperation.getInstance().isEmvEnabled()) {
observeRoute();
} else {
showSingleInfoDialog("Currently this menu is unavailable!");
}
}
public void onClickMPU() {
sharedViewModel.hostType.setValue(HostType.MPU); sharedViewModel.hostType.setValue(HostType.MPU);
observeRoute(); observeRoute();
} }
public void onClickQR() { public void onClickQR() {

View File

@ -282,44 +282,22 @@ public class TransactionSummaryFragment extends DataBindingFragment {
waveRefund.inc(pay.amount); waveRefund.inc(pay.amount);
} }
} else if (sharedViewModel.hostType.getValue() == HostType.MPU) { } else if (sharedViewModel.hostType.getValue() == HostType.MPU) {
if ("MPU".equals(pay.getAccountType())) { if (pay.getTransactionType() == TransactionsType.VOID.value) {
if (pay.getTransactionType() == TransactionsType.VOID.value) { voidTran.inc(pay.amount);
voidTran.inc(pay.amount); } else if (pay.getTransactionType() == TransactionsType.SALE.value) {
} else if (pay.getTransactionType() == TransactionsType.SALE.value) { sale.inc(pay.amount);
sale.inc(pay.amount); } else if (pay.getTransactionType() == TransactionsType.CASH_OUT.value) {
} else if (pay.getTransactionType() == TransactionsType.CASH_OUT.value) { ca.inc(pay.amount);
ca.inc(pay.amount); } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_SALE.value) {
} else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_SALE.value) { preAuth.inc(pay.amount);
preAuth.inc(pay.amount); } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_VOID.value) {
} else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_VOID.value) { preAuthVoid.inc(pay.amount);
preAuthVoid.inc(pay.amount); } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_COMPLETE.value) {
} else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_COMPLETE.value) { preAuthComp.inc(pay.amount);
preAuthComp.inc(pay.amount); } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_COMPLETE_VOID.value) {
} else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_COMPLETE_VOID.value) { preAuthCompVoid.inc(pay.amount);
preAuthCompVoid.inc(pay.amount); } else if (pay.getTransactionType() == TransactionsType.REFUND.value) {
} else if (pay.getTransactionType() == TransactionsType.REFUND.value) { refund.inc(pay.amount);
refund.inc(pay.amount);
}
}
} else if (sharedViewModel.hostType.getValue() == HostType.VISA_MASTER) {
if (!"MPU".equals(pay.getAccountType())) {
if (pay.getTransactionType() == TransactionsType.VOID.value) {
voidTran.inc(pay.amount);
} else if (pay.getTransactionType() == TransactionsType.SALE.value) {
sale.inc(pay.amount);
} else if (pay.getTransactionType() == TransactionsType.CASH_OUT.value) {
ca.inc(pay.amount);
} else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_SALE.value) {
preAuth.inc(pay.amount);
} else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_VOID.value) {
preAuthVoid.inc(pay.amount);
} else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_COMPLETE.value) {
preAuthComp.inc(pay.amount);
} else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_COMPLETE_VOID.value) {
preAuthCompVoid.inc(pay.amount);
} else if (pay.getTransactionType() == TransactionsType.REFUND.value) {
refund.inc(pay.amount);
}
} }
} }
} }
@ -350,9 +328,7 @@ public class TransactionSummaryFragment extends DataBindingFragment {
if (sharedViewModel.hostType.getValue() == HostType.QR) { if (sharedViewModel.hostType.getValue() == HostType.QR) {
return "WALLET"; return "WALLET";
} else if (sharedViewModel.hostType.getValue() == HostType.MPU) { } else if (sharedViewModel.hostType.getValue() == HostType.MPU) {
return "MPU"; return "CARD";
} else if (sharedViewModel.hostType.getValue() == HostType.VISA_MASTER) {
return "Visa/Master";
} }
return ""; return "";
} }

View File

@ -42,8 +42,8 @@ public class RefundCertificateManager {
return; return;
}; };
String downloadBase = tmsAddress.trim() + "/api/v1/file/download?filePath="; //local // String downloadBase = tmsAddress.trim() + "/api/v1/file/download?filePath="; //local
// String downloadBase = tmsAddress.trim() + "/file/download?filePath="; // uat and prod String downloadBase = tmsAddress.trim() + "/file/download?filePath="; // uat and prod
String certUrl = SystemParamsOperation.getInstance().getCertificateUrl(); String certUrl = SystemParamsOperation.getInstance().getCertificateUrl();
String clientCertUrl = SystemParamsOperation.getInstance().getCertificateClientUrl(); String clientCertUrl = SystemParamsOperation.getInstance().getCertificateClientUrl();

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

View File

@ -86,9 +86,9 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="vertical"> android:orientation="vertical">
<!-- Visa/Master Card Option --> <!-- Cards Option (MPU + International) -->
<androidx.cardview.widget.CardView <androidx.cardview.widget.CardView
android:id="@+id/visaMasterCard" android:id="@+id/cardsCard"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="120dp" android:layout_height="120dp"
android:layout_marginBottom="16dp" android:layout_marginBottom="16dp"
@ -98,7 +98,7 @@
android:clickable="true" android:clickable="true"
android:focusable="true" android:focusable="true"
android:foreground="?android:attr/selectableItemBackground" android:foreground="?android:attr/selectableItemBackground"
android:onClick="@{()->click.onClickVisaMaster()}"> android:onClick="@{()->click.onClickCards()}">
<!-- Card with border --> <!-- Card with border -->
<LinearLayout <LinearLayout
@ -111,59 +111,74 @@
android:padding="16dp"> android:padding="16dp">
<!-- Card Logos Grid Container --> <!-- Card Logos Grid Container -->
<LinearLayout <!-- <LinearLayout-->
android:layout_width="wrap_content" <!-- android:layout_width="wrap_content"-->
android:layout_height="wrap_content" <!-- android:layout_height="wrap_content"-->
android:orientation="vertical" <!-- android:orientation="vertical"-->
android:gravity="center" <!-- android:gravity="center"-->
android:layout_marginEnd="16dp"> <!-- android:layout_marginEnd="16dp">-->
<!-- First Row: Visa and Mastercard --> <!-- &lt;!&ndash; First Row: MPU, Visa, Mastercard &ndash;&gt;-->
<LinearLayout <!-- <LinearLayout-->
android:layout_width="wrap_content" <!-- android:layout_width="wrap_content"-->
android:layout_height="wrap_content" <!-- android:layout_height="wrap_content"-->
android:orientation="horizontal" <!-- android:orientation="horizontal"-->
android:gravity="center" <!-- android:gravity="center"-->
android:layout_marginBottom="8dp"> <!-- android:layout_marginBottom="8dp">-->
<ImageView <!-- <ImageView-->
android:layout_width="35dp" <!-- android:layout_width="35dp"-->
android:layout_height="35dp" <!-- android:layout_height="35dp"-->
android:src="@drawable/visa_logo" <!-- android:src="@drawable/logo_mpu"-->
android:scaleType="fitCenter" <!-- android:scaleType="fitCenter"-->
android:layout_marginEnd="8dp" /> <!-- android:layout_marginEnd="8dp" />-->
<ImageView <!-- <ImageView-->
android:layout_width="35dp" <!-- android:layout_width="35dp"-->
android:layout_height="35dp" <!-- android:layout_height="35dp"-->
android:src="@drawable/mastercard_logo" <!-- android:src="@drawable/visa_logo"-->
android:scaleType="fitCenter" /> <!-- android:scaleType="fitCenter"-->
<!-- android:layout_marginEnd="8dp" />-->
</LinearLayout> <!-- <ImageView-->
<!-- android:layout_width="35dp"-->
<!-- android:layout_height="35dp"-->
<!-- android:src="@drawable/mastercard_logo"-->
<!-- android:scaleType="fitCenter" />-->
<!-- Second Row: JCB and UnionPay --> <!-- </LinearLayout>-->
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center">
<ImageView <!-- &lt;!&ndash; Second Row: JCB and UnionPay &ndash;&gt;-->
android:layout_width="35dp" <!-- <LinearLayout-->
android:layout_height="35dp" <!-- android:layout_width="wrap_content"-->
android:src="@drawable/jcb_logo" <!-- android:layout_height="wrap_content"-->
android:scaleType="fitCenter" <!-- android:orientation="horizontal"-->
android:layout_marginEnd="8dp" /> <!-- android:gravity="center">-->
<ImageView <!-- <ImageView-->
android:layout_width="35dp" <!-- android:layout_width="35dp"-->
android:layout_height="35dp" <!-- android:layout_height="35dp"-->
android:src="@drawable/logo_upi" <!-- android:src="@drawable/jcb_logo"-->
android:scaleType="fitCenter" /> <!-- android:scaleType="fitCenter"-->
<!-- android:layout_marginEnd="8dp" />-->
</LinearLayout> <!-- <ImageView-->
<!-- android:layout_width="35dp"-->
<!-- android:layout_height="35dp"-->
<!-- android:src="@drawable/logo_upi"-->
<!-- android:scaleType="fitCenter" />-->
</LinearLayout> <!-- </LinearLayout>-->
<!-- </LinearLayout>-->
<ImageView
android:layout_width="50dp"
android:layout_height="50dp"
android:src="@drawable/ic_bank_card"
app:tint="@color/colorPrimary"
android:alpha="0.8"
android:scaleType="fitCenter"
android:layout_marginEnd="16dp" />
<!-- Card Details --> <!-- Card Details -->
<LinearLayout <LinearLayout
@ -175,7 +190,7 @@
<TextView <TextView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="International Cards" android:text="Cards"
android:textColor="@color/colorPrimary" android:textColor="@color/colorPrimary"
android:textSize="16sp" android:textSize="16sp"
android:textStyle="bold" android:textStyle="bold"
@ -185,79 +200,7 @@
<TextView <TextView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="Visa, Mastercard, JCB &amp; UnionPay" android:text="MPU, Visa, Mastercard, JCB &amp; UnionPay"
android:textColor="@color/colorPrimary"
android:textSize="13sp"
android:alpha="0.7"
android:fontFamily="sans-serif" />
</LinearLayout>
<!-- Arrow Icon -->
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:src="@drawable/ic_right_arrow"
app:tint="@color/colorPrimary"
android:alpha="0.6" />
</LinearLayout>
</androidx.cardview.widget.CardView>
<!-- MPU Option -->
<androidx.cardview.widget.CardView
android:id="@+id/mpuCard"
android:layout_width="match_parent"
android:layout_height="100dp"
android:layout_marginBottom="16dp"
app:cardCornerRadius="16dp"
app:cardElevation="0dp"
app:cardBackgroundColor="@color/white"
android:clickable="true"
android:focusable="true"
android:foreground="?android:attr/selectableItemBackground"
android:onClick="@{()->click.onClickMPU()}">
<!-- Card with border -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="2dp"
android:background="@drawable/bg_edittext_primary_border"
android:orientation="horizontal"
android:gravity="center"
android:padding="16dp">
<!-- MPU Logo -->
<ImageView
android:layout_width="50dp"
android:layout_height="50dp"
android:src="@drawable/logo_mpu"
android:scaleType="fitCenter"
android:layout_marginEnd="16dp" />
<!-- MPU Details -->
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="MPU"
android:textColor="@color/colorPrimary"
android:textSize="16sp"
android:textStyle="bold"
android:fontFamily="sans-serif-medium"
android:layout_marginBottom="2dp" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Myanmar Payment Union cards"
android:textColor="@color/colorPrimary" android:textColor="@color/colorPrimary"
android:textSize="13sp" android:textSize="13sp"
android:alpha="0.7" android:alpha="0.7"
@ -305,7 +248,7 @@
<ImageView <ImageView
android:layout_width="50dp" android:layout_width="50dp"
android:layout_height="50dp" android:layout_height="50dp"
android:src="@drawable/logo_qr_pay_db" android:src="@drawable/ic_qr_pay"
app:tint="@color/colorPrimary" app:tint="@color/colorPrimary"
android:alpha="0.8" android:alpha="0.8"
android:scaleType="fitCenter" android:scaleType="fitCenter"

View File

@ -287,8 +287,8 @@ public class NetworkModule {
tmsAddress = getTMSUrlFromNative(); tmsAddress = getTMSUrlFromNative();
} }
String baseUrl = tmsAddress.trim() + "/api/v1/"; //for on prim // String baseUrl = tmsAddress.trim() + "/api/v1/"; //for on prim
// String baseUrl = tmsAddress.trim() + "/"; //for uat and prod String baseUrl = tmsAddress.trim() + "/"; //for uat and prod
final Gson gson = final Gson gson =
new GsonBuilder().create(); new GsonBuilder().create();

View File

@ -42,10 +42,10 @@ public class SystemParamsSettings implements Serializable {
// private String tmsAddress = "https://tms.smile-mm.com"; // private String tmsAddress = "https://tms.smile-mm.com";
// private String tmsAddress = "http://128.199.170.203"; // private String tmsAddress = "http://128.199.170.203";
private String tmsAddress = "https://sirius-nest.utsmyanmar.com"; // private String tmsAddress = "https://sirius-nest.utsmyanmar.com";
// private String tmsAddress = "https://api-tms-uat.kbzbank.com:8443/sirius"; //for uat private String tmsAddress = "https://api-tms-uat.kbzbank.com:8443/sirius"; //for uat
private String ereceiptAddress = "https://receipt-nest.utsmyanmar.com"; //for on prime // private String ereceiptAddress = "https://receipt-nest.utsmyanmar.com"; //for on prime
// private String ereceiptAddress = "https://api-tms-uat.kbzbank.com:8443/receipt"; //for uat private String ereceiptAddress = "https://api-tms-uat.kbzbank.com:8443/receipt"; //for uat
private String binValues = ""; private String binValues = "";