public void ActivateReversal()
        {
            activateReversal reversal = new activateReversal();

            reversal.id                 = "1";
            reversal.reportGroup        = "planets";
            reversal.litleTxnId         = 123456000;
            reversal.virtualGiftCardBin = "123";
            giftCardCardType card = new giftCardCardType();

            card.type                       = methodOfPaymentTypeEnum.GC;
            card.number                     = "414100000000000000";
            card.expDate                    = "1210";
            card.pin                        = "1234";
            reversal.card                   = card;
            reversal.originalRefCode        = "123";
            reversal.originalAmount         = 123;
            reversal.originalTxnTime        = new DateTime(2017, 01, 01);
            reversal.originalSystemTraceId  = 123;
            reversal.originalSequenceNumber = "123456";
            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<litleTxnId>123456000</litleTxnId>\r\n<virtualGiftCardBin>123</virtualGiftCardBin>\r\n<card>\r\n<type>GC</type>\r\n<number>414100000000000000</number>\r\n<expDate>1210</expDate>\r\n<pin>1234</pin>\r\n</card>\r\n<originalRefCode>123</originalRefCode>\r\n<originalAmount>123</originalAmount>\r\n<originalTxnTime>2017-01-01T00:00:00Z</originalTxnTime>\r\n<originalSystemTraceId>123</originalSystemTraceId>\r\n<originalSequenceNumber>123456</originalSequenceNumber>.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.14' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><authReversalResponse><litleTxnId>123</litleTxnId></authReversalResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.ActivateReversal(reversal);
        }
Ejemplo n.º 2
0
        public void TestGiftCardAuthReversalWithCard()
        {
            giftCardAuthReversal giftCard = new giftCardAuthReversal();

            giftCard.id          = "1";
            giftCard.reportGroup = "Planets";
            giftCard.litleTxnId  = 123456789;
            giftCardCardType card = new giftCardCardType();

            card.type     = methodOfPaymentTypeEnum.GC;
            card.number   = "414100000000000000";
            card.expDate  = "1210";
            giftCard.card = card;

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<card>\r\n<type>GC</type>\r\n<number>414100000000000000</number>\r\n<expDate>1210</expDate>\r\n</card>.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.18' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><giftCardAuthReversalResponse><litleTxnId>123</litleTxnId></giftCardAuthReversalResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            giftCardAuthReversalResponse giftCardAuthReversalResponse = litle.GiftCardAuthReversal(giftCard);

            Assert.AreEqual(123, giftCardAuthReversalResponse.litleTxnId);
        }
Ejemplo n.º 3
0
        public void TestGiftCardCaptureSimple()
        {
            giftCardCapture giftCardCapture = new giftCardCapture();

            giftCardCapture.id            = "1";
            giftCardCapture.reportGroup   = "Planets";
            giftCardCapture.litleTxnId    = 123456000;
            giftCardCapture.captureAmount = 106;
            giftCardCardType card = new giftCardCardType();

            card.type                       = methodOfPaymentTypeEnum.GC;
            card.number                     = "414100000000000000";
            card.expDate                    = "1210";
            giftCardCapture.card            = card;
            giftCardCapture.originalRefCode = "abc123";
            giftCardCapture.originalAmount  = 43534345;
            giftCardCapture.originalTxnTime = new DateTime(2017, 01, 01);

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<litleTxnId>123456000</litleTxnId>\r\n<captureAmount>106</captureAmount>\r\n<card>\r\n<type>GC</type>\r\n<number>414100000000000000</number>\r\n<expDate>1210</expDate>\r\n</card>\r\n<originalRefCode>abc123</originalRefCode>\r\n<originalAmount>43534345</originalAmount>\r\n<originalTxnTime>2017-01-01T00:00:00Z</originalTxnTime>.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.14' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><giftCardCaptureResponse><litleTxnId>123</litleTxnId></giftCardCaptureResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.GiftCardCapture(giftCardCapture);
        }
