@Override public AuthorizationResult authorize(TransactionRequest transactionRequest, CreditCard creditCard) { return saleOrAuthorize(transactionRequest, creditCard, false); }
@Override public boolean canStoreCreditCards() throws IOException { try { return new WsVaultLocator().getwsVaultSoap().VERIFY_SERVICE( emptyStringIfNull(merchantId), emptyStringIfNull(merchantKey) ); } catch(ServiceException err) { throw new LocalizedIOException(err, accessor, "MerchantServicesProvider.canStoreCreditCards.ioException"); } catch(RemoteException err) { throw new LocalizedIOException(err, accessor, "MerchantServicesProvider.canStoreCreditCards.ioException"); } }
@Override public void deleteCreditCard(CreditCard creditCard) throws IOException { try { boolean success = new WsVaultLocator().getwsVaultSoap().DELETE_DATA( emptyStringIfNull(merchantId), emptyStringIfNull(merchantKey), emptyStringIfNull(creditCard.getProviderUniqueId()) ); if(!success) throw new LocalizedIOException(accessor, "MerchantServicesProvider.deleteCreditCard.notSuccessful"); } catch(ServiceException err) { throw new IOException(err); } catch(RemoteException err) { throw new IOException(err); } }
getProviderId(), TransactionResult.CommunicationResult.LOCAL_ERROR, TransactionResult.ErrorCode.CURRENCY_NOT_SUPPORTED.name(), ? new WsVaultBankcardLocator().getwsVaultBankcardSoap().VAULT_BANKCARD_SALE( emptyStringIfNull(merchantId), emptyStringIfNull(merchantKey), emptyStringIfNull(CreditCard.getFullName(creditCard.getFirstName(), creditCard.getLastName())), emptyStringIfNull(getStreetAddress(creditCard.getStreetAddress1(), creditCard.getStreetAddress2())), emptyStringIfNull(creditCard.getCity()), emptyStringIfNull(creditCard.getState()), emptyStringIfNull(creditCard.getPostalCode()), emptyStringIfNull(creditCard.getCountryCode()), emptyStringIfNull(creditCard.getEmail()), emptyStringIfNull(creditCard.getProviderUniqueId()), emptyStringIfNull(null), emptyStringIfNull(transactionRequest.getAmount().toString()), emptyStringIfNull(transactionRequest.getShippingAmount()==null ? null : transactionRequest.getShippingAmount().toString()), emptyStringIfNull(transactionRequest.getTaxAmount()==null ? null : transactionRequest.getTaxAmount().toString()), emptyStringIfNull(transactionRequest.getOrderNumber()), emptyStringIfNull(creditCard.getPhone()), emptyStringIfNull(creditCard.getFax()), emptyStringIfNull(CreditCard.getFullName(transactionRequest.getShippingFirstName(), transactionRequest.getShippingLastName())), emptyStringIfNull(getStreetAddress(transactionRequest.getShippingStreetAddress1(), transactionRequest.getShippingStreetAddress2())), emptyStringIfNull(transactionRequest.getShippingCity()), emptyStringIfNull(transactionRequest.getShippingState()), emptyStringIfNull(transactionRequest.getShippingPostalCode()), emptyStringIfNull(transactionRequest.getShippingCountryCode())
MessageElement[] results = new TRANSACTION_PROCESSINGLocator().getTRANSACTION_PROCESSINGSoap().BANKCARD_VOID( emptyStringIfNull(merchantId), emptyStringIfNull(merchantKey), emptyStringIfNull(transaction.getAuthorizationResult().getProviderUniqueId()) ).get_any(); if("APPROVAL_INDICATOR".equals(child.getNodeName())) approvalIndicator = getFirstChildNodeValue(child); if("CODE".equals(child.getNodeName())) code = getFirstChildNodeValue(child); if("MESSAGE".equals(child.getNodeName())) message = getFirstChildNodeValue(child); if("CVV_INDICATOR".equals(child.getNodeName())) cvvIndicator = getFirstChildNodeValue(child); if("AVS_INDICATOR".equals(child.getNodeName())) avsIndicator = getFirstChildNodeValue(child); if("RISK_INDICATOR".equals(child.getNodeName())) riskIndicator = getFirstChildNodeValue(child); if("REFERENCE".equals(child.getNodeName())) reference = getFirstChildNodeValue(child); if("ORDER_NUMBER".equals(child.getNodeName())) orderNumber = getFirstChildNodeValue(child); child = child.getNextSibling(); errorCode = convertErrorCode(code); providerErrorMessage = message; } else { errorCode = convertErrorCode(code); providerErrorMessage = message;
MessageElement[] results = new WsVaultLocator().getwsVaultSoap().INSERT_CREDIT_CARD_DATA( emptyStringIfNull(merchantId), emptyStringIfNull(merchantKey), emptyStringIfNull(creditCard.getCardNumber()), emptyStringIfNull(creditCard.getExpirationDateMMYY()) ).get_any(); if("SUCCESS".equals(child.getNodeName())) success = getFirstChildNodeValue(child); if("GUID".equals(child.getNodeName())) guid = getFirstChildNodeValue(child); if("MESSAGE".equals(child.getNodeName())) message = child.getFirstChild().getNodeValue(); child = child.getNextSibling();
MessageElement[] results = new WsVaultLocator().getwsVaultSoap().UPDATE_CREDIT_CARD_EXPIRATION_DATE( emptyStringIfNull(merchantId), emptyStringIfNull(merchantKey), emptyStringIfNull(creditCard.getProviderUniqueId()), emptyStringIfNull(CreditCard.getExpirationDateMMYY(expirationMonth, expirationYear)) ).get_any(); Node table1 = results[results.length-1].getFirstChild().getFirstChild(); Node child = table1.getFirstChild(); while(child!=null) { if("SUCCESS".equals(child.getNodeName())) success = getFirstChildNodeValue(child); if("GUID".equals(child.getNodeName())) guid = getFirstChildNodeValue(child); if("MESSAGE".equals(child.getNodeName())) message = getFirstChildNodeValue(child); child = child.getNextSibling();
MessageElement[] results = new WsVaultLocator().getwsVaultSoap().UPDATE_CREDIT_CARD_DATA( emptyStringIfNull(merchantId), emptyStringIfNull(merchantKey), emptyStringIfNull(creditCard.getProviderUniqueId()), emptyStringIfNull(cardNumber), emptyStringIfNull(CreditCard.getExpirationDateMMYY(expirationMonth, expirationYear)) ).get_any(); Node table1 = results[results.length-1].getFirstChild().getFirstChild(); Node child = table1.getFirstChild(); while(child!=null) { if("SUCCESS".equals(child.getNodeName())) success = getFirstChildNodeValue(child); if("GUID".equals(child.getNodeName())) guid = getFirstChildNodeValue(child); if("MESSAGE".equals(child.getNodeName())) message = getFirstChildNodeValue(child); child = child.getNextSibling();
@Override public SaleResult sale(TransactionRequest transactionRequest, CreditCard creditCard) { AuthorizationResult authorizationResult = saleOrAuthorize(transactionRequest, creditCard, true); return new SaleResult( authorizationResult, new CaptureResult( authorizationResult.getProviderId(), authorizationResult.getCommunicationResult(), authorizationResult.getProviderErrorCode(), authorizationResult.getErrorCode(), authorizationResult.getProviderErrorMessage(), authorizationResult.getProviderUniqueId() ) ); }