Skip navigation
All Places > In the News > Blog
1 2 3 Previous Next

In the News

153 posts

 Gaming and Payments: Trends, Adoption, and Technology

 

With a mix of opportunities and challenges on the horizon, the mobile and online gaming industry is continuing to evolve in response to an ever-changing regulatory environment. Other considerations include tech advancements in gaming and audiences with diverse, shifting expectations about their gaming experiences.

 

The continued consolidation among gaming industry companies is in response to the ongoing pressure to maintain a competitive advantage through spending considerable resources. To identify how to stand out in this complex gaming environment, many gaming companies are exploring ways to enhance the user experience, including payments. The payment component is critical to achieving a new level of seamless convenience.

 

That’s why Worldpay has put together a global gaming and payments report, which includes a survey of 16 countries for an international view of integrated payments within mobile and online gaming applications.

 

The Gaming Market’s Impact on You

 

U.S. gaming markets that are set to experience significant growth this year include state lottery gaming, casino and resort gaming, sports and eSports betting, and online gaming.

 

Each of these U.S. gaming markets are prime examples of creating more transactional velocity and brand affinity through omni-channel gaming offerings. In each of these gaming markets, players are looking at how to expand their physical, mobile, and online opportunities, while maintaining and growing their customers across all channels.

 

Within these gaming markets, payment trends are critical to watch as they reflect a larger transition to how consumers expect to pay. For example, eWallet will grow from 20 percent of gaming payments in 2018 to 33 percent in 2022. Meanwhile, credit cards will decrease from 34 percent of gaming payments in 2018 to 27 percent in 2022, while debit card gaming payments will remain the same at 19 percent now and through 2022.

 

Drivers Behind Changes in Gaming and Payments

 

The drivers of today’s gaming and payments trends are the same changes occurring in the larger payment landscape. Two of these drivers include the Now Economy and millennial audiences.

 

The Now Economy has completely changed customer expectations. When businesses began to enable the ability to spend money anytime, anywhere, consumers responded in droves to companies that could do business whenever and wherever the customer had an internet connection and money to spend. This immediacy for payments is critical in an industry like gaming where timing is everything when placing a bet, as well as receiving game winnings.

 

That means gaming operators need to have payment processes that are seamless by removing bad friction that slows transactions and could hurt the betting and the gaming experience. Even if these gaming customers want immediate payment capability, they don’t want to hedge their bets on an unsecured process that does not use tools like user authentication.

 

millennial trends in gaming

 

Second, the millennial demographic is driving many of the changes in the gaming industry. As they become a greater force as a gaming customer segment, millennials are applying the same expectations as they do to other customer experiences like with the retail environment. Those expectations involve personalized gaming experiences with payment options that align with the convenience level they receive in other aspects of their lives.

 

Growing up in a digital environment where information is readily accessible, millennials have amassed a large amount of knowledge related to anything they engage with, including gaming. In fact, they know more about odds, games, and gaming providers compared to other customer segments. If they think the odds aren’t in their favor with a particular game like slots, then they will opt for a more skills-based game with better odds. And, if a gaming provider doesn’t meet their expectations, millennial users will switch to one of many other available gaming apps and providers.

 

To address player expectations around personalization, a gaming provider has to know each player’s preference. With more players opting to use mobile applications, it’s critical to offer fast, secure payment options. With eWallets, a gaming provider can leverage multiple layers of security, such as encryption, tokenization, and device authentication, while keeping payments seamless

 

The Role of the Developer in Gaming and Payments

 

Developers can address these trends by making the payment process “disappear” while also offering these alternative payment methods like eWallets that players use in other aspects of their lives.

 

To offer a personalized experience, developers are an integral part of creating a payment acceptance strategy that includes numerous payment methods -- credit and debit cards, direct debit, and mobile wallets -- and many currencies to reach players beyond U.S. borders.

 

Also, developers can help enable fast payments and payouts. From placing a bet to collecting winnings, an exceptional gaming experience involves speed and access. For example, Visa Direct enables FastAccess Funding, which delivers real-time (under 30 minutes) payments compared to standard payout times of between two and five days.

                                                                                                                                             With 59 percent of Mobile Payment Journey participants stating they would switch payment methods if it means a faster payout, we expect rapid player adoption of FastAccess Funding.

 

A New Era

 

Evolving player expectations, advancing technology, and changing regulations have led to a new era for payments and gaming. Players have unparalleled freedom and flexibility to play and pay in the most convenient way.

 

Offering a seamless payment process that integrates traditional and digital methods heightens the gaming experience and enhances customer loyalty. Worldpay will address the inevitable changes in gaming and payments as well as support your efforts to meet your customers’ expectations.

 

To learn more about the state of gaming and payment trends, download your copy of our new report here: https://www.worldpay.com/global/insight/articles/2019-02/global-gaming-payments-report.

In an increasingly complex environment of payments, we offer a wider range of tools and platforms to help you meet your payment integration objectives. In addition to our other payment solutions, we offer MercuryPay. Here’s what it does for your payment processing needs and how to get started.

 

What is MercuryPay?

 

MercuryPay is a highly scalable payment processing platform. To ensure your application integrates with this platform, you get access to the MercuryPay Integration Suite, which is a comprehensive set of integration methods, tools, and services. This suite’s integration capabilities help minimize the complexity involved in ensuring PA-DSS payment compliance and facilitates EMV card brand certifications.

 

As a flexible platform, MercuryPay offers multiple integration approaches, so you can find the one that fits your business type, target market, payment integration method, and operating system. You can also choose an approach that aligns with specific requirements for security measures.

 

The Benefits of Using MercuryPay

 

In addition to the ability to address numerous compliance issues related to payments and the customization features, there are other reasons why it’s beneficial to consider MercuryPay.

 

getting started with mercurypay

 

MercuryPay supports many industries and verticals, including retail and eCommerce, restaurant and lodging, automotive, healthcare, warehousing, and service-oriented businesses.

 

There are numerous toolkits available to you to create in-store, mobile, and eCommerce applications for a wide range of payment types that you can use in your business. Built on industry standards, there are many payment middleware solutions we offer that are available for testing in an integrated sandbox with simulators.

 

Here are some your options:

  • The dsiPDCX with the dsiEMVUS solution provides merchants with feature-rich payment options that use tokenization and end-to-end encryption for enhanced security. You can easily integrate additional hardware and features as well as provide EMV support for contact and contactless transactions. This payment middleware solution also allows for all types of payment acceptance, such as credit cards, PIN debit cards, EBT, FSA, and more.

 

  • Combining the reliability of Datacap Systems with the platform performance of MercuryPay, TranCloud is the ideal choice if you need to develop a payment integration process for accepting EMV-ready payments. Its payment and hardware hub can adapt to meet the needs of most point-of-sale (POS) providers. This particular payment middleware solution is optimized for tablet and browser-based applications that use HTTP POST in XML or JSON format.

 

  • HostedCheckout supports manual transactions for eCommerce by handling sensitive credit card data. Whether it’s from a merchant’s website, mobile device, or a POS system, online payment transactions are seamlessly handled by this hosted solution.

 

