Simple Order System Documentation

Below is information on how to set up and use the Simple Order System (SOS).

Account Info

The Account Info tab holds basic information about your business as well as the AWS info needed to access your S3 Bucket.

  • Business Name Your business name as you would like it to show to your customers. Appears in various places on the web site as well the order notification email.

  • Logo URL This is a URL to your logo which is displayed on the top left of the web site. Your logo should be 40px tall, and less than 300 pixels wide. Your logo needs to be hosted using ssl - if you do not have ssl on your web server you can use the S3 (make another bucket, DO NOT USE the one you use for orders).

It is important that your logo url be served over https since it will be embedded on our site which is https. If it is not https, some browsers will block access to the site due to the insecure content.

  • Website Full URL Full URL including http:// or https://, this is used in the footer of the web site as well as in the order notification email.

  • Phone Number Your phone number, displayed in the footer of the website as well as the order notification email.

  • Email Address for Order Notification Address where you want to receive order notification emails. The email that is sent to your customer will have this as the reply-to address so they can email you easily if there is a question.

  • Address, City State Zip Your business address, shown in emails underneath the order summary.

  • Business Hours Message Shown in emails underneath the order summary, recommended for showing your business operating hours, but can be used for any custom message.

  • LabWorks Customer Type - Optional If you are using the LabWorks POS you can use this field to set the customer type in LW. If you have different customer types in LW, you will need separate SOS accounts in order to set the customer type for each one.

  • POS Report Type Controls which type of report is created inside the parent order folder

    • lwdot - this is the basic LW style XML report, works in LW dot. Does not use FPrice.

    • lwdot-fprice - LW style XML report using FPrice (FPrice overrides the price in LW with the price from the SOS)

    • text detailed - this is a simple txt file that is the same as the email that is sent out. Use WordPad (on Windows) to view the file.

    • text summary - this is the same as the email except it does not include the line items. Meant to be a summary that would be easy to print out on one page. Use WordPad (on Windows) to view the file.

  • S3 User ID/Access Key, Secret and Bucket Name These are the credentials you setup in AWS that allows access to the S3 Bucket. You should not use this Bucket for anything else.

For details on how to setup your AWS Account see our Requirements page.

  • Google Analytics Tracking ID - Optional If you would like to track web analytics you can enter your code here.

  • Order Number Prefix Prefix for your order number, example sos- would result in sos-1234

  • Update Order Number Order numbers start at 1, you can change this to something higher like 4000.

Please note that Account Info is cached and changes may take up to an hour to take effect.

Global Options and Shipping

This section includes Global Options such as tax rate and file types accepted, Global Checkout Options, and Shipping Methods.

Allowed File Types

This is a comma separate list of file extensions which is used to limit the type of files that are allowed. For example, to allow jpeg files you would need jpg,jpeg - both extensions are required as the extension can be either one. Same with Tiff files - you would need tif,tiff. For RAW files you could use cr2,nef,dng,xmp. The list can be as long as needed.

Add User ID Field During Checkout

If this is checked then during checkout there will be an optional field called User ID. This flows into the XML Report and is primarily used for integrating with LabWorks POS. If it is not checked then the field will not show.

Sales Tax

The percent (as a decimal) used to calculate sales tax. For 8.25 percent you would enter 0.0825. Please note sales tax is calculated on all orders, the system is not currently able to know which orders are out of state.

Calculate Tax on Home State Only

If you would like Sales Tax to only be calculated on sales from your home State then make sure this box is checked. If it is not checked then Sales Tax will be charged on all sales.


Set the currency to use for pricing. if your currency is not available please let us know and we will add it in.

Ship To Countries

Set the Countries you would like to be able to ship to. This will populate the State/Province dropdown with the States/Provinces for that Country. Once you select a Country, the States/Provinces for the Country will be listed, you can delete any which you don’t wish to ship to if needed.

You can set as many Countries as you wish. If there is more than one, then on checkout a customer will have to select a Country and then a State/Province.

Global Checkout Options (GCO’s)

