diff --git a/pay-java-union/pom.xml b/pay-java-union/pom.xml
new file mode 100644
index 0000000..81506db
--- /dev/null
+++ b/pay-java-union/pom.xml
@@ -0,0 +1,21 @@
+
+
+
+ pay-java-parent
+ com.egzosn
+ 2.0.2-SNAPSHOT
+
+ 4.0.0
+
+ pay-java-union
+
+
+ com.egzosn
+ pay-java-common
+
+
+
+
+
\ No newline at end of file
diff --git a/pay-java-union/src/main/java/com/egzosn/pay/union/api/UnionPayConfigStorage.java b/pay-java-union/src/main/java/com/egzosn/pay/union/api/UnionPayConfigStorage.java
new file mode 100644
index 0000000..1fcf2b6
--- /dev/null
+++ b/pay-java-union/src/main/java/com/egzosn/pay/union/api/UnionPayConfigStorage.java
@@ -0,0 +1,38 @@
+package com.egzosn.pay.union.api;
+
+import com.egzosn.pay.common.api.BasePayConfigStorage;
+
+/**
+ * 银联支付配置
+ * @author egan
+ *
+ *
+ * email egzosn@gmail.com
+ * date 2017/6/15
+ */
+public class UnionPayConfigStorage extends BasePayConfigStorage {
+ @Override
+ public String getAppid() {
+ return null;
+ }
+
+ @Override
+ public String getPartner() {
+ return null;
+ }
+
+ @Override
+ public String getPid() {
+ return null;
+ }
+
+ @Override
+ public String getSeller() {
+ return null;
+ }
+
+ @Override
+ public String getSecretKey() {
+ return null;
+ }
+}
diff --git a/pay-java-union/src/main/java/com/egzosn/pay/union/api/UnionPayServicer.java b/pay-java-union/src/main/java/com/egzosn/pay/union/api/UnionPayServicer.java
new file mode 100644
index 0000000..dd33e76
--- /dev/null
+++ b/pay-java-union/src/main/java/com/egzosn/pay/union/api/UnionPayServicer.java
@@ -0,0 +1,130 @@
+package com.egzosn.pay.union.api;
+
+import com.egzosn.pay.common.api.BasePayService;
+import com.egzosn.pay.common.api.Callback;
+import com.egzosn.pay.common.api.PayConfigStorage;
+import com.egzosn.pay.common.bean.*;
+
+import java.awt.image.BufferedImage;
+import java.io.InputStream;
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.Map;
+
+/**
+ * @author egan
+ *
+ *
+ * email egzosn@gmail.com
+ * date 2017/6/15
+ */
+public class UnionPayServicer extends BasePayService {
+ public UnionPayServicer(PayConfigStorage payConfigStorage) {
+ super(payConfigStorage);
+ }
+
+ @Override
+ public boolean verify(Map params) {
+ return false;
+ }
+
+ @Override
+ public boolean signVerify(Map params, String sign) {
+ return false;
+ }
+
+ @Override
+ public boolean verifySource(String id) {
+ return false;
+ }
+
+ @Override
+ public Map orderInfo(PayOrder order) {
+ return null;
+ }
+
+ @Override
+ public Map getParameter2Map(Map parameterMap, InputStream is) {
+ return null;
+ }
+
+ @Override
+ public PayOutMessage getPayOutMessage(String code, String message) {
+ return null;
+ }
+
+ @Override
+ public PayOutMessage successPayOutMessage(PayMessage payMessage) {
+ return null;
+ }
+
+ @Override
+ public String buildRequest(Map orderInfo, MethodType method) {
+ return null;
+ }
+
+ @Override
+ public BufferedImage genQrPay(PayOrder order) {
+ return null;
+ }
+
+ @Override
+ public Map microPay(PayOrder order) {
+ return null;
+ }
+
+ @Override
+ public Map query(String tradeNo, String outTradeNo) {
+ return null;
+ }
+
+ @Override
+ public T query(String tradeNo, String outTradeNo, Callback callback) {
+ return null;
+ }
+
+ @Override
+ public Map close(String tradeNo, String outTradeNo) {
+ return null;
+ }
+
+ @Override
+ public T close(String tradeNo, String outTradeNo, Callback callback) {
+ return null;
+ }
+
+ @Override
+ public Map refund(String tradeNo, String outTradeNo, BigDecimal refundAmount, BigDecimal totalAmount) {
+ return null;
+ }
+
+ @Override
+ public T refund(String tradeNo, String outTradeNo, BigDecimal refundAmount, BigDecimal totalAmount, Callback callback) {
+ return null;
+ }
+
+ @Override
+ public Map refundquery(String tradeNo, String outTradeNo) {
+ return null;
+ }
+
+ @Override
+ public T refundquery(String tradeNo, String outTradeNo, Callback callback) {
+ return null;
+ }
+
+ @Override
+ public Object downloadbill(Date billDate, String billType) {
+ return null;
+ }
+
+ @Override
+ public T downloadbill(Date billDate, String billType, Callback callback) {
+ return null;
+ }
+
+ @Override
+ public T secondaryInterface(Object tradeNoOrBillDate, String outTradeNoBillType, TransactionType transactionType, Callback callback) {
+ return null;
+ }
+}
diff --git a/pay-java-union/src/main/java/com/egzosn/pay/union/bean/UnionTransactionType.java b/pay-java-union/src/main/java/com/egzosn/pay/union/bean/UnionTransactionType.java
new file mode 100644
index 0000000..423e16f
--- /dev/null
+++ b/pay-java-union/src/main/java/com/egzosn/pay/union/bean/UnionTransactionType.java
@@ -0,0 +1,12 @@
+package com.egzosn.pay.union.bean;
+
+/**
+ * 银联支付交易类型
+ * @author egan
+ *
+ *
+ * email egzosn@gmail.com
+ * date 2017/6/15
+ */
+public enum UnionTransactionType {
+}
diff --git a/pom.xml b/pom.xml
index 8bfba72..c574db9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -44,6 +44,7 @@
pay-java-wx-youdian
pay-java-fuiou
pay-java-demo
+ pay-java-union