Getting Started with MercuryPay

 

To start enjoying the benefits offered by MercuryPay, your first step is to create a test account.  We have a range of production-simulated accounts that you can use to code, test, and certify your payment integration with the MercuryPay Processing Platform.

 

You’ll start with creating a test account by configuring the test server addresses that corresponds to your payment integration method.

 

Then, select a test MerchantID that fits your supported functionality. MerchantIDs are configured with specific processing functionality, such as E2E, Tokenization, both E2E and Tokenization, or neither.  

 

certification network server addresses

test merchant IDs

The test accounts listed above are for general testing and available for use. If you are testing multiple products or are ready to certify your payment integration process, we can set-up personalized accounts for further validation.

 

You can also find information on Worldpay Integrated Payments Test Cards for card-present transaction testing.  Contact certification@vantiv.com if you want to get test cards and test equipment.

 

Additional Support Available

 

As with all of our products for developers, we have an array of support resources that can provide help with MercuryPay and your payment integration work.

 

This includes asking others in our developer community here: https://developer.vantiv.com/community/help-and-getting-started

 

Of course, we would also like to hear from you so you can reach out to us here: https://developer.vantiv.com/community/help-and-getting-started/main-contact-us

 

Learn More About MercuryPay

 

Our document library for developers offers extensive information on MercuryPay and other payment integration platforms and tools. Check out the MercuryPay platform here: https://developer.vantiv.com/docs/DOC-1252.

dayo

Access Worldpay People

Posted by dayo Jun 4, 2019

Access Worldpay is a project run by developers for developers. At the centre are smart, spirited and supportive people.

Our developers have created a set of new APIs that uses JSON, Hypermedia and HATEOS, which offer a fast and simple integration to fault-tolerant and scalable services (learn more about our APIs here).

 

What's behind the doors of Access Worldpay?

 

The project kicked off in 2016 from our London and Cambridge offices. The vision? Creating an easy-to-use platform, powered by our engineers.

 

In 2018 we merged with Vantiv, and the doors opened for collaborations of many different teams across the ocean. Our colleagues in the US had been working on micro-services that offered an excellent opportunity when combined with our Access Worldpay product. This resulted in a unique and inclusive way of working together.

 

Our engineering squads are responsible for the design, build, release and operation of our APIs and services. This allows for full end-to-end control of the product but also gives people opportunities to grow as teams and individuals.
By creating autonomous squads, our squads are accountable for progress, which makes the project highly flexible.

 

Teams are working on an API set that is not only the industry standard but also uses a full REST maturity model. Our aim is to build a quality service, guaranteeing 100 percent uptime.

Living by the principles such as: “If it’s not tested, it’s broken”, our approach to testing, and “Requirements before solutions” means that our APIs and services are quality-assured throughout the development lifecycle.

 

What’s coming next:

 

We want you to meet and get to know the people behind Access Worldpay. In the coming weeks, we will be publishing a number of articles. This will include interviews relating to method, processes, and principles we use in and out of development. You can expect to read about topics such as Test Driven Development (TDD), our approach to Shift-left in QA, Growing in Breath and Depth and many more, stay tuned.

The state of crypto payment processing

 

By now, you've probably heard all about cryptocurrency, Bitcoin and Blockchain. It’s been a decade since Bitcoin sprang into existence, and Bitcoin paved the way for thousands of other cryptocurrencies (altcoins, in crypto slang). Amid all the cryptocurrency hype, it can be hard to keep track of what is actually happening in the strand of the cryptocurrency ecosystem that is perhaps most important to crypto's long-term survival: payment processing.

 

That's why developers may find themselves asking questions like these: How easy is it to set up an app to start accepting payments in Bitcoin or other cryptocurrencies? How many payment processing vendors support crypto? What does the process for integrating crypto payments into an app look like, and is it as easy as setting up payment processing in your app for fiat (i.e., traditional) currency?

 

If you think these questions don't matter, think again. There are a number of reasons for accepting payments from customers in cryptocurrency. Accepting crypto payments helps you reach a larger number of customers, especially in countries where certain types of traditional payment options are not widely supported. Crypto payments can also help to cut down on bank charges for both vendors and customers. And supporting crypto can help apps to stand out in crowded markets, just because of the buzz factor.

 

With this context in mind, this article surveys the state of cryptocurrency payment processing by evaluating available solutions and discussing what remains to be done to make crypto payment easier to integrate into applications.

 

Cryptocurrency Payment Processing Options

 

The payment processing solutions available for processing crypto payments are far outnumbered by those for processing fiat currency. The reason is quite obvious: Bitcoin and other cryptocurrencies are still in their infancy. A lot is left to be done to make crypto mainstream, especially when it comes to transaction times.

 

That said, there are certainly crypto payment processors out there. In no particular order, here are some popular options available to developers who want to integrate crypto payments into their apps.

 

  • Coinbase

Coinbase is a popular choice when it comes to cryptocurrency payment processing. In fact, it is one of the world’s largest Bitcoin exchanges, with some 20 million users and over $150 billion already traded on the platform.

 

Coinbase makes it possible to quickly begin receiving cryptocurrency payments (Bitcoin, Litecoin, Bitcoin Cash, Ethereum) without having to pay any fees to accept crypto. Coinbase offers a variety of payment options. They include e-commerce plugins, libraries (Python, Ruby, Node.js, PHP), and SDKs (Android, iOs, Unity). Coinbase’s options make it a great choice for crypto payment processing for virtually any kind of app.

  

  • BitcoinPay

BitcoinPay makes it easy and inexpensive to start accepting Bitcoin payments. BitcoinPay offers developers several payment processing integration options to cater to any use case: API & Button, mail, point of sale, and e-commerce plugins (WooCommerce, OpenCar, Magento, and PrestaShop). BitcoinPay’s API gives developers “superpowers” by allowing developers to customize the payment process to suit their needs. And e-commerce plugins make it seamless to integrate into an e-commerce platform.

  

  • CoinGate

CoinGate processes Blockchain payments. That means it is not only limited to Bitcoin payments. It supports Litecoin, Ethereum, Dash, Golem, and several other cryptocurrencies. It offers integration options including e-commerce plugins, Bitcoin point of sale, Bitcoin payment API, and payment buttons. In addition, CoinGate charges low fees when withdrawing in fiat currency, such as USD or EUR.

  

  • CoinPayments

CointPayments is yet another cryptocurrency payment gateway that supports payments for Bitcoin and several other popular altcoins. Like the others, it offers e-commerce plugins, for even more e-commerce platforms. And CoinPayments offers many integration options that make payment even more simple: donation buttons, shopping cart button & plugin, invoice builder, API, Instant Payment Notification System (IPN), etc.

 