Global Checkout Options (GCO’s) are checkout options that are not tied to a product. Examples would be color correction of files, or burn submitted file to cd/usb. A GCO is made of of an Option Set, with a Title and Subtitle, and the Option Choices which have a Name, POS code, Price, can be per item or per order, and can be taxable or not taxable.

  • Title: The name of the Option, for example Color Correction of Images. This displays as a heading - larger bold font.

  • Subtitle: Displays under the Option Title in normal font, a place to give additional details about the option.

    • Choice Name: Options are made up of Choices. A choice is what the user will actually select. If you don’t have any Choices then the Options will appear as an Informational text block. An example of the choices you could have for the Color Correction Options would be Yes and No. By having both yes and no you make it easy for the user to select no if they choose a choice by accident. You cannot deselect a choice.

    • POS code: Optional, used as a code or SKU in the XML Reports, primarily for LabWorks integration. It does not show anywhere other than the report.

    • Price: The price of the choice.

    • Price Per File: A GCO Choices price can be either per file in the order, or just a flat rate once. So for an option like Color Correction you would set this to Price Per File so that you could charge for how many files there are. For an options like CD/USB of files, you would not check the Price Per File box and just charge a flat rate for the order. When using Price Per File, if the same file is ordered as different products then it is counted for each product. If one file is ordered with a quantity of more than one, it is still counted as one file.

    • Taxable: A GCO Choice can be taxable or non-taxable.

Shipping Options

You can have as many Shipping Methods as you need, just try to keep it simple. We support 3 types of shipping - Pickup, Ship and Drop Ship. On each method you can calculate the Price as a Flat Rate, based on Order Total or based on Weight.

  • Shipping Method Name The name of the Shipping Method as a user will see it during checkout. This will also display in the order notification email.

  • Description This is shown after the name, a place for you to describe the method. This does not show in the order notification email.

  • POS Code Used for LabWorks POS, only shows up in the XML report.

  • Shipping Type The Type can be set to one of three things:

    • Pickup If Pickup is chosen as a user is checking out, then the Customer Details screen will not show any address fields, just name, business name, phone number and email.
    • Ship If the Ship Type is Ship, then the user will see all of the address fields in addition to the contact info fields.
    • Drop Ship Drop Ship is for orders that will be shipped to someone other than the person ordering. If the Ship Type is Drop Ship the user will see the contact info fields, and then underneath where the shipping address fields are there will be an additional name field for the person that it is being shipped to. Also, if you are using LabWorks and have one of the LabWorks XML reports selected, then the Drop Ship Type will set the flag in the XML report to Dropship: yes so that LabWorks will know to treat the order as Dropship.
  • Tier Uses Controls how the Shipping price is calculated, can be Flat Rate, Order Total or Weight

    • Flat Rate Simplest pricing, just a simple rate for the whole order, like 5.95.
    • Order Total Shipping can be tiered based on the order total.
    • Weight Shipping can be tiered based on the total weight of all products and options.
  • Price Can either be a flat price, like 5.95, or it can be a tiered price based on either Weight or Order Total. If you use a tiered price it is entered as (order total or weight),price,(order total or weight),price,(order total or weight),price… If you use tiered pricing, the first (order total or weight) is always 0. So if on a Pickup order you want to charge a fee if the order total is less than 7, you could enter 0,1.5,7,0 which would charge 1.50 if the order total is less than 7, and if the order is over 7 then there would be no charge. You could also do a Ship Type where shipping is free if the order is over 100 - if it is under 100 then shipping is 7.95: 0,7.95,100,0. If you use Weight, you could have all small products have a weight of 0, and then do 0,7.95,2,10,4,20,6,30,8,40 and if all that was ordered was small products, shipping would be 7.95. If larger products were ordered maybe shipping would be 30.

Categories, Products and Product Options

In the SOS products are divided into Product Categories. You can have as many Categories as you want, and inside each Category you can have as many Products as you want. A Product can have Options, like Mounting, or Paper Type. Options have Choices, like gator board, or foam core. A Product can have multiple Options, and the Options can have multiple Choices.