Ejemplo n.º 4
0
        public void TestGiftCardCreditOrderId()
        {
            giftCardCredit credit = new giftCardCredit();

            credit.id           = "1";
            credit.reportGroup  = "planets";
            credit.orderId      = "2111";
            credit.creditAmount = 106;
            credit.orderSource  = orderSourceType.echeckppd;
            giftCardCardType card = new giftCardCardType();

            card.type    = methodOfPaymentTypeEnum.GC;
            card.number  = "4100000000000000";
            card.expDate = "1210";
            credit.card  = card;

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<orderId>2111</orderId>\r\n<creditAmount>106</creditAmount>\r\n<orderSource>echeckppd</orderSource>\r\n<card>\r\n<type>GC</type>\r\n<number>4100000000000000</number>\r\n<expDate>1210</expDate>\r.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.10' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><creditResponse><litleTxnId>123</litleTxnId></creditResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.GiftCardCredit(credit);
        }
        public void RefundReversal()
        {
            refundReversal reversal = new refundReversal();

            reversal.id          = "1";
            reversal.reportGroup = "planets";
            reversal.cnpTxnId    = 123456000;
            giftCardCardType card = new giftCardCardType();

            card.type                       = methodOfPaymentTypeEnum.GC;
            card.number                     = "414100000000000000";
            card.expDate                    = "1210";
            card.pin                        = "1234";
            reversal.card                   = card;
            reversal.originalRefCode        = "123";
            reversal.originalAmount         = 123;
            reversal.originalTxnTime        = new DateTime(2017, 01, 01);
            reversal.originalSystemTraceId  = 123;
            reversal.originalSequenceNumber = "123456";

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<cnpTxnId>123456000</cnpTxnId>\r\n<card>\r\n<type>GC</type>\r\n<number>414100000000000000</number>\r\n<expDate>1210</expDate>\r\n<pin>1234</pin>\r\n</card>\r\n<originalRefCode>123</originalRefCode>\r\n<originalAmount>123</originalAmount>\r\n<originalTxnTime>2017-01-01T00:00:00Z</originalTxnTime>\r\n<originalSystemTraceId>123</originalSystemTraceId>\r\n<originalSequenceNumber>123456</originalSequenceNumber>.*", RegexOptions.Singleline)))
            .Returns("<cnpOnlineResponse version='8.14' response='0' message='Valid Format' xmlns='http://www.vantivcnp.com/schema'><refundReversalResponse><cnpTxnId>123</cnpTxnId><location>sandbox</location></refundReversalResponse></cnpOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            cnp.SetCommunication(mockedCommunication);
            var response = cnp.RefundReversal(reversal);

            Assert.AreEqual("sandbox", response.location);
        }
Ejemplo n.º 6
0
        public void TestGiftCardCreditWithLocation()
        {
            giftCardCredit credit = new giftCardCredit();

            credit.id           = "1";
            credit.reportGroup  = "planets";
            credit.orderId      = "2111";
            credit.creditAmount = 106;
            credit.orderSource  = orderSourceType.echeckppd;
            giftCardCardType card = new giftCardCardType();

            card.type    = methodOfPaymentTypeEnum.GC;
            card.number  = "4100000000000000";
            card.expDate = "1210";
            credit.card  = card;

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<orderId>2111</orderId>\r\n<creditAmount>106</creditAmount>\r\n<orderSource>echeckppd</orderSource>\r\n<card>\r\n<type>GC</type>\r\n<number>4100000000000000</number>\r\n<expDate>1210</expDate>\r.*", RegexOptions.Singleline)))
            .Returns("<cnpOnlineResponse version='8.10' response='0' message='Valid Format' xmlns='http://www.vantivcnp.com/schema'><giftCardCreditResponse><cnpTxnId>123</cnpTxnId><location>sandbox</location></giftCardCreditResponse></cnpOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            cnp.SetCommunication(mockedCommunication);
            var response = cnp.GiftCardCredit(credit);

            Assert.NotNull(response);
            Assert.AreEqual("sandbox", response.location);
        }
Ejemplo n.º 7
0
        public void TestGiftCardCreditTxnId()
        {
            giftCardCredit credit = new giftCardCredit();

            credit.id           = "1";
            credit.reportGroup  = "planets";
            credit.cnpTxnId     = 123456000;
            credit.creditAmount = 106;
            giftCardCardType card = new giftCardCardType();

            card.type    = methodOfPaymentTypeEnum.GC;
            card.number  = "4100000000000000";
            card.expDate = "1210";
            credit.card  = card;

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<cnpTxnId>123456000</cnpTxnId>\r\n<creditAmount>106</creditAmount>\r\n<card>\r\n<type>GC</type>\r\n<number>4100000000000000</number>\r\n<expDate>1210</expDate>\r.*", RegexOptions.Singleline)))
            .Returns("<cnpOnlineResponse version='8.10' response='0' message='Valid Format' xmlns='http://www.vantivcnp.com/schema'><giftCardCreditResponse><cnpTxnId>123</cnpTxnId></giftCardCreditResponse></cnpOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            cnp.SetCommunication(mockedCommunication);
            cnp.GiftCardCredit(credit);
        }
Ejemplo n.º 8
0
        public void SimpleBatch()
        {
            var cnpBatchRequest = new batchRequest();

            var authorization = new authorization
            {
                reportGroup = "Planets",
                orderId     = "12344",
                amount      = 106,
                orderSource = orderSourceType.ecommerce
            };
            var card = new cardType
            {
                type    = methodOfPaymentTypeEnum.VI,
                number  = "4100000000000001",
                expDate = "1210"
            };

            authorization.card = card;
            authorization.id   = "id";

            cnpBatchRequest.addAuthorization(authorization);

            var authorization2 = new authorization();

            authorization2.reportGroup = "Planets";
            authorization2.orderId     = "12345";
            authorization2.amount      = 106;
            authorization2.orderSource = orderSourceType.ecommerce;
            var card2 = new cardType();

            card2.type          = methodOfPaymentTypeEnum.VI;
            card2.number        = "4242424242424242";
            card2.expDate       = "1210";
            authorization2.card = card2;
            authorization2.id   = "id";

            cnpBatchRequest.addAuthorization(authorization2);

            var reversal = new authReversal();

            reversal.cnpTxnId    = 12345678000L;
            reversal.amount      = 106;
            reversal.payPalNotes = "Notes";
            reversal.id          = "id";

            cnpBatchRequest.addAuthReversal(reversal);

            var reversal2 = new authReversal();

            reversal2.cnpTxnId    = 12345678900L;
            reversal2.amount      = 106;
            reversal2.payPalNotes = "Notes";
            reversal2.id          = "id";

            cnpBatchRequest.addAuthReversal(reversal2);

            var giftCardAuthReversal = new giftCardAuthReversal();

            giftCardAuthReversal.id       = "id";
            giftCardAuthReversal.cnpTxnId = 12345678000L;
            var giftCardCardTypeAuthReversal = new giftCardCardType();

            giftCardCardTypeAuthReversal.type           = methodOfPaymentTypeEnum.GC;
            giftCardCardTypeAuthReversal.number         = "4100000000000001";
            giftCardCardTypeAuthReversal.expDate        = "1210";
            giftCardAuthReversal.card                   = giftCardCardTypeAuthReversal;
            giftCardAuthReversal.originalRefCode        = "123456";
            giftCardAuthReversal.originalAmount         = 1000;
            giftCardAuthReversal.originalTxnTime        = DateTime.Now;
            giftCardAuthReversal.originalSystemTraceId  = 123;
            giftCardAuthReversal.originalSequenceNumber = "123456";

            cnpBatchRequest.addGiftCardAuthReversal(giftCardAuthReversal);

            var capture = new capture();

            capture.cnpTxnId    = 123456000;
            capture.amount      = 106;
            capture.payPalNotes = "Notes";
            capture.id          = "id";

            cnpBatchRequest.addCapture(capture);

            var capture2 = new capture();

            capture2.cnpTxnId    = 123456700;
            capture2.amount      = 106;
            capture2.payPalNotes = "Notes";
            capture2.id          = "id";

            cnpBatchRequest.addCapture(capture2);

            var giftCardCapture = new giftCardCapture();

            giftCardCapture.id            = "id";
            giftCardCapture.cnpTxnId      = 12345678000L;
            giftCardCapture.captureAmount = 123456;
            var giftCardCardTypeCapture = new giftCardCardType();

            giftCardCardTypeCapture.type    = methodOfPaymentTypeEnum.GC;
            giftCardCardTypeCapture.number  = "4100000000000001";
            giftCardCardTypeCapture.expDate = "1210";
            giftCardCapture.card            = giftCardCardTypeCapture;
            giftCardCapture.originalRefCode = "123456";
            giftCardCapture.originalAmount  = 1000;
            giftCardCapture.originalTxnTime = DateTime.Now;

            cnpBatchRequest.addGiftCardCapture(giftCardCapture);

            var capturegivenauth = new captureGivenAuth();

            capturegivenauth.amount  = 106;
            capturegivenauth.orderId = "12344";
            var authInfo = new authInformation();
            var authDate = new DateTime(2002, 10, 9);

            authInfo.authDate   = authDate;
            authInfo.authCode   = "543216";
            authInfo.authAmount = 12345;
            capturegivenauth.authInformation = authInfo;
            capturegivenauth.orderSource     = orderSourceType.ecommerce;
            capturegivenauth.card            = card;
            capturegivenauth.id = "id";

            cnpBatchRequest.addCaptureGivenAuth(capturegivenauth);

            var capturegivenauth2 = new captureGivenAuth();

            capturegivenauth2.amount  = 106;
            capturegivenauth2.orderId = "12344";
            var authInfo2 = new authInformation();

            authDate             = new DateTime(2003, 10, 9);
            authInfo2.authDate   = authDate;
            authInfo2.authCode   = "543216";
            authInfo2.authAmount = 12345;
            capturegivenauth2.authInformation = authInfo;
            capturegivenauth2.orderSource     = orderSourceType.ecommerce;
            capturegivenauth2.card            = card2;
            capturegivenauth2.id = "id";

            cnpBatchRequest.addCaptureGivenAuth(capturegivenauth2);

            var creditObj = new credit();

            creditObj.amount      = 106;
            creditObj.orderId     = "2111";
            creditObj.orderSource = orderSourceType.ecommerce;
            creditObj.card        = card;
            creditObj.id          = "id";

            cnpBatchRequest.addCredit(creditObj);

            var creditObj2 = new credit();

            creditObj2.amount      = 106;
            creditObj2.orderId     = "2111";
            creditObj2.orderSource = orderSourceType.ecommerce;
            creditObj2.card        = card2;
            creditObj2.id          = "id";

            cnpBatchRequest.addCredit(creditObj2);

            var giftCardCredit = new giftCardCredit();

            giftCardCredit.id           = "id";
            giftCardCredit.cnpTxnId     = 12345678000L;
            giftCardCredit.creditAmount = 123456;
            var giftCardCardTypeCredit = new giftCardCardType();

            giftCardCardTypeCredit.type    = methodOfPaymentTypeEnum.GC;
            giftCardCardTypeCredit.number  = "4100000000000001";
            giftCardCardTypeCredit.expDate = "1210";
            giftCardCredit.card            = giftCardCardTypeCredit;
            giftCardCredit.orderId         = "123456";
            giftCardCredit.orderSource     = orderSourceType.ecommerce;

            cnpBatchRequest.addGiftCardCredit(giftCardCredit);

            var echeckcredit = new echeckCredit();

            echeckcredit.amount      = 12L;
            echeckcredit.orderId     = "12345";
            echeckcredit.orderSource = orderSourceType.ecommerce;
            var echeck = new echeckType();

            echeck.accType      = echeckAccountTypeEnum.Checking;
            echeck.accNum       = "1099999903";
            echeck.routingNum   = "011201995";
            echeck.checkNum     = "123455";
            echeckcredit.echeck = echeck;
            var billToAddress = new contact();

            billToAddress.name         = "Bob";
            billToAddress.city         = "Lowell";
            billToAddress.state        = "MA";
            billToAddress.email        = "cnp.com";
            echeckcredit.billToAddress = billToAddress;
            echeckcredit.id            = "id";

            cnpBatchRequest.addEcheckCredit(echeckcredit);

            var echeckcredit2 = new echeckCredit();

            echeckcredit2.amount      = 12L;
            echeckcredit2.orderId     = "12346";
            echeckcredit2.orderSource = orderSourceType.ecommerce;
            var echeck2 = new echeckType();

            echeck2.accType      = echeckAccountTypeEnum.Checking;
            echeck2.accNum       = "1099999903";
            echeck2.routingNum   = "011201995";
            echeck2.checkNum     = "123456";
            echeckcredit2.echeck = echeck2;
            var billToAddress2 = new contact();

            billToAddress2.name         = "Mike";
            billToAddress2.city         = "Lowell";
            billToAddress2.state        = "MA";
            billToAddress2.email        = "cnp.com";
            echeckcredit2.billToAddress = billToAddress2;
            echeckcredit2.id            = "id";

            cnpBatchRequest.addEcheckCredit(echeckcredit2);

            var echeckredeposit = new echeckRedeposit();

            echeckredeposit.cnpTxnId = 123456;
            echeckredeposit.echeck   = echeck;
            echeckredeposit.id       = "id";

            cnpBatchRequest.addEcheckRedeposit(echeckredeposit);

            var echeckredeposit2 = new echeckRedeposit();

            echeckredeposit2.cnpTxnId = 123457;
            echeckredeposit2.echeck   = echeck2;
            echeckredeposit2.id       = "id";

            cnpBatchRequest.addEcheckRedeposit(echeckredeposit2);

            var echeckSaleObj = new echeckSale();

            echeckSaleObj.amount        = 123456;
            echeckSaleObj.orderId       = "12345";
            echeckSaleObj.orderSource   = orderSourceType.ecommerce;
            echeckSaleObj.echeck        = echeck;
            echeckSaleObj.billToAddress = billToAddress;
            echeckSaleObj.id            = "id";

            cnpBatchRequest.addEcheckSale(echeckSaleObj);

            var echeckSaleObj2 = new echeckSale();

            echeckSaleObj2.amount        = 123456;
            echeckSaleObj2.orderId       = "12346";
            echeckSaleObj2.orderSource   = orderSourceType.ecommerce;
            echeckSaleObj2.echeck        = echeck2;
            echeckSaleObj2.billToAddress = billToAddress2;
            echeckSaleObj2.id            = "id";

            cnpBatchRequest.addEcheckSale(echeckSaleObj2);

            var echeckPreNoteSaleObj1 = new echeckPreNoteSale();

            echeckPreNoteSaleObj1.orderId       = "12345";
            echeckPreNoteSaleObj1.orderSource   = orderSourceType.ecommerce;
            echeckPreNoteSaleObj1.echeck        = echeck;
            echeckPreNoteSaleObj1.billToAddress = billToAddress;
            echeckPreNoteSaleObj1.id            = "id";

            cnpBatchRequest.addEcheckPreNoteSale(echeckPreNoteSaleObj1);

            var echeckPreNoteSaleObj2 = new echeckPreNoteSale();

            echeckPreNoteSaleObj2.orderId       = "12345";
            echeckPreNoteSaleObj2.orderSource   = orderSourceType.ecommerce;
            echeckPreNoteSaleObj2.echeck        = echeck2;
            echeckPreNoteSaleObj2.billToAddress = billToAddress2;
            echeckPreNoteSaleObj2.id            = "id";

            cnpBatchRequest.addEcheckPreNoteSale(echeckPreNoteSaleObj2);

            var echeckPreNoteCreditObj1 = new echeckPreNoteCredit();

            echeckPreNoteCreditObj1.orderId       = "12345";
            echeckPreNoteCreditObj1.orderSource   = orderSourceType.ecommerce;
            echeckPreNoteCreditObj1.echeck        = echeck;
            echeckPreNoteCreditObj1.billToAddress = billToAddress;
            echeckPreNoteCreditObj1.id            = "id";

            cnpBatchRequest.addEcheckPreNoteCredit(echeckPreNoteCreditObj1);

            var echeckPreNoteCreditObj2 = new echeckPreNoteCredit();

            echeckPreNoteCreditObj2.orderId       = "12345";
            echeckPreNoteCreditObj2.orderSource   = orderSourceType.ecommerce;
            echeckPreNoteCreditObj2.echeck        = echeck2;
            echeckPreNoteCreditObj2.billToAddress = billToAddress2;
            echeckPreNoteCreditObj2.id            = "id";

            var echeckVerificationObject = new echeckVerification();

            echeckVerificationObject.amount        = 123456;
            echeckVerificationObject.orderId       = "12345";
            echeckVerificationObject.orderSource   = orderSourceType.ecommerce;
            echeckVerificationObject.echeck        = echeck;
            echeckVerificationObject.billToAddress = billToAddress;
            echeckVerificationObject.id            = "id";

            cnpBatchRequest.addEcheckVerification(echeckVerificationObject);

            var echeckVerificationObject2 = new echeckVerification();

            echeckVerificationObject2.amount        = 123456;
            echeckVerificationObject2.orderId       = "12346";
            echeckVerificationObject2.orderSource   = orderSourceType.ecommerce;
            echeckVerificationObject2.echeck        = echeck2;
            echeckVerificationObject2.billToAddress = billToAddress2;
            echeckVerificationObject2.id            = "id";

            cnpBatchRequest.addEcheckVerification(echeckVerificationObject2);

            var forcecapture = new forceCapture();

            forcecapture.amount      = 106;
            forcecapture.orderId     = "12344";
            forcecapture.orderSource = orderSourceType.ecommerce;
            forcecapture.card        = card;
            forcecapture.id          = "id";

            cnpBatchRequest.addForceCapture(forcecapture);

            var forcecapture2 = new forceCapture();

            forcecapture2.amount      = 106;
            forcecapture2.orderId     = "12345";
            forcecapture2.orderSource = orderSourceType.ecommerce;
            forcecapture2.card        = card2;
            forcecapture2.id          = "id";

            cnpBatchRequest.addForceCapture(forcecapture2);

            var saleObj = new sale();

            saleObj.amount      = 106;
            saleObj.cnpTxnId    = 123456;
            saleObj.orderId     = "12344";
            saleObj.orderSource = orderSourceType.ecommerce;
            saleObj.card        = card;
            saleObj.id          = "id";

            cnpBatchRequest.addSale(saleObj);

            var saleObj2 = new sale();

            saleObj2.amount      = 106;
            saleObj2.cnpTxnId    = 123456;
            saleObj2.orderId     = "12345";
            saleObj2.orderSource = orderSourceType.ecommerce;
            saleObj2.card        = card2;
            saleObj2.id          = "id";

            cnpBatchRequest.addSale(saleObj2);

            var registerTokenRequest = new registerTokenRequestType();

            registerTokenRequest.orderId       = "12344";
            registerTokenRequest.accountNumber = "1233456789103801";
            registerTokenRequest.reportGroup   = "Planets";
            registerTokenRequest.id            = "id";

            cnpBatchRequest.addRegisterTokenRequest(registerTokenRequest);

            var registerTokenRequest2 = new registerTokenRequestType();

            registerTokenRequest2.orderId       = "12345";
            registerTokenRequest2.accountNumber = "1233456789103801";
            registerTokenRequest2.reportGroup   = "Planets";
            registerTokenRequest2.id            = "id";

            cnpBatchRequest.addRegisterTokenRequest(registerTokenRequest2);

            var updateCardValidationNumOnToken = new updateCardValidationNumOnToken();

            updateCardValidationNumOnToken.orderId           = "12344";
            updateCardValidationNumOnToken.cardValidationNum = "123";
            updateCardValidationNumOnToken.cnpToken          = "4100000000000001";
            updateCardValidationNumOnToken.id = "id";

            cnpBatchRequest.addUpdateCardValidationNumOnToken(updateCardValidationNumOnToken);

            var updateCardValidationNumOnToken2 = new updateCardValidationNumOnToken();

            updateCardValidationNumOnToken2.orderId           = "12345";
            updateCardValidationNumOnToken2.cardValidationNum = "123";
            updateCardValidationNumOnToken2.cnpToken          = "4242424242424242";
            updateCardValidationNumOnToken2.id = "id";

            cnpBatchRequest.addUpdateCardValidationNumOnToken(updateCardValidationNumOnToken2);

//            fastAccessFunding fastAccessFunding = new fastAccessFunding();
//            fastAccessFunding.id = "A123456";
//            fastAccessFunding.reportGroup = "FastPayment";
//            fastAccessFunding.fundingSubmerchantId = "SomeSubMerchant";
//            fastAccessFunding.submerchantName = "Some Merchant Inc.";
//            fastAccessFunding.fundsTransferId = "123e4567e89b12d3";
//            fastAccessFunding.amount = 3000;
//            fastAccessFunding.token = new cardTokenType
//            {
//                cnpToken = "1111000101039449",
//                expDate = "1112",
//                cardValidationNum = "987",
//                type = methodOfPaymentTypeEnum.VI,
//            };
//            cnpBatchRequest.addfastAccessFunding(fastAccessFunding);

            cnp.addBatch(cnpBatchRequest);

            var batchName = cnp.sendToCnp();

            cnp.blockAndWaitForResponse(batchName, estimatedResponseTime(2 * 2, 10 * 2));

            var cnpResponse = cnp.receiveFromCnp(batchName);

            Assert.NotNull(cnpResponse);
            Assert.AreEqual("0", cnpResponse.response);
            Assert.AreEqual("Valid Format", cnpResponse.message);

            var cnpBatchResponse = cnpResponse.nextBatchResponse();

            while (cnpBatchResponse != null)
            {
                var authorizationResponse = cnpBatchResponse.nextAuthorizationResponse();
                while (authorizationResponse != null)
                {
                    Assert.AreEqual("000", authorizationResponse.response);

                    authorizationResponse = cnpBatchResponse.nextAuthorizationResponse();
                }

                var authReversalResponse = cnpBatchResponse.nextAuthReversalResponse();
                while (authReversalResponse != null)
                {
                    Assert.AreEqual("000", authReversalResponse.response);

                    authReversalResponse = cnpBatchResponse.nextAuthReversalResponse();
                }

                var giftCardAuthReversalResponse = cnpBatchResponse.nextGiftCardAuthReversalResponse();
                while (giftCardAuthReversalResponse != null)
                {
                    Assert.NotNull(giftCardAuthReversalResponse.response);

                    giftCardAuthReversalResponse = cnpBatchResponse.nextGiftCardAuthReversalResponse();
                }

                var captureResponse = cnpBatchResponse.nextCaptureResponse();
                while (captureResponse != null)
                {
                    Assert.AreEqual("000", captureResponse.response);

                    captureResponse = cnpBatchResponse.nextCaptureResponse();
                }

                var giftCardCaptureResponse = cnpBatchResponse.nextGiftCardCaptureResponse();
                while (giftCardCaptureResponse != null)
                {
                    Assert.NotNull(giftCardCaptureResponse.response);

                    giftCardCaptureResponse = cnpBatchResponse.nextGiftCardCaptureResponse();
                }


                var captureGivenAuthResponse = cnpBatchResponse.nextCaptureGivenAuthResponse();
                while (captureGivenAuthResponse != null)
                {
                    Assert.AreEqual("000", captureGivenAuthResponse.response);

                    captureGivenAuthResponse = cnpBatchResponse.nextCaptureGivenAuthResponse();
                }

                var creditResponse = cnpBatchResponse.nextCreditResponse();
                while (creditResponse != null)
                {
                    Assert.AreEqual("000", creditResponse.response);

                    creditResponse = cnpBatchResponse.nextCreditResponse();
                }

                var giftCardCreditResponse = cnpBatchResponse.nextGiftCardCreditResponse();
                while (giftCardCreditResponse != null)
                {
                    Assert.NotNull(giftCardCreditResponse.response);

                    giftCardCreditResponse = cnpBatchResponse.nextGiftCardCreditResponse();
                }

                var echeckCreditResponse = cnpBatchResponse.nextEcheckCreditResponse();
                while (echeckCreditResponse != null)
                {
                    Assert.AreEqual("000", echeckCreditResponse.response);

                    echeckCreditResponse = cnpBatchResponse.nextEcheckCreditResponse();
                }

                var echeckRedepositResponse = cnpBatchResponse.nextEcheckRedepositResponse();
                while (echeckRedepositResponse != null)
                {
                    Assert.AreEqual("000", echeckRedepositResponse.response);

                    echeckRedepositResponse = cnpBatchResponse.nextEcheckRedepositResponse();
                }

                var echeckSalesResponse = cnpBatchResponse.nextEcheckSalesResponse();
                while (echeckSalesResponse != null)
                {
                    Assert.AreEqual("000", echeckSalesResponse.response);

                    echeckSalesResponse = cnpBatchResponse.nextEcheckSalesResponse();
                }

                var echeckPreNoteSaleResponse = cnpBatchResponse.nextEcheckPreNoteSaleResponse();
                while (echeckPreNoteSaleResponse != null)
                {
                    Assert.AreEqual("000", echeckPreNoteSaleResponse.response);

                    echeckPreNoteSaleResponse = cnpBatchResponse.nextEcheckPreNoteSaleResponse();
                }

                var echeckPreNoteCreditResponse = cnpBatchResponse.nextEcheckPreNoteCreditResponse();
                while (echeckPreNoteCreditResponse != null)
                {
                    Assert.AreEqual("000", echeckPreNoteCreditResponse.response);

                    echeckPreNoteCreditResponse = cnpBatchResponse.nextEcheckPreNoteCreditResponse();
                }

                var echeckVerificationResponse = cnpBatchResponse.nextEcheckVerificationResponse();
                while (echeckVerificationResponse != null)
                {
                    Assert.AreEqual("957", echeckVerificationResponse.response);

                    echeckVerificationResponse = cnpBatchResponse.nextEcheckVerificationResponse();
                }

                var forceCaptureResponse = cnpBatchResponse.nextForceCaptureResponse();
                while (forceCaptureResponse != null)
                {
                    Assert.AreEqual("000", forceCaptureResponse.response);

                    forceCaptureResponse = cnpBatchResponse.nextForceCaptureResponse();
                }

                var registerTokenResponse = cnpBatchResponse.nextRegisterTokenResponse();
                while (registerTokenResponse != null)
                {
                    Assert.AreEqual("820", registerTokenResponse.response);

                    registerTokenResponse = cnpBatchResponse.nextRegisterTokenResponse();
                }

                var saleResponse = cnpBatchResponse.nextSaleResponse();
                while (saleResponse != null)
                {
                    Assert.AreEqual("000", saleResponse.response);

                    saleResponse = cnpBatchResponse.nextSaleResponse();
                }

                var updateCardValidationNumOnTokenResponse = cnpBatchResponse.nextUpdateCardValidationNumOnTokenResponse();
                while (updateCardValidationNumOnTokenResponse != null)
                {
                    Assert.AreEqual("823", updateCardValidationNumOnTokenResponse.response);

                    updateCardValidationNumOnTokenResponse = cnpBatchResponse.nextUpdateCardValidationNumOnTokenResponse();
                }

                cnpBatchResponse = cnpResponse.nextBatchResponse();
            }
        }
Ejemplo n.º 9
0
        public void TestSimpleBatchPgp()
        {
            _cnp = new cnpRequest(_config);
            batchRequest cnpBatchRequest = new batchRequest(_config);

            Console.WriteLine("Merchant Id:" + cnpBatchRequest.config["merchantId"]);
            Console.WriteLine("Merchant Username:"******"username"]);
            Console.WriteLine("Merchant Password:"******"password"]);
            Console.WriteLine("Length of Password:"******"password"].Length);
            var authorization = new authorization
            {
                reportGroup = "Planets",
                orderId     = "12344",
                amount      = 106,
                orderSource = orderSourceType.ecommerce
            };
            var card = new cardType
            {
                type    = methodOfPaymentTypeEnum.VI,
                number  = "4100000000000001",
                expDate = "1210"
            };

            authorization.card = card;
            authorization.id   = "id";

            cnpBatchRequest.addAuthorization(authorization);

            var authorization2 = new authorization();

            authorization2.reportGroup = "Planets";
            authorization2.orderId     = "12345";
            authorization2.amount      = 106;
            authorization2.orderSource = orderSourceType.ecommerce;
            var card2 = new cardType();

            card2.type          = methodOfPaymentTypeEnum.VI;
            card2.number        = "4242424242424242";
            card2.expDate       = "1210";
            authorization2.card = card2;
            authorization2.id   = "id";

            cnpBatchRequest.addAuthorization(authorization2);

            var reversal = new authReversal();

            reversal.cnpTxnId    = 12345678000L;
            reversal.amount      = 106;
            reversal.payPalNotes = "Notes";
            reversal.id          = "id";

            cnpBatchRequest.addAuthReversal(reversal);

            var reversal2 = new authReversal();

            reversal2.cnpTxnId    = 12345678900L;
            reversal2.amount      = 106;
            reversal2.payPalNotes = "Notes";
            reversal2.id          = "id";

            cnpBatchRequest.addAuthReversal(reversal2);

            var giftCardAuthReversal = new giftCardAuthReversal();

            giftCardAuthReversal.id       = "id";
            giftCardAuthReversal.cnpTxnId = 12345678000L;
            var giftCardCardTypeAuthReversal = new giftCardCardType();

            giftCardCardTypeAuthReversal.type           = methodOfPaymentTypeEnum.GC;
            giftCardCardTypeAuthReversal.number         = "4100000000000001";
            giftCardCardTypeAuthReversal.expDate        = "1210";
            giftCardAuthReversal.card                   = giftCardCardTypeAuthReversal;
            giftCardAuthReversal.originalRefCode        = "123456";
            giftCardAuthReversal.originalAmount         = 1000;
            giftCardAuthReversal.originalTxnTime        = DateTime.Now;
            giftCardAuthReversal.originalSystemTraceId  = 123;
            giftCardAuthReversal.originalSequenceNumber = "123456";

            cnpBatchRequest.addGiftCardAuthReversal(giftCardAuthReversal);

            var capture = new capture();

            capture.cnpTxnId    = 123456000;
            capture.amount      = 106;
            capture.payPalNotes = "Notes";
            capture.id          = "id";

            cnpBatchRequest.addCapture(capture);

            var capture2 = new capture();

            capture2.cnpTxnId    = 123456700;
            capture2.amount      = 106;
            capture2.payPalNotes = "Notes";
            capture2.id          = "id";

            cnpBatchRequest.addCapture(capture2);

            var giftCardCapture = new giftCardCapture();

            giftCardCapture.id            = "id";
            giftCardCapture.cnpTxnId      = 12345678000L;
            giftCardCapture.captureAmount = 123456;
            var giftCardCardTypeCapture = new giftCardCardType();

            giftCardCardTypeCapture.type    = methodOfPaymentTypeEnum.GC;
            giftCardCardTypeCapture.number  = "4100000000000001";
            giftCardCardTypeCapture.expDate = "1210";
            giftCardCapture.card            = giftCardCardTypeCapture;
            giftCardCapture.originalRefCode = "123456";
            giftCardCapture.originalAmount  = 1000;
            giftCardCapture.originalTxnTime = DateTime.Now;

            cnpBatchRequest.addGiftCardCapture(giftCardCapture);

            var capturegivenauth = new captureGivenAuth();

            capturegivenauth.amount  = 106;
            capturegivenauth.orderId = "12344";
            var authInfo = new authInformation();
            var authDate = new DateTime(2002, 10, 9);

            authInfo.authDate   = authDate;
            authInfo.authCode   = "543216";
            authInfo.authAmount = 12345;
            capturegivenauth.authInformation = authInfo;
            capturegivenauth.orderSource     = orderSourceType.ecommerce;
            capturegivenauth.card            = card;
            capturegivenauth.id = "id";

            cnpBatchRequest.addCaptureGivenAuth(capturegivenauth);

            var capturegivenauth2 = new captureGivenAuth();

            capturegivenauth2.amount  = 106;
            capturegivenauth2.orderId = "12344";
            var authInfo2 = new authInformation();

            authDate             = new DateTime(2003, 10, 9);
            authInfo2.authDate   = authDate;
            authInfo2.authCode   = "543216";
            authInfo2.authAmount = 12345;
            capturegivenauth2.authInformation = authInfo;
            capturegivenauth2.orderSource     = orderSourceType.ecommerce;
            capturegivenauth2.card            = card2;
            capturegivenauth2.id = "id";

            cnpBatchRequest.addCaptureGivenAuth(capturegivenauth2);

            var creditObj = new credit();

            creditObj.amount      = 106;
            creditObj.orderId     = "2111";
            creditObj.orderSource = orderSourceType.ecommerce;
            creditObj.card        = card;
            creditObj.id          = "id";

            cnpBatchRequest.addCredit(creditObj);

            var creditObj2 = new credit();

            creditObj2.amount      = 106;
            creditObj2.orderId     = "2111";
            creditObj2.orderSource = orderSourceType.ecommerce;
            creditObj2.card        = card2;
            creditObj2.id          = "id";

            cnpBatchRequest.addCredit(creditObj2);

            var giftCardCredit = new giftCardCredit();

            giftCardCredit.id           = "id";
            giftCardCredit.cnpTxnId     = 12345678000L;
            giftCardCredit.creditAmount = 123456;
            var giftCardCardTypeCredit = new giftCardCardType();

            giftCardCardTypeCredit.type    = methodOfPaymentTypeEnum.GC;
            giftCardCardTypeCredit.number  = "4100000000000001";
            giftCardCardTypeCredit.expDate = "1210";
            giftCardCredit.card            = giftCardCardTypeCredit;
            giftCardCredit.orderId         = "123456";
            giftCardCredit.orderSource     = orderSourceType.ecommerce;

            cnpBatchRequest.addGiftCardCredit(giftCardCredit);

            var echeckcredit = new echeckCredit();

            echeckcredit.amount      = 12L;
            echeckcredit.orderId     = "12345";
            echeckcredit.orderSource = orderSourceType.ecommerce;
            var echeck = new echeckType();

            echeck.accType      = echeckAccountTypeEnum.Checking;
            echeck.accNum       = "1099999903";
            echeck.routingNum   = "011201995";
            echeck.checkNum     = "123455";
            echeckcredit.echeck = echeck;
            var billToAddress = new contact();

            billToAddress.name         = "Bob";
            billToAddress.city         = "Lowell";
            billToAddress.state        = "MA";
            billToAddress.email        = "cnp.com";
            echeckcredit.billToAddress = billToAddress;
            echeckcredit.id            = "id";

            cnpBatchRequest.addEcheckCredit(echeckcredit);

            var echeckcredit2 = new echeckCredit();

            echeckcredit2.amount      = 12L;
            echeckcredit2.orderId     = "12346";
            echeckcredit2.orderSource = orderSourceType.ecommerce;
            var echeck2 = new echeckType();

            echeck2.accType      = echeckAccountTypeEnum.Checking;
            echeck2.accNum       = "1099999903";
            echeck2.routingNum   = "011201995";
            echeck2.checkNum     = "123456";
            echeckcredit2.echeck = echeck2;
            var billToAddress2 = new contact();

            billToAddress2.name         = "Mike";
            billToAddress2.city         = "Lowell";
            billToAddress2.state        = "MA";
            billToAddress2.email        = "cnp.com";
            echeckcredit2.billToAddress = billToAddress2;
            echeckcredit2.id            = "id";

            cnpBatchRequest.addEcheckCredit(echeckcredit2);

            var echeckredeposit = new echeckRedeposit();

            echeckredeposit.cnpTxnId = 123456;
            echeckredeposit.echeck   = echeck;
            echeckredeposit.id       = "id";

            cnpBatchRequest.addEcheckRedeposit(echeckredeposit);

            var echeckredeposit2 = new echeckRedeposit();

            echeckredeposit2.cnpTxnId = 123457;
            echeckredeposit2.echeck   = echeck2;
            echeckredeposit2.id       = "id";

            cnpBatchRequest.addEcheckRedeposit(echeckredeposit2);

            var echeckSaleObj = new echeckSale();

            echeckSaleObj.amount        = 123456;
            echeckSaleObj.orderId       = "12345";
            echeckSaleObj.orderSource   = orderSourceType.ecommerce;
            echeckSaleObj.echeck        = echeck;
            echeckSaleObj.billToAddress = billToAddress;
            echeckSaleObj.id            = "id";

            cnpBatchRequest.addEcheckSale(echeckSaleObj);

            var echeckSaleObj2 = new echeckSale();

            echeckSaleObj2.amount        = 123456;
            echeckSaleObj2.orderId       = "12346";
            echeckSaleObj2.orderSource   = orderSourceType.ecommerce;
            echeckSaleObj2.echeck        = echeck2;
            echeckSaleObj2.billToAddress = billToAddress2;
            echeckSaleObj2.id            = "id";

            cnpBatchRequest.addEcheckSale(echeckSaleObj2);

            var echeckPreNoteSaleObj1 = new echeckPreNoteSale();

            echeckPreNoteSaleObj1.orderId       = "12345";
            echeckPreNoteSaleObj1.orderSource   = orderSourceType.ecommerce;
            echeckPreNoteSaleObj1.echeck        = echeck;
            echeckPreNoteSaleObj1.billToAddress = billToAddress;
            echeckPreNoteSaleObj1.id            = "id";

            cnpBatchRequest.addEcheckPreNoteSale(echeckPreNoteSaleObj1);

            var echeckPreNoteSaleObj2 = new echeckPreNoteSale();

            echeckPreNoteSaleObj2.orderId       = "12345";
            echeckPreNoteSaleObj2.orderSource   = orderSourceType.ecommerce;
            echeckPreNoteSaleObj2.echeck        = echeck2;
            echeckPreNoteSaleObj2.billToAddress = billToAddress2;
            echeckPreNoteSaleObj2.id            = "id";

            cnpBatchRequest.addEcheckPreNoteSale(echeckPreNoteSaleObj2);

            var echeckPreNoteCreditObj1 = new echeckPreNoteCredit();

            echeckPreNoteCreditObj1.orderId       = "12345";
            echeckPreNoteCreditObj1.orderSource   = orderSourceType.ecommerce;
            echeckPreNoteCreditObj1.echeck        = echeck;
            echeckPreNoteCreditObj1.billToAddress = billToAddress;
            echeckPreNoteCreditObj1.id            = "id";

            cnpBatchRequest.addEcheckPreNoteCredit(echeckPreNoteCreditObj1);

            var echeckPreNoteCreditObj2 = new echeckPreNoteCredit();

            echeckPreNoteCreditObj2.orderId       = "12345";
            echeckPreNoteCreditObj2.orderSource   = orderSourceType.ecommerce;
            echeckPreNoteCreditObj2.echeck        = echeck2;
            echeckPreNoteCreditObj2.billToAddress = billToAddress2;
            echeckPreNoteCreditObj2.id            = "id";

            var echeckVerificationObject = new echeckVerification();

            echeckVerificationObject.amount        = 123456;
            echeckVerificationObject.orderId       = "12345";
            echeckVerificationObject.orderSource   = orderSourceType.ecommerce;
            echeckVerificationObject.echeck        = echeck;
            echeckVerificationObject.billToAddress = billToAddress;
            echeckVerificationObject.id            = "id";

            cnpBatchRequest.addEcheckVerification(echeckVerificationObject);

            var echeckVerificationObject2 = new echeckVerification();

            echeckVerificationObject2.amount        = 123456;
            echeckVerificationObject2.orderId       = "12346";
            echeckVerificationObject2.orderSource   = orderSourceType.ecommerce;
            echeckVerificationObject2.echeck        = echeck2;
            echeckVerificationObject2.billToAddress = billToAddress2;
            echeckVerificationObject2.id            = "id";

            cnpBatchRequest.addEcheckVerification(echeckVerificationObject2);

            var forcecapture = new forceCapture();

            forcecapture.amount      = 106;
            forcecapture.orderId     = "12344";
            forcecapture.orderSource = orderSourceType.ecommerce;
            forcecapture.card        = card;
            forcecapture.id          = "id";

            cnpBatchRequest.addForceCapture(forcecapture);

            var forcecapture2 = new forceCapture();

            forcecapture2.amount      = 106;
            forcecapture2.orderId     = "12345";
            forcecapture2.orderSource = orderSourceType.ecommerce;
            forcecapture2.card        = card2;
            forcecapture2.id          = "id";

            cnpBatchRequest.addForceCapture(forcecapture2);

            var saleObj = new sale();

            saleObj.amount      = 106;
            saleObj.cnpTxnId    = 123456;
            saleObj.orderId     = "12344";
            saleObj.orderSource = orderSourceType.ecommerce;
            saleObj.card        = card;
            saleObj.id          = "id";

            cnpBatchRequest.addSale(saleObj);

            var saleObj2 = new sale();

            saleObj2.amount      = 106;
            saleObj2.cnpTxnId    = 123456;
            saleObj2.orderId     = "12345";
            saleObj2.orderSource = orderSourceType.ecommerce;
            saleObj2.card        = card2;
            saleObj2.id          = "id";

            cnpBatchRequest.addSale(saleObj2);

            var registerTokenRequest = new registerTokenRequestType();

            registerTokenRequest.orderId       = "12344";
            registerTokenRequest.accountNumber = "1233456789103801";
            registerTokenRequest.reportGroup   = "Planets";
            registerTokenRequest.id            = "id";

            cnpBatchRequest.addRegisterTokenRequest(registerTokenRequest);

            var registerTokenRequest2 = new registerTokenRequestType();

            registerTokenRequest2.orderId       = "12345";
            registerTokenRequest2.accountNumber = "1233456789103801";
            registerTokenRequest2.reportGroup   = "Planets";
            registerTokenRequest2.id            = "id";

            cnpBatchRequest.addRegisterTokenRequest(registerTokenRequest2);

            var updateCardValidationNumOnToken = new updateCardValidationNumOnToken();

            updateCardValidationNumOnToken.orderId           = "12344";
            updateCardValidationNumOnToken.cardValidationNum = "123";
            updateCardValidationNumOnToken.cnpToken          = "4100000000000001";
            updateCardValidationNumOnToken.id = "id";

            cnpBatchRequest.addUpdateCardValidationNumOnToken(updateCardValidationNumOnToken);

            var updateCardValidationNumOnToken2 = new updateCardValidationNumOnToken();

            updateCardValidationNumOnToken2.orderId           = "12345";
            updateCardValidationNumOnToken2.cardValidationNum = "123";
            updateCardValidationNumOnToken2.cnpToken          = "4242424242424242";
            updateCardValidationNumOnToken2.id = "id";

            cnpBatchRequest.addUpdateCardValidationNumOnToken(updateCardValidationNumOnToken2);
            _cnp.addBatch(cnpBatchRequest);


            string batchName = _cnp.sendToCnp();

            //Check if the .xml batch request file exists inside "Requests" directory
            var requestDir  = _cnp.getRequestDirectory();
            var entries     = Directory.EnumerateFiles(requestDir);
            var targetEntry = Path.Combine(requestDir, batchName.Replace(".encrypted", ""));

            Assert.True(entries.Contains(targetEntry));

            // check if "encrypted" directory is present inside "Requests" directory
            var encryptedRequestDir = Path.Combine(requestDir, "encrypted");

            Assert.True(Directory.Exists(encryptedRequestDir));

            //Check if the .xml.encrypted batch request file exists inside "Requests/encrypted" directory
            entries     = Directory.EnumerateFiles(encryptedRequestDir);
            targetEntry = Path.Combine(encryptedRequestDir, batchName);
            Assert.True(entries.Contains(targetEntry));

            _cnp.blockAndWaitForResponse(batchName, estimatedResponseTime(2 * 2, 10 * 2));

            cnpResponse cnpResponse = _cnp.receiveFromCnp(batchName);

            //Check if the .xml batch response file exists inside "Responses" directory
            var responseDir = _cnp.getResponseDirectory();

            entries     = Directory.EnumerateFiles(responseDir);
            targetEntry = Path.Combine(responseDir, batchName.Replace(".encrypted", ""));
            Assert.True(entries.Contains(targetEntry));

            // check if "encrypted" directory is present inside "Responses" directory
            var encryptedResponseDir = Path.Combine(responseDir, "encrypted");

            Assert.True(Directory.Exists(encryptedResponseDir));

            //Check if the .xml.encrypted batch response file exists inside "Responses/encrypted" directory
            entries     = Directory.EnumerateFiles(encryptedResponseDir);
            targetEntry = Path.Combine(encryptedResponseDir, batchName);
            Assert.True(entries.Contains(targetEntry));

            Assert.NotNull(cnpResponse);
            Assert.AreEqual("0", cnpResponse.response);
            Assert.AreEqual("Valid Format", cnpResponse.message);

            var cnpBatchResponse = cnpResponse.nextBatchResponse();

            while (cnpBatchResponse != null)
            {
                var authorizationResponse = cnpBatchResponse.nextAuthorizationResponse();
                while (authorizationResponse != null)
                {
                    Assert.AreEqual("000", authorizationResponse.response);

                    authorizationResponse = cnpBatchResponse.nextAuthorizationResponse();
                }

                var authReversalResponse = cnpBatchResponse.nextAuthReversalResponse();
                while (authReversalResponse != null)
                {
                    Assert.AreEqual("000", authReversalResponse.response);

                    authReversalResponse = cnpBatchResponse.nextAuthReversalResponse();
                }

                var giftCardAuthReversalResponse = cnpBatchResponse.nextGiftCardAuthReversalResponse();
                while (giftCardAuthReversalResponse != null)
                {
                    Assert.NotNull(giftCardAuthReversalResponse.response);

                    giftCardAuthReversalResponse = cnpBatchResponse.nextGiftCardAuthReversalResponse();
                }

                var captureResponse = cnpBatchResponse.nextCaptureResponse();
                while (captureResponse != null)
                {
                    Assert.AreEqual("000", captureResponse.response);

                    captureResponse = cnpBatchResponse.nextCaptureResponse();
                }

                var giftCardCaptureResponse = cnpBatchResponse.nextGiftCardCaptureResponse();
                while (giftCardCaptureResponse != null)
                {
                    Assert.NotNull(giftCardCaptureResponse.response);

                    giftCardCaptureResponse = cnpBatchResponse.nextGiftCardCaptureResponse();
                }


                var captureGivenAuthResponse = cnpBatchResponse.nextCaptureGivenAuthResponse();
                while (captureGivenAuthResponse != null)
                {
                    Assert.AreEqual("000", captureGivenAuthResponse.response);

                    captureGivenAuthResponse = cnpBatchResponse.nextCaptureGivenAuthResponse();
                }

                var creditResponse = cnpBatchResponse.nextCreditResponse();
                while (creditResponse != null)
                {
                    Assert.AreEqual("000", creditResponse.response);

                    creditResponse = cnpBatchResponse.nextCreditResponse();
                }

                var giftCardCreditResponse = cnpBatchResponse.nextGiftCardCreditResponse();
                while (giftCardCreditResponse != null)
                {
                    Assert.NotNull(giftCardCreditResponse.response);

                    giftCardCreditResponse = cnpBatchResponse.nextGiftCardCreditResponse();
                }

                var echeckCreditResponse = cnpBatchResponse.nextEcheckCreditResponse();
                while (echeckCreditResponse != null)
                {
                    Assert.AreEqual("000", echeckCreditResponse.response);

                    echeckCreditResponse = cnpBatchResponse.nextEcheckCreditResponse();
                }

                var echeckRedepositResponse = cnpBatchResponse.nextEcheckRedepositResponse();
                while (echeckRedepositResponse != null)
                {
                    Assert.AreEqual("000", echeckRedepositResponse.response);

                    echeckRedepositResponse = cnpBatchResponse.nextEcheckRedepositResponse();
                }

                var echeckSalesResponse = cnpBatchResponse.nextEcheckSalesResponse();
                while (echeckSalesResponse != null)
                {
                    Assert.AreEqual("000", echeckSalesResponse.response);

                    echeckSalesResponse = cnpBatchResponse.nextEcheckSalesResponse();
                }

                var echeckPreNoteSaleResponse = cnpBatchResponse.nextEcheckPreNoteSaleResponse();
                while (echeckPreNoteSaleResponse != null)
                {
                    Assert.AreEqual("000", echeckPreNoteSaleResponse.response);

                    echeckPreNoteSaleResponse = cnpBatchResponse.nextEcheckPreNoteSaleResponse();
                }

                var echeckPreNoteCreditResponse = cnpBatchResponse.nextEcheckPreNoteCreditResponse();
                while (echeckPreNoteCreditResponse != null)
                {
                    Assert.AreEqual("000", echeckPreNoteCreditResponse.response);

                    echeckPreNoteCreditResponse = cnpBatchResponse.nextEcheckPreNoteCreditResponse();
                }

                var echeckVerificationResponse = cnpBatchResponse.nextEcheckVerificationResponse();
                while (echeckVerificationResponse != null)
                {
                    Assert.AreEqual("957", echeckVerificationResponse.response);

                    echeckVerificationResponse = cnpBatchResponse.nextEcheckVerificationResponse();
                }

                var forceCaptureResponse = cnpBatchResponse.nextForceCaptureResponse();
                while (forceCaptureResponse != null)
                {
                    Assert.AreEqual("000", forceCaptureResponse.response);

                    forceCaptureResponse = cnpBatchResponse.nextForceCaptureResponse();
                }

                var registerTokenResponse = cnpBatchResponse.nextRegisterTokenResponse();
                while (registerTokenResponse != null)
                {
                    Assert.AreEqual("820", registerTokenResponse.response);

                    registerTokenResponse = cnpBatchResponse.nextRegisterTokenResponse();
                }

                var saleResponse = cnpBatchResponse.nextSaleResponse();
                while (saleResponse != null)
                {
                    Assert.AreEqual("000", saleResponse.response);

                    saleResponse = cnpBatchResponse.nextSaleResponse();
                }
                cnpBatchResponse = cnpResponse.nextBatchResponse();
            }
        }