The cryptocurrency processors we’ve seen so far offer very similar integration options, distinguishing themselves in only a few places, such as the number of supported cryptocurrencies. Setting up your app to accept cryptocurrency payments using any of these solutions is akin to setting up payment processing for fiat currency.

 

What Remains to Be Done for Cryptocurrency Payments

Integrating and accepting cryptocurrency payments in applications is certainly possible, but there is still much to be done to make integration more seamless.

 

One major challenge is keeping cryptocurrency safe. In most cases, crypto transactions are irreversible, meaning that recovering funds from a fraudulent (or even just accidental) transaction is virtually impossible. This challenge requires developers to build extra safeguards into applications to ensure that each crypto transaction is valid before it begins.

 

Equally important is the payment processing time. With fiat payments, payments are processed within a few seconds and reflect in your account immediately. Cryptocurrency, however, takes longer to process, sometimes failing unexpectedly as a result. Certain cryptocurrencies are working to address this challenge, but Bitcoin, which remains the most popular cryptocurrency by far, takes very long to process — sometimes hours. Developers must also think about how to make sure their apps can accommodate very long transaction times, and make sure users remain aware of the state of a transaction until it is fully complete.

 

Final Thoughts

Even with the challenges inherent in cryptocurrencies that impede their widespread adoption, cryptocurrency payment processing, in general, is improving. Remember that the sector is barely a decade old; yet, there’s been so much innovation in a rather short time. Will crypto payment integration catch up with fiat payment integration? Probably, although it will certainly take some time before integrating crypto into your app is as easy as supporting fiat currency transactions using a simple solution like WorldPay's APIs.

 

Check out: Worldpay's Card-to-Crypto Exchange 

zacharyflower

New Trends in IDEs

Posted by zacharyflower May 14, 2019

As advances have been made in the practice of software development, it should come as no surprise that the tools we use to actually develop said software have evolved drastically as well. While everything from language improvements to testing advancements have been seen in recent years, one of the less "sexy," yet most important changes has been to the integrated development environments — more commonly known as IDEs — that developers rely on to actually write their code.

 

Now, don't get me wrong. Some of the most popular IDEs on the market today have been around for literally decades (I'm looking at you, VI), but even the forefathers of our modern-day code editors have received recent updates that more appropriately reflect the current state of software development.

 

new trends in IDEs

 

With this in mind, let’s take a look at some of the exciting changes that have impacted IDEs in the past few years.

 

Integrated Development Environments

 

It's no secret that the world is becoming more connected. As companies and developers alike have embraced the cloud, entirely new industries have been built. A great example of this is cloud-based version control services like GitHub, GitLab, and Bitbucket. Hosting your own source code repository is no longer a requirement for the majority of projects, which has led to more effective project management and collaboration through the additional features offered by these newer cloud-based services. Because of this shift in responsibilities, many IDEs have implemented features that integrate directly with these — and more — services, allowing for an increase in focus and a reduction in context switching when interacting with things like pull/merge requests, issue tickets, and even communication platforms.

 

To Pair (Or Not to Pair)

 

A side benefit of having such hyper-connected development environments is the enablement of remote teams. Organizations that have embraced the concept of pair programming no longer have to expect employees to be in the same room in order to work together. Many IDEs now offer functionality that allow multiple developers to work on the same set of code from entirely separate computers. While there are obvious benefits to this feature to be gained from within the same room, providing an avenue for remote teams to better collaborate is an excellent way to not only encourage remote work, but to embrace it.

 

While a number of IDEs offer support for remote pair programming, a great example in practice is Visual Studio Live Share. Live Share is a great remote collaboration tool within the Visual Studio IDE; however, it takes collaboration a step further by offering additional features like audio calls, group debugging, and even shared servers for privately viewing web applications and databases without exposing them to the Internet.

 

Cloud IDEs

 

Not every IDE lives on one single computer. To better facilitate consistency between development environments, several newer IDEs live entirely in the cloud. While the learning curve here can be a bit steep at first (every developer has a preferred IDE and different settings requirements), the primary advantage to cloud-based IDEs is a drastic reduction in resource requirements. When your development environment lives in the cloud, your working machine requires significantly fewer resources, which can in turn mean significant cost-savings for development machines.

 

While Cloud9 paved the way for cloud-based IDEs, an impressive contender with a free tier and self-hosted option is Codenvy. Recently acquired by Red Hat, Codenvy is a Docker-driven IDE built with developers in mind. A particularly useful feature of Codenvy is their cross-platform IDE support, allowing developers to use the tools that they are most comfortable with while syncing changes back to Codenvy for any additional work needed in the cloud.

 

Plug It In

 

While plugins and add-ons are hardly new, their rate of adoption by the open source community over the past several years has skyrocketed. Companies have started to create official plugins to improve the usability of their developer-focused services, while individual contributors can create much more tightly integrated environments with the services they choose to use. This allows for thinner, more performant IDEs that can be expanded to include only the functionality required by the end-user, rather than the historically robust IDEs that require significantly more resources to run.

 

Between Visual Studio Code and Atom alone — two of the most popular IDEs for web developers — the marketplace for IDE plugins is vast. With countless themes and color schemes, third-party integrations, and support for just about every programming language ever invented, plugins are an excellent way for developers to customize every inch of their IDE to create their perfect working environment.

 

Continuous Improvement and Your IDE

 

All of the above highlight how IDEs have become even better tools for developers in recent years. By way of parting, though, I’d like to emphasize that there remains even more that could be done — and will be. Don’t expect your IDE to stop evolving. Going forward, I suspect we’ll see features like more advanced predictive text suggestions or deeper integrations with external services in IDEs as the tools help developers write code even faster, more accurately and with less fuss.

 

Worldpay's 2018 Global Payments Report offers a comprehensive overview of the ways global consumers pay, from Argentina to Vietnam and everywhere in between. We took a look at 4 high potential emerging eCommerce markets in the 2018 report: India, China, Russia, and Brazil.

 

Worldpay ONE took a look at 4 emerging eCommerce markets: India, China, Russia, and Brazil to provide takeaways for developers looking to take their eCommerce business global. We looked at alternative payments and eWallets, cross-border eCommerce, and changing trends in the largest consumer markets (China and India are growing quickly).

 

Are you ready to expand your eCommerce business into new markets? Discover what tech trends and tech regulations you need to stay on top of with the Worldpay ONE Global Developer Insights report

Our top question (with over 1,000 views!) of the month comes from eegorov on sending a TransactionQuery request: 

 

Check out Evgeniy's question and our answer here. 

 

 

If you ask or answer a question that helps our community members, you're automatically entered into a monthly contest for a $25 Amazon gift card! 

Financial account data is considered to be some of the most important and sensitive data in existence. And in today’s world, it is also among the most commonly requested data on the Internet. Let’s face it — everybody shops online. And online shopping requires merchants to request payment data from the shopper. This presents inherent risks associated with providing financial data using online forms. It is due to these risks that a high importance has been placed on protecting user payment data.

 

