Checkout & Payment

From Spiffy Stores Knowledge Base

Choosing your Payment Methods

Test

Before you can accept orders from your customers, you will need to choose one or more methods for accepting payments. Each of the methods have varying fees and costs associated with them, so you should shop around to see which one is right for you.

Spiffy Stores supports a few external credit card payment gateways. These allow your customers to use their credit card directly in your store. You will need to set up a separate account with one of these gateways in order to use them for sales.

Accept External Payment service

An External Payment service is where your customer is redirected to an external web site to make their payment. Usually the payment can be made by Credit Card or funds transfer from a bank account. Once the payment has been processed, the customer is redirected back to your Spiffy Store and a Order Confirmation page is displayed for them.

Currently, PayPal Website Payments Standard is the only External Payment service supported by Spiffy Stores.

The advantage of this kind of service is that you don't need a merchant account to accept credit cards, and it is an ideal way to start out a new online store.

You can sign up here for a PayPal Website Payments Standard account.

Accept Credit Card payments

Direct Payment Gateways allow you to accept credit or debit card payments without leaving the Spiffy Stores checkout.

All Direct Payment Gateways will require you to have a merchant account with your bank. In addition, gateway fees will also apply unless you choose to select Manual Payments, in which case you will need to process the payments manually..

A credit card gateway is not included in the cost of your store. Gateway suppliers each have their own fee structure and eligibility requirements.

Supported Gateways

Once you have obtained your account details, you will need to select the gateway and enter your credentials into the provided fields.

You will also need to indicate which credit cards you are able to accept.

If you want to provide any special instructions to a customer who chooses to pay by credit card, click on the Show details link and enter the text of your message in the provided text box.

Finally, if your credit card gateway supports the feature, you may choose to Authorize payments, and then Capture the funds at a later date when the order is finalized. This is useful if the exact amount of the order cannot be determined at checkout time, and you can process an authorization for a larger amount, and then capture the final amount before shipping the order.

Manual Payments

The final form of payment consists of manual payments such as

  • Cheque
  • Bank Deposit
  • Money Order

You can select from one of the default options, or create your own manual payment descriptions.

For each manual payment, you can add some custom text that will be displayed to the customer when they choose this payment method. For example, you will need to provide your bank account details if you choose to accept payments by Bank Deposit.

For all manual payments, you will need to mark the order as paid manually once the payment for the order has been received.

Additional Checkout Comments

You can enable this option to allow the customer to add comments to the order. This allows a customer to make special requests or to inform you of some special delivery details.

You can also customize the prompt that is displayed on the checkout page, if the default is not sufficient.

Customer Account Number

The customer number field is generally used for wholesalers, so that they can assign a number to each customer.

When enabled the customer number is collected in a new field that appears on the first page of the checkout. If the customer enters their customer number, their customer number is then displayed under the customer's contact details on the "view order" page in your toolbox.

Validating a customer number

The customer number can also be validated using a script hosted on an external server. This is done by sending the customer number to an external script, which then validates the number and returns a response in XML that is either valid or or invalid. You can also return an error or confirmation message if you wish.

The XML response should be in the following format;

<response>
   <customer>
      <id>{id}</id>
      <valid>invalid</valid>
      <msg>must be 11 digits</msg>
   </customer>
</response>

Validating using a database

For example, you may have a database of customers located on your server at http://yourdomain.com

To validate that a customer number is correct, you could create a script at http://yourdomain.com/customer.php that we pass information to, which then checks against your database to see if the customer number is correct. e.g. http://yourdomain.com/customer.php?id=1234567890

The URL entered into the "Provide a URL to validate the Customer Account Number" field in your checkout prefences in this instance would be http://yourdomain.com/customer.php?id={id} which passes the {id} parameter from your store checkout to the custtomer.php script on your server.

When a customer enters a customer number in the checkout, that checkout posts the query to your external script, and your script would check the customer number and then return an XML response to the checkout saying whether the customer number is valid.


Validating using an Algorithm

Another use for this funtion is to validate the customer number against an algorithm, which many larger comapnies use to create tehir customer numbers.

To validate that a customer number is correct, you could create a script at http://yourdomain.com/customer.php that we pass information to, which then checks against the algorithm to see if the customer number is valid.

The URL entered into the "Provide a URL to validate the Customer Account Number" field in your checkout prefences in this instance would also be http://yourdomain.com/customer.php?id={id} which passes the {id} parameter from your store checkout to the custtomer.php script on your server.

When a customer enters a customer number in the checkout, that checkout posts the query to your external script, and your script would check the customer number against teh algoritm and then return an XML response to the checkout saying whether the customer number is valid.

Additional Content & Scripts

You can include custom html, tracking pixels and even scripts on the last page of the checkout. See Conversion Tracking for more information.