A Category is a set of similar products, like canvases, or banners, or color copies. This is just a way to divide up the products into manageable chunks so it is easy for a user to find what they need.

  • Category Name: The name of your category, shown on the web site, in the cart, in the email and will also be the sub folder name for images ordered from this categories products.

  • Category Subtitle: On the home page there is a list of Categories, the subtitle is shown below the Category name.

  • Category Description: When a user click on a Category on the home page, the Description will show underneath the Category name. This is a way to display a couple sentences about the products available in this Category.

  • Category Image URL: This is a URL to an image that represents the Category. This is shown on the home page. Your image should be 400 pixels wide, ideally about 220 pixels high. The URL should be https again, like the logo, or browsers may block content.

It is important that your Category image urls be served over https since they will be embedded on our site which is https. If they are not https, some browsers will block access to the site due to the insecure content.

  • Category Specific Allowed File Types If you want to only allow certain file types in a specific Catalog, you enter them here. This list will over ride the main Allowed File Types set under Global Options. You could use this to allow only PDF files in a particular Catalog, but allow jpg and tif in all the others.

  • Category is Active By default all Categories are Active, which means they are displayed for a user to see. If you would like to hide a Category, uncheck the Category is Active box and it will no longer show to users. This is useful for seasonal items or maybe specials sales that you want to run again.


Once you have created a Category, you can begin adding products. The products for a Category are underneath the Category details. If you just created a new Category, once you click Save you will see the Add Products button. If your Category already has products, the Add Product button is at the bottom under all the products.

A product consists of the following:

  • Product Name or Size: What you would like to call your product. Could be the size, like 8x10 or 11x14, or it could be more descriptive like 5x7 Folded Card. Please keep in mid that the length of your Product Name may exceed the natural width of the button used to add files for that product. If this is the case, the product box/button will expand to fit the text, which may look weird. Try to keep the Product Name short so it fits neatly.

  • POS Code: The POS code is used in the XML Report, primarily for LabWorks integration. The POS Code is optional. If you use the LabWorks XML file, you need to use POS Codes in the SOS (for products) or else LabWorks will give an error. POS Codes must match an existing LabWorks code or the XML import will fail.

  • Price: Pricing can either be a flat price, like 2.50, or it can be a tiered price, which is entered as qty,price,qty,price,qty,price… If you use tiered pricing, the first quantity is always 0. So if you have breaks at 10,100 and 500, you would enter 0,5,10,4,100,3.75,500,2.95 which would mean that for 1 the price is 5, for 10 the price is 4, for 100 the price is 3.75 and for 500 the price is 2.95.

  • Order Tier Pricing If you are using Tiered Pricing, the Tier can apply to the quantity ordered of a single file, or it can apply to the total number of that particular product in an order. Order Tier Pricing means the tier applies to the whole order, not per file. Order Tier Pricing is checked by default. Example: 300 different files ordered as 1 4x6 each - if you want them all to get the 300+ price for a 4x6 then that is Order Tier Pricing = True (checked). If you can only get the 300+ price if you order 300 of the same file then that is Order Tier Pricing = False (unchecked).

  • Weight Weight can be used in the Shipping calculation. So you can have Weight = 0 on small items that will ship for a flat rate, then give bigger items a weight of 1 or 2, really big items can have a Weight of 6. Then on the Shipping Method you can set the price to use weight, and do something like: 0,7.95,1,5,2,10,3,15,4,20,5,25,6,30,7,35,8,40 etc. So if the sum of the weight of all products in an order is 0, then the shipping price would be $7.95. Keep in mind in the above example the most shipping would ever be is $40, so you would probably want to extend the example further. Weight is only used in the shipping calculation, you can leave them all as 0 if you do shipping as a flat rate or by order total.

Product Options