what-eProtect-does-to-protect-payments-data

 

So, how can we reduce the risk of compromising account data and ensure a positive experience for users visiting an online store? WorldPay has the solution in the form of eProtect.

 

WorldPay eProtect provides merchants with a solution for card-not-present processing risks, allowing the merchant to protect shopper payment data, and providing application developers with several API solutions that are both secure and easy to implement.

 

This article walks through what eProtect does and how it works.

What is eProtect and how does it protect account data?

 

As mentioned above, WorldPay eProtect is a solution for reducing the risks associated with card-not-present (cnp) payment processing. But you may be wondering exactly how it reduces these risks. WorldPay eProtect assumes the responsibility for protecting payment data through several solutions. These include hosting the fields that hold this payment data, as done through use of the iFrame API, or through calls on form submit to the eProtect JavaScript API that passes the payment information from form fields hosted on the application web server to the eProtect server for processing. In short, through the use of an eProtect API, the transmission of sensitive data by the application web server is rather limited.

 

For our purposes, let’s take a closer look at the eProtect iFrame API. Through the use of this API, the fields that will hold sensitive account data are embedded on the page using an iFrame. This iFrame is hosted by the eProtect server. When the user submits the account data (card number, CVV value, expiration date), this data is submitted to the eProtect server rather than transmitted via your own web server.

This eProtect server is a PCI-compliant environment to ensure data security. The moment eProtect receives the card data, it triggers a cnpAPI call to register a token with the Vault where the account data is securely stored. It is this token that will be used for retrieving account data when the payment is processed. The eProtect server then returns a registration ID to the web page. Finally, when the actual payment has been authorized, the registration ID and payment information is sent to the Vault. The Vault then uses this registration ID to efficiently find the token and card number, and processes the payment securely. This transaction simply returns the previously registered token that can be stored by the client as they would card data. This ensures that no actual account data is stored by the client, significantly reducing the risk of an issue due to compromised user account information.

 

Implementing eProtect from WorldPay

 

One of the most encouraging parts of utilizing eProtect from WorldPay is the ease in which the solution can be implemented in a web application. Sticking with the iFrame API solution that we discussed above, let’s take a look at some sample code where an iFrame running code hosted by the eProtect server is embedded in a payment page in a web application to allow account data to be processed via the secure, PCI-compliant eProtect environment.

 

The first step in implementing the iFrame solution from eProtect is to include the jQuery library. After that, we also need to ensure that we have included the client JavaScript for the eProtect iFrame API. This is done by adding a script tag to download the JS from the following URL:

 

https://request.eprotect.vantivprelive.com/eProtect/js/eProtect-iframe-client.min.js

 

It should be noted that this URL is not for production use. For the sake of this example, I utilized the “pre-live” URL from the eProtect documentation.

 

The final steps from an HTML perspective are as follows. We will need to include the div element representing the iFrame to be embedded on the web page. In the screenshot of the sample code, you can see that it is assigned the ID attribute iFrameElem. This will be important when configuring the iFrame via custom JavaScript. In addition, we need to include form fields for holding attributes of the response from the eProtect service. Hidden fields such as that shown below in the screenshot (input with ID attribute response$paypageRegistrationId) are added to the form to assign values with the JavaScript. And finally, we need to provide ourselves with a spot to write some custom JS for instantiating the iFrame and handling the response. We do so by creating impl.js to properly configure the iFrame.  Finally, we download this custom JS file as represented by the last script tag in the head container of our HTML file.

 

eProtect code 1

 

In the custom JavaScript associated with the example, two important actions need to take place. First, the iFrame needs to be configured so that it can be properly added to the checkout page. Next, the response from the eProtect server must be handled to retrieve what is known as the paypageRegistrationId — the registration ID that will be sent with payment information to the Vault post-authorization to map to the account data and process the payment.

 

In configuring the iFrame, several properties are required. These required properties include the following:

  • paypageId - ID value provided by WorldPay
  • reportGroup - required by cnpAPI for reporting purposes
  • style - Custom CSS for styling the iFrame
  • timeout - Allotted time in milliseconds before the call times out
  • div - ID value of the HTML div where the iFrame is embedded (in our case: iFrameElem)
  • callback - the function to call for handling the response from the eProtect server

 

Please see the screenshot below for the portion of impl.js representing the configuration of the iFrame. Notice the line that instantiates iFrameElem passing the configuration JSON to construct the iFrameElem object.

 

 eProtect 2

 

The next step in the process is to handle the response from eProtect in our callback function. In our particular example, this is the function called iFrameElemCallback. A key element in the callback response is the paypageRegistrationId as that is what will be used by the cnpAPI to locate the associated token and card information in the Vault when processing the actual payment.

 

In the screenshot below, you will see the defined callback function. This is used to check the response code, handle the response data, and submit the form. The snippet below shows the first two steps. The hidden form field for paypageRegistrationId has the value set after we check and find that the call to eProtect has been successful. Other attributes of the response object can be handled in the same manner. This success response is defined by the response code 870, which we check for prior to setting the hidden form field value and submitting the form. Additional response codes and additional information on the response object from the eProtect service can be found in the eProtect online documentation.

 

 eProtect 3

Conclusion

 

Storing payment data that is later compromised is among the worst possible events that can happen to an Internet merchant. It damages the trust necessary for a merchant to be successful. WorldPay eProtect can help in mitigating the risks associated with collecting payment data, ensuring that shoppers have a positive experience and feel comfortable engaging in future transactions.

In part one of this two-part series, we highlighted five critical payment integration questions for the development team.

 

These questions looked at data security, integration capability, the ability to scale and access to support. Answers from the development team provide a way to plan and work with a payment solution provider. There are more questions to consider for your payment integration.

 

five additional questions to ask developers

 

Let’s look at five more critical questions to ask the development team:

 

1) Does the payment integration technology provider have a testing platform?

Worldpay has a developer sandbox that serves as a secure testing platform for card payments, a wide range of currencies and alternative payment options.

 

The sandbox offers simulators so developers can create mock retail orders to test every aspect of the payment lifecycle -- from payment submission to authorization and capture to settlement or refund.

 

During the testing process, developers can include various payment parameters like payment outcome. Throughout the simulations, developers can also gauge shopper payment flow. Knowing how to address different shopper volume levels can help the company design a payment processing system that delivers an enhanced customer experience.

 

Developers can also use magic values in Worldpay’s sandbox. These values represent specific payment parameters added to an XML order. Using one or more of these magic values accelerates the testing process.

 

2) How do Worldpay’s features and benefits compare to payment industry competitors?

From helping small businesses to enterprises, Worldpay’s payment solution is a comprehensive product suite. Depending on the complexity of your business, the development team has the possibility to implement a wide range of features to realize significant benefits. 

 

