As with any commerce site, it's main purpose is to make money. Know how the payment process will work, what third party providers will be involved and what info you require from your customers to perform a transaction.
Are you integrating against payment providers, or are you just passing data on to ERP systems to handle payment?
If integrating against payment providers, will you be doing both authorizing, capturing and refunding actions, or will you do just one of them? External systems may have to do some of them for you — this might not be under your control. Find this out early.
Will the payment provider send the client (the browser, that is) somewhere else, or will you have the actual payment forms in your own site? If implementing in your site, read up on requirements for this and how to implement it. Your payment provider's documentation should give you what you need. Usually, the requirements are quite strict when it comes to data storage and treatment - not all of them are technical matters.
If your payment provider(s) support some sort of server-to-server communication, you should consider implementing this. It is more reliable than expecting the customer's browser to return properly to your site. Some payment providers might even require this - you should find out early. Keep in mind, this can usually not be tested from a local development environment. Expect to spend more time testing.
Will some payment providers support multiple payment methods? Should each of them be a separate provider using the same payment class in EPiServer Commerce, or should they be split even on the implementation level?
Multi country sales
A few key questions that should help you plan and estimate:
- If you sell to different countries? And if so, do you need different payment methods for each of them?
- Do you accept multiple currencies?
- Multiple currencies within every country?
- Do you have to manage some sort of currency conversion? If so, how will that be handled?
- Will all payment types support all forms of shipping, or just some of them?
After paying, customers want their stuff shipped. How that happens will most likely be in place in the business already. If not, you might be involved in that process too.
There are a bunch of things to think about, so you might as well go through them before you hand your estimates out to the customer to see:
- Do you ship internationally — and is this your concern? If so, are there different shipping providers for different countries?
- If shipping internationally, are you shipping to a specific set of countries? Regions you don't ship to?
- Does all your shipping methods allow all your payment methods to be used?
- Are there restrictions on size or weight? Might these restrictions apply only to some areas?
- Are you shipping from multiple warehouses? If so, how do you choose which one?
- Can items be purchased online and be picked up in a physical store? Do you need to handle this in some way, or will other systems take care of it?
- Does shipping have a fixed price, or will shipping costs vary by a set of parameters? If so, which?
- Will you have some additional fees related to some shipping methods?
For the end user shopping at your site, this might not be very important, but for the store itself this can be crucial. The first question you should ask yourself is: Will the web shop handle inventory at all?
If the answer is no, skip the rest of this. If yes, then read on. This can be made as complex or simple as you'd like, depending on your requirements.
- Is the inventory maintained in another system, or will the Commerce manager be the inventory management system?
- Do you have multiple warehouses?
- Will you be tracking inventory per sale, or will you just import an updated inventory at specific intervals?
- Do you need to handle non-standard inventory statuses like "in stock, but missing original box"? If so, you'll need to implement that yourself, outside the regular inventory system. As of now, anyways — the Commerce Manager is, as far as I know, planned to be rewritten in the future.
This blog post is part of the series EPiServer Commerce project essentials which will give you a few tips on how to plan your projects.