When creating a Product you can add Options to the Product. Examples of Product Options would be Mounting, Paper Type, Hanging Options etc. A Product Option has Option Choices. So if Mounting is an Option, the Choices could be Gator Board, Foam Core and Styrene. You can have as many Product Options as you want, and each Option can have as many Choices as you want.

  • Option Name This is the name of the Option - like Mounting or Hanging Options. This displays above the Option Choices.

  • Price is Per File (Check Box) Check this box if you want to make the option quantity equal to 1 no matter the quantity of the product ordered. This would be for a prep charge or setup fee on a product which would only be charged once. You can use tiered pricing on the option to also make it free if over a certain amount were ordered.

    • Choice Name The name of the Choice, like Gator Board.
    • POS Code If you are using LabWorks, enter the POS Code here, POS Codes only show up in the XML POS Reports. Optional.
    • Price The price of the Choice. The Price is calculated based on the quantity of the Product ordered. So if you have an 8x10 with an Option of Mounting and a Choice of Foam Core with a Price of 10, and the user changes the quantity to 3, then the Price will be 30. You can also use Tiered pricing by entering in a comma separated list of quantities and prices like 0,10,3,8,100,2 which would be $10 for 1 or 2, $8 for 3, and $2 if more than 100.
    • Weight If you calculate shipping using Weight, then the weight here will be included in the calculation. If you are offering mounting as an Option, then on large mounted prints you could have a Weight of 2 on a mounting Choice to help calculate shipping prices. If you are not using Weight then you can leave it at 0.


Some of the default text inside the SOS can be customized with your own text. You can only use regular text (no HTML) in the custom text.

The Custom Styles section is for advanced users only!

  • Home Page Header On the home page where all the Categories are listed, the Title text at top can be customized, the default is Simple Order System. Please keep this text short.

  • Home Page Description Text On the home page, under the Home Page Header. You can write a couple sentences here.

  • Footer Header At the bottom of all pages, in the footer on the left side, the Title text can be customized. by default it says Simple Order System. Please keep this text short.

  • Footer Description in the footer, under the Footer Header. You can write a couple sentences here.

  • Cart Summary On the final checkout page just above the Submit Order button is a box listing the summary of the cart totals, shipping, tax and the grand total. You can customize the text message in this box.

  • Custom Styles This is for advanced users only! This sections allows you to enter in css that will over ride the base css. You can use this to change various things through out the SOS. For example, if you do not like the price for shipping showing up next to the Shipping Method name in the first Checkout page, you could enter in the following to keep it from displaying: .shipprices {display: none;}

    We recommend that you don’t make any changes unless you are very experienced with css, and have tested your changes in multiple browsers.

Downloading Orders - Cloudberry Explorer

IMPORTANT! we do not keep any order details other than some metrics (order ID, date, last name, number of images, order total). If you delete the folder off of S3 and lose it, there is no way to get the images or XML report back. The only place the images are kept is in YOUR S3 Bucket!

There is no backend for the SOS, as orders come in they will be in a folder structure inside your AWS S3 Bucket.

The simplest way to get your orders out of the S3 and onto your local computer is to use a 3rd party program called Cloudberry Explorer.

For more info on setting up Cloudberry Explorer see our Requirements - Cloudberry Explorer Application info.

Once you have Cloudberry setup and can see your S3 Bucket, you can just highlight a folder on the S3 and drag into a local directory. We have a local drive for incoming orders, that is where we drag the SOS order to. If you keep Cloudberry open all the time you will need to click the refresh icon in order to see new folders/files.

Here is a screenshot of Cloudberry, with our S3 Bucket on the right (1-us-test) and our local folder for incoming orders on the left:


Auto Delete Old Orders off of the S3

Once you have Cloudberry working, we recommend that you set an Expiration policy on your bucket so that folders and files are deleted automatically after a set period of time. We recommend that you set it to 5 - 7 days, whatever time that would be the maximum amount of time before you would actually begin working on the order. By expiring files and folders automatically off the S3 you are keeping the Bucket clean, and minimizing the amount of storage fees you will owe for keeping files in the S3.

To set an expiration policy, right click on your Bucket and choose Bucket Lifecycle and then click Add to make a new Rule. Check the box for Expiration, and the change the In box to how many days you want to keep files and folders for. Make sure the Rule in enabled at the bottom and click ok.

Cloudberry Expiration