Worldpay enables smarter, faster, and easier payment processing with alternative payment methods, cross-border payments, gateway services, fraud and risk management, omni-channel, treasury services, and more. 

 

For small businesses, including pop-up shops and kiosk businesses, there are many features to help the connected consumer buy anytime, anywhere. Payment acceptance options include terminals and POS systems, mobile payments, credit cards, gift cards, and prepaid cards.

 

Enterprises share some of the same needs as small businesses, but they also have other requirements that Worldpay understands. These advantages offer frictionless, on-demand payments for in-store and online environments across all card types.

 

Beyond delivering a full feature set for all types of businesses, Worldpay ensures a secure payment environment. Working as both a gateway and acquirer means we own and operate the entire payment journey. Data is not lost during any touchpoint due to the greater level of control. Proprietary in-house fraud tools bolster payment and data security.

 

3) Why do some payment integration processes take longer than others? Which features take the longest to integrate?

Security compliance complexity impacts payment integration timing. The degree of customization a company needs may also affect the process.

 

Developers can provide guidance on delays to better inform the team on payment integration progress. They can test available fraud protection and screening tools.

 

To gain some momentum, developers can leverage Worldpay’s range of APIs for every business type. For example, JSON API is our newest offering and includes a combination of rich payment features and alternative payment options.

 

XML API is a comprehensive API designed for global enterprises that seek advanced card payment features, alternative payment options and enhanced functionality and granular control. Small business can use HTML API to enjoy hosted payment pages. In each case, these payment integration APIs can improve the timeline.

 

4) Are mobile wallet capabilities worth adding to our payment integration platform?

Mobile wallets usage in the U.S. has surpassed debit cards by seven percent in 2017. This payment method will become the top payment choice by 2021, according to research.

 

Many companies have struggled to decide whether they should integrate this feature in their payment processing. With research pointing to growing mobile wallet market share in the U.S., your company may want to include this payment option now or in the future.

 

In tracking these payment trend changes, Worldpay provides a fast, effective way for developers to add mobile wallets to the payment processing environment.

 

5) How can our company prepare for alternative payment methods, such as voice payments?

A company should evaluate what’s driving trends in alternative payment methods like voice payments, assess adoption rates and understand the consumer’s point-of-view.

 

Interest in this alternative payment method has grown as more consumers and businesses have started using voice-driven digital assistants like Alexa and Google Home. As users become more accustomed to relying on these digital assistants, the devices will need more digital banking integration solutions to handle voice-driven payments.

 

A BI Intelligence research report stated that 18 million US consumers have already made a voice payment. Millions more stated that they plan to try voice payments soon or want to learn more about how they work. By 2022, this figure will grow because of technology and security improvements.

 

In the discussion between you and your development team, ask developers to be aware of these types of trends as well as explore the technical components of emerging alternative payments methods. When the company is ready to implement this type of payment acceptance method, the development team is more prepared.

 

Check out what some of our own innovators have done with voice payments and see their code.

 

Time to Talk

Although there is a lot to think about, it’s time to talk with the Worldpay integration team, ask these payment integration questions and discuss the available solutions. Contact Worldpay to discover the best payment integration framework for your company and improve how you work with merchants and shoppers.

 

Related Links:

3 Considerations for Building a Gig Economy App

 

The largest hotel chain in the world (Airbnb) has no hotels, and the largest taxi company in the world (Uber) has no taxis. How did this come about? How did these and other so-called “gig economy” companies impose massive disruption on billion-dollar industries in such a short time?

Part of the answer, of course, involves their novel business strategies. But also at play are the apps that drive these gig-economy companies. Uber, Airbnb and the like would be nothing without well-designed apps that deliver an excellent user experience.

 

In this regard, there is a lot that developers can learn from the gig economy. Traditionally, programmers haven’t spent much time thinking about how to develop the type of app that powers a company like Uber. But as the gig economy grows more and more important, that will likely change.

 

Toward that end, let’s take a look at what developers should be thinking about if they’re building a gig-economy app. The lessons below apply whether you’re creating such an app from scratch, or improving one that already exists (and yes, while gig-economy apps like the ones I’ve mentioned above may be great, there is always room for improvement).

 

Scaling the stack

 

To be competitive and relevant in today’s gig economy market, where customer expectations are basically going through the roof, scalability is key. It doesn’t matter whether there is just one user on your app or 100,000 — They all expect your app to perform like Netflix. Accounting for spikes in usage is an important part of scaling and you need to be ready to handle the traffic before you start advertising or giving out discounts. The key here is to scale horizontally and automate the process of adding and removing containers or virtual machines based on demand.

 

Automated scaling isn’t just about adding more nodes based on a preset threshold. It’s also about automatically rebalancing the workload among the servers and hosting virtual machines in multiple regions. Load balancers monitor nodes and distribute traffic efficiently among them so no one node takes on too much work. However, this process must be repeated every time there’s a significant change in workload, or some servers may be overworked while others just waste away. That’s why it’s a good idea to automate the process with a tool like Elastic Load Balancer from AWS or Cloud Load Balancer from Google.

Location and architecture

 

Location is important, too, and multi-region hosting offers much better latency for end users. This is because apps deployed across multiple regions can not only serve users from more data centers, but also from data centers that are in closer proximity to them. It’s good to not have all your eggs in one basket, especially in case of a DDoS attack. Multi-region hosting is critical with regards to disaster management, as it not only keeps your data safe, but also allows for a backup cloud to pick up the load if one cloud service is attacked or compromised.

 

Scaling out is different from scaling up, and it’s where you add more nodes as opposed to upgrading them. Without the proper application architecture, however, scaling out can lead to a drop in performance as the nodes struggle to communicate with each other. This is especially true for microservice architecture where services communicate with each other in more ways than we ever thought possible. A microservice service mesh like Istio facilitates this inter-service communication by acting as a communication layer for your services. Istio provides a way for developers to seamlessly connect, manage and secure networks of different microservices, regardless of platform.

Simplicity and security

 

Local services apps like TaskRabbit, Handy, and Thumbtack have numerous service options like plumbing, moving and packing, home improvement, and more. The secret to managing this complexity, however, is to keep it all as simple and organized as possible. The more complex your application, the harder it is to scale, so the secret lies in masking all that complexity behind an extremely well thought-out and simple user interface. It’s also important to keep app size down to a minimum. A smaller app not only makes your life as a developer easier, it also takes into account the limited storage capabilities of most mobile phone users.

Online payments are a great way to make the app experience convenient, and more payment options mean a higher conversion rate. Where there’s money involved, the risks of a breach are always higher, so be proactive about security. Encourage users to change passwords frequently, especially when there are digital wallets linked to your app. You also need to be quick to disclose when a data breach happens and keep all user data encrypted to the maximum level.

 

Cloud vendors follow the model of shared responsibility where they are responsible for the security “of” their cloud platform, but you are responsible for security “in” their cloud. Key management services that can encrypt data at various levels both in transit and at rest can give you more control over data access and better security.

 

Lastly, future-proof your app to take into account your industry and the technology you are currently using. Your app will never stop needing enhancements, so don’t get comfortable, or you’ll be a sitting duck for the next startup thinking about “disruption.”

 

Conclusion

 

Software is eating the world, and the gig economy is no exception. While the innovative business models of gig-economy companies may be part of the reason for these companies’ success, the apps that gig-economy companies build are also key — and can be the deciding factor between a successful gig-economy company and a failure. Winning in the gig economy requires an app designed for scalability, security, performance and future-proofing by following the tips outlined above. 

5 Critical Payment Integrations Questions for Your Dev Team

 

Payments were once a standalone process that signaled the end to a sale of a product or service. Today, global payments are an integral part of a customer experience and involve more interactions and transaction opportunities.

 

In this new payments world, traditional web, mobile, and storefront environments are converging. Many payment gateway options have appeared. At the same time, there are growing security concerns.

 

Payment integration has provided a way to bring a wide range of tools together to address these trends and challenges. However, it is not as simple as developing and launching a payment integration platform. Planning involves leveraging payment API options, creating secure and scalable payment processing integrations, and launching to add merchants for payment facilitators.

 

To plan and launch a payment integration solution, there are some critical questions to ask developers. In part one of this two-part series, we tackle five of these payment integration questions.

 

1) How long will a payment integration solution take to develop before we can start onboarding merchants? 

 

Development and launch timing depend on many factors. These include company needs, integrationmodel, availability of a POS, and certification competition. Also, it's important to have proper coding and testing resources.

 

These steps include kickoff followed by development, testing, and certification. Then, it's pre-production, production go-live, and processing go-live.

 

The ability to accelerate merchant onboarding also depends on the development team’s availability and support. Find out what empowers developers to complete these steps.

 

Working with Worldpay can connect developers with a comprehensive set of automated onboarding tools.

 

2) How will you secure cardholder data throughout payment processing?

 

Data security is one of the most pressing issues facing the global payments industry.

 

Since cardholder data is such a tempting and vulnerable target for fraudsters, high-profile security breaches continue at a rampant pace with the liability resting on the shoulders of the company experiencing the breach. 

 

Ask your development team about their experience with security compliance. Find out how they can ensure that information is safe.

 

Worldpay can help tokenize and anonymize data to strengthen your security efforts. Worldpay implementation specialists can also tell you what the https://www.worldpay.com/uk/pci-dss-overview mean for your company.

 

Yet, every company handles data according to applicable regulations as well as to their processes for returns, subscription sign-ups, and similar situations that involve cardholder data.

 

That’s where developers can describe how your company handles those processes so Worldpay can recommend the most appropriate solution to minimize cardholder data risk. 

 

3) Does the payment solution provider’s technology integrate with what we plan to do? If not, how can we use a payment API to achieve payment integration?

 

This is a question where developers will need to be visionary in their responses. That’s because what you plan to do as a company involves the near and distant future. In return, this leads to a more complex environment for payment integration.

 

When asking developers, it's important to find out if the payment solution provider’s technology will scale with the business.

 

This inquiry may lead to other questions like, “Do we want to enable shopping online with in-store pick-up to address the current on-demand trend consumers expect?”

 

Or, do we plan to open more locations that need more payment gateway and security features?

 

It's a lot to consider, especially when trends and expectations are always shifting. That’s when you and the developer team must look outward at trending technology for retail payments and fulfillment.

 

In exploring these trends together and using the developers' insights, you and your payment solution provider can address these changing trends within your current and future payment integration processes.

 

4) Are there tools and resources available if payment integration process issues appear?

 

Your development team has extensive knowledge, experience, and skill. However, even with such talent, they may still need to tap external expertise if they are stuck with the payment integration development process.

 

They will need access to support, tools, and resources should they get stuck with some aspect of the payment integration process now or in the future. This is where developers will need to explain what type of specialized support would help.

 

Knowing what they need in terms of external support enables you to find the right payment integration partner. For example, developers can enjoy 24/7 access  to Worldpay integration specialists and support forums.

 

Documentation and features like searchable/code samples are useful when there is a question. Or, it may help to tap into Worldpay’s Point of sale for XML, JSON, and HTML as well as connect to a knowledge base.

 

5) Are there available payment processing and security features to include as we scale our business? 

 

 

While stakeholder and business leadership define requirements, developers can enable the experience as well as support the plan and vision. Developers also can explain how extra functionality may affect integration performance.

 

You’ll be able to get a better sense of what features could create an enhanced customer experience by turning to the development team. For example, some companies need credit card terminals to accept payments by mail or telephone. Others might seek features that account for gratuities and enable pre-authorizations.

 

Another company may want to know how to better leverage available cardholder data for new insights to drive personalization. Reports and analytics offer a way to identify shopping conversion paths. It can also tell you where buyers are coming from and what type of payment they are using. 

 

Open Communication Equates to Greater Payment Integration Success

 

Ask the integration team, listen to their answers, and direct your payment integration strategy toward their recommendations.

 

Having an open communication process between the technical and strategic components of your company will increase the chances of successful development and implementation now and in the future.

Our top question of the month comes from ptaysavang regarding the SecureNet API being retired. 

 

Check out his question and our answer here

 

 

If you ask or answer a question that helps our community members, you're automatically entered into a contest for a $25 Amazon gift card! 

Payments Developer Insights title card

 

 

We all know why developers are important. They write the software that makes the world run.

 

But how much do we know about who developers actually are? The answer, in many cases, is very little. After all, most developers work behind the scenes, hidden away from end-users. Unlike actors in a movie or authors of a book, developers rarely receive credit for their work. You might stand in line at the grocery store behind the person who wrote code for your email app, or who helped program your smart thermostat, but you’d never know it.

 

That’s part of the reason why Worldpay produced a survey of professional coders to figure out what makes developers tick. The survey doesn’t help raise developers from the anonymity in which they work, but it does provide critical insights into what payments developers are like, why they chose to become programmers, and what interests them.

 

Here’s a summary of key findings from the survey report

 

The path to a coding career

One major focus of the survey was understanding what leads people to become developers, and how they gain the skills necessary to program.

 

Perhaps unsurprisingly, the majority of professional developers said they have been coding at least since they were teenagers. Most also reported that they have been working as coders for at least 10 years.

 

Coloring that finding is the fact that, age-wise, it turns out that most developers are young. Millennials account for the largest share of the coder population today. Millennials also make up the largest portion of today’s workforce overall, so that is probably at least part of the reason why they are well-represented among the coding population.

 

How did all of these developers learn to code? The survey found that about half of developers learned to program via formal schooling. However, self-taught programmers accounted for a large portion (38 percent) of respondents. And somewhat surprisingly, a mere 4 percent of respondents said they learned to code through a programming bootcamp, suggesting that the interest that bootcamps have generated in the media in recent years is not proportionate to the number of people who actually become professional programmers through them.

 

Development tools and strategies

All developers write code, but the way they do it varies widely — and “modern” coding strategies are not as prevalent as you might think.

 

According to the survey, Agile stands out as the most popular approach to coding, with more than 57 percent of developers saying they rely on Agile methods. In contrast, DevOps, which receives lots of press these days, was among the least popular development methodologies, with only 4 percent of respondents saying they use it. Conversational development was the second-most popular approach, with 13 percent of developers embracing it.

 

When it comes to programming languages, Python is the most popular by far, with 39 percent of respondents identifying it as their favorite language. C++ was second, at 26 percent. Ruby and Java were both identified as favorites by only 9 percent of programmers, which I found surprisingly low, given how widely used these languages are.

 

Where developers work

Coders might be in their line of work partly because they like it, but most do it for a paycheck, too. When it comes to earning that paycheck, a majority of developers work solely in an office, although 38 percent said that their teams are allowed to work remotely, too. And while most developers work on small teams of two to five people, about a quarter work alone. (The survey didn’t distinguish between freelance developers and those employed by a company, so it’s hard to say whether developers who work alone are self-employed, or just work solo within a company.)

 

As for company size, the types of organizations that employ developers are spread pretty evenly between small companies with fewer than 10 employees, medium-sized ones and large enterprises, although companies with between 11 and 99 employees had the highest representation among developers surveyed.

 

Integrating payments

One of the more interesting questions on the survey was about how hard it is to integrate payments into an app. That may not be a task that developers think about until they sit down and actually do it, but given how many apps have to process payments today, payment integration has become an important part of coding.

 

On this topic, most developers said it was “somewhat easy” to integrate payments, but about 35 percent said it was somewhat difficult or very difficult.

 

Conclusion

Above are just some of the findings from Worldpay’s developer survey report. For full details and specific data points, as well as some interesting results involving developer preferences regarding cats, dogs and more, check out the report.

Businesses invest a lot of resources in getting consumers to click on ads and drawing visitors to websites or mobile apps. They create amazing product displays to make people like and engage with their product catalog. They even offer irresistible discounts to finally get their products added to the shopping cart.

 

But even if these efforts are successful in attracting clicks and visitors, they don’t necessarily lead to results. A common challenge is the issue of “cart abandonment,” which means potential customers abandon a website or app once they are in the middle of the process of selecting items or paying for them. On average, an online store loses 75%-83.6% of sales to cart abandonment.

 

cart abandonment at 75%

 

Why do customers abandon their digital carts? There could be lots of reasons, of course, but poor user interface or user experience are chief among them, which are both issues that developers can help address.

 

Toward that end, here’s a list of five tips for preventing cart abandonment by improving the mobile flow checkout for their apps.

 

1. Let users check out as a guest

Thirty percent of users abandon the cart if they’re asked to register upfront. Niche players face this challenge more than the Amazons of the world. Customers don't like registering unless it is tied to a benefit (say a coupon code). Sometimes, even existing customers don’t prefer signing in. This is especially true when they forget their passwords and have to go through the password reset flow. These are key reasons why cart abandonment rates are lower with sites that allow users to check out as a guest.

 

good mobile workflow checkout as guest

While some users might like to provide information to get personalized suggestions, others might not like spending time filling out registration forms. So, always give them three options: sign up, sign in, and check out as a guest. This should not be a problem with fulfillment, as you can always add email and contact number fields in the delivery information form.

2. Make data entry a breeze

Most people avoid signing up just because they are too lazy to enter their details. Even when you allow users to check out as a guest, they will have to fill out the delivery form. So keep the forms precise and less boring. You can create a great user experience if you can fill out some of the fields in the delivery form by requesting certain permissions. For example, by requesting access to a user’s Google+ profile, you can fill out the fields like first name, last name, email, etc. Getting access to the user’s device location will help you get fields like state, city, locality, etc, automatically filled. This way, you can dramatically reduce the time your users would otherwise have to spend on a frustrating data entry process.

 

good user workflow data entry

Avoid clearing all fields if there is an error in one (or several) fields. Shoppers get frustrated with having to re-enter the whole thing. Save all the valid information and highlight the invalid information along with an error message. Additionally, display error messages clearly and avoid using generic messages like “invalid information.” The form you get while signing up for a Google account is a great example of a good user interface (UI) design. The form tells you exactly what went wrong and how it should be corrected.

 

mobile workflow how to correct fields

 

3. Make customers feel secure about payments

Not having a particular type of card or mobile wallet should not stop customers from checking out. Give them a lot of payment options. In addition, some customers are concerned about the security of their credit cards. Their fears are sometimes justified by the increasing number of cyber attacks. So always display security badges and make users feel secure about their payment. If possible, provide a delivery (COD) option for customers who don't know enough about security badges and aren’t comfortable with the online world.

4.  Keep the user focused on the checkout

One mistake that most online stores make is promoting other products on their checkout pages. This makes room for a lot of distraction. Customers tend to navigate to other pages hunting for better and better deals. They eventually end up confused looking at the myriad of options. Buyer’s dilemma sets in and results in cart abandonment.

 

You should cross-sell your products, but the checkout page is just not the right platform. Amazon recommends other products on the product page itself, but with a checkbox. This way, the user can buy the recommended products without leaving the main product page.

 

good workflow checkout

 

Keep designs simple, remove unnecessary links, and encourage a closed promo code field. Once a customer has added a product to the cart, your only goal should be getting the product checked out.

5. Avoid lengthy checkout processes

Don’t make the checkout page too long. Avoid less necessary conventional steps like asking “Are you sure about the details entered?” Break up the checkout process into multiple steps and deploy one step per page. Have a prominent progress bar to guide users through the checkout process. The load time of your site directly affects user experience. Fifty-seven percent of visitors abandon their carts if the load time exceeds three seconds. The faster your pages load, the more products you will sell.

Conclusion

Forty-nine percent of people operate their phones using one hand. So design the user interface in such a way that the user can complete the checkout process using one thumb. Make sure that the design works for tablet users as well. Enrich your app with all possible luxuries, and make the checkout flow as convenient as possible. Ensure that customer assistance is readily available. Add an iconic CTA button to call customer support. And offer useful links to FAQs so that users will not have to look for solutions across the Web when they have a problem with checkout. A good user experience is created only when you really care about the comfort of your customer.

 

 

Worldpay hosted payment pages provide websites with a simple and secure way to integrate payments into a site without the additional overhead of PCI compliance and the benefit of access to a multitude of payment types.

 

In this article, we’re going to look at this solution and walk through some tips for troubleshooting when test payments fail. We’ll be using the C# example which is available on GitHub and offers users a demo application which they can configure to use with a test account. We’ll cover setting up a test account below (if you haven’t already set up an account).

 

Browser Requirements

 

The hosted payments solution is added to websites using an iframe or lightbox control. In this article, we’ll be referencing the iframe specifically, but the same applies to the lightbox as well. The solution also makes use of JavaScript, so you’ll want to ensure that the user's browser has JavaScript enabled.

 

If you’re using the demo application, and are unable to click on any of the buttons, this is a good indication that JavaScript is disabled for the site. Using the <noscript> tag is an excellent way to indicate to users that they need to enable JavaScript to checkout using your website.

 

<noscript>
    <style type="text/css">
        .pagecontainer {display:none;}
    </style>
    <div class="noscriptmsg">
        This website requires that Javascript is enabled.
    </div>
</noscript>

  Figure 1. HTML to Detect a Browser that Does Not Have JavaScript Enabled.

 

If you can navigate to the checkout page, but are unable to view the Payment iframe, then it is likely that you haven’t configured the account credentials, there is an error in the configuration, or there was a problem setting up the transaction. If you are using the example application, and view the page source, you may observe an error indicating that iframes are disabled. The disabled iframe message is the default message which is displayed if the page is unable to set up the transaction, or retrieve the iframe from the payment processor.

 

We’ll walk through each of these problems in detail and discuss symptoms and how to resolve them.

 

Setting Up a Test Account

 

Requests to the Hosted Payments Service need to have the following information included:

 

  • Account ID
  • Account Token
  • Acceptor ID
  • Application ID
  • Application Name
  • Application Version

 

Application Name and Version are required, but these fields are for you to add information about your application. The remaining values require you to sign up for a Worldpay test account. You can sign up for a test account here.

 

Figure 1. Creating a Worldpay Test Account

 

Validating Your Configuration

 

When you create your test account, you’ll receive an email similar to the one below that has all the required values for your new account. The email also contains test URLs for your test hosted payments and links to documentation for hosted payments and other services which you’ll use with your test account.

 

Figure 2. Email with Account Information for Worldpay Test Account.

 

If you’re using the C# example, the Web.config file in the root folder of the project contains the Account Configuration. Validate that you have configured all six elements in your project and that values match those for your test account. If Worldpay can’t verify your account, then the iframe cannot be displayed.

 

The Anatomy of a Transaction

 

A complete transaction is a series of steps, which begin before the customer is prompted to enter their information. The first call sets up the transaction. The TransactionSetup is a POST request which includes the account credentials, terminal information, style information for the iframe, and the return URL. The call is handled by the server to prevent account information from being exposed to the end user. Once the transaction is set up, the browser can request the iframe.

 

 

<?xml version="1.0"?>
<TransactionSetup xmlns="https://transaction.elementexpress.com">
  <Credentials>
    <AccountID>#####</AccountID>
    <AccountToken>#####</AccountToken>
    <AcceptorID>#####</AcceptorID>
  </Credentials>
  <Application>
    <ApplicationID>#####</ApplicationID>
    <ApplicationVersion>1.0</ApplicationVersion>
    <ApplicationName>HostedPayments.CSharp</ApplicationName>
  </Application>
  <Terminal>
    <TerminalID>01</TerminalID>
    <CardholderPresentCode>2</CardholderPresentCode>
    <CardInputCode>5</CardInputCode>
    <TerminalCapabilityCode>3</TerminalCapabilityCode>
    <TerminalEnvironmentCode>2</TerminalEnvironmentCode>
    <CardPresentCode>2</CardPresentCode>
    <MotoECICode>1</MotoECICode>
    <CVVPresenceCode>1</CVVPresenceCode>
  </Terminal>
  <Transaction>
    <TransactionAmount>6.55</TransactionAmount>
  </Transaction>
  <TransactionSetup>
    <TransactionSetupMethod>1</TransactionSetupMethod>
    <Embedded>1</Embedded>
    <AutoReturn>1</AutoReturn>
    <ReturnURL>http://localhost:51619/Home/Complete</ReturnURL>
    <CustomCss>body{margin-left: 50px; …}</CustomCss>
  </TransactionSetup>
</TransactionSetup>

Figure 3. XML Request to Set Up a Transaction

 

In response to the request above, the processor returns the following, which includes a transaction number. This number is used by the client or browser to request the iframe.

 

<?xml version="1.0"?>
<TransactionSetupResponse xmlns="https://transaction.elementexpress.com">
  <Response>
    <ExpressResponseCode>0</ExpressResponseCode>
    <ExpressResponseMessage>Success</ExpressResponseMessage>
    <ExpressTransactionDate>20181230</ExpressTransactionDate>
    <ExpressTransactionTime>162113</ExpressTransactionTime>
    <ExpressTransactionTimezone>UTC-06:00:00</ExpressTransactionTimezone>
    <Transaction>
      <TransactionSetupID>
A5EC4889-89870E7CEB97</TransactionSetupID>
    </Transaction>
    <PaymentAccount> 

      <TransactionSetupID>A5EC4889-89870E7CEB97</TransactionSetupID>
    </PaymentAccount>
    <TransactionSetup>
      <TransactionSetupID>
A5EC4889-89870E7CEB97</TransactionSetupID>
      <ValidationCode>068F65440B</ValidationCode>
    </TransactionSetup>
  </Response>
</TransactionSetupResponse>

Figure 4. XML Response with Transaction ID

 

If you enable debugging on your local server and step through the code, you should be able to see the response coming back from the processor. I was able to create a couple of different errors by changing aspects of the request I sent.

 

<?xml version="1.0"?>
<Response xmlns="https://transaction.elementexpress.com">
  <Response>
    <ExpressResponseCode>103</ExpressResponseCode>
    <ExpressResponseMessage>Invalid Request</ExpressResponseMessage>
  </Response>
</Response>

Figure 5. Example of a Response for an Invalid Request

 

In the case above, this was due to not setting the correct headers on the request. For XML requests to the payment processor, the required headers are:

 

  • Content-Type: text/xml
  • Accepts: text/xml

 

<?xml version="1.0"?>
<Response xmlns="https://transaction.elementexpress.com">
  <Response>
    <ExpressResponseCode>103</ExpressResponseCode>
    <ExpressResponseMessage>TargetNamespace required</ExpressResponseMessage>
  </Response>
</Response>

Figure 6. Another Example of a Response for an Invalid Request

 

In the case shown in Figure 6, the namespace was incorrectly set. The XML namespace is set on the parent element and should take the following format.

 

<TransactionSetup xmlns="https://transaction.elementexpress.com">

 

Troubleshooting Client Payment Submission Errors

 

The request from the iframe is synchronous and returns the results of the transaction, and redirects the browser on a successful transaction to the URL which you specified when you set up the transaction. The processor parses user information completeness and validity. Below are some of the results which appear in the browser for missing or invalid data.

 

Figure 7. Missing Information on the Payment Information Form

Figure 8. Invalid Card Information on the Payment Information Form

 

Additional Help

 

If you are still experiencing problems with your test payments, you can visit the Vantiv Developer Portal to see if other developers have experienced similar problems and posted their solutions. You can also reach out to a Worldpay representative here