You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 20 Next »

Table of Contents

The Order System is installed by default, but may need to be installed for addon companies.

Installing Order System

  1. Visit [Settings] > [Company] > [Plugins] > Available.
  2. Click the "Install" button within the Order System plugin listing.
  3. To enable the Order System widget, go to [Billing] > Overview, click the "Manage Widgets" link, and drag the Orders widget from the right to the left.

Order System Overview

Once installed, a new link will appear under [Packages] > Order Forms, where order forms can be managed. In the screen below, two order forms have already been created and they can be managed at this location.


Creating an Order Form

To create an order form, click the "Add Order Form" button in the upper right of the overview and fill out the options. Click "Add Form" to create the order form.

Basic

This section requests some basic information regarding the order form and it's configuration including:

  1. Status – This is the status of this order form, Active to enable the order form or Inactive to disable it.
  2. Name – The name of this order form, this will appear in the heading on front facing pages for this order form.
  3. Label – The label helps make up the URL to this order form, which is displayed next to the field, and must be unique.
  4. Type – This is the type of order form, currently the following three are available: Domain and Other, General, and Client Registration. In most cases, the General type is preferred. This selection will determine what options are displayed for the Template.
  5. Template – Select an order form template. The template controls the look and flow of the order form. Wizard boxes is the default template, and is most widely used.

Basic (Continued)

This section contains some additional options within the Basic section.

  1. Default Client Group – This is the client group users who sign up through this order form will be assigned.
  2. Allow Coupons – Whether or not coupons should be allowed on this order form. If coupons are not allowed, the coupon section on the order form will not be displayed.
  3. Require Manual Review and Approval of All Orders – If this is checked, all orders will need to be approved by a staff member before being provisioned, regardless of any anti-fraud settings.
  4. Force Secure Connection (HTTPS) – If checked, the order form will force https:// URLs.
  5. Require Human Verification Challenge for All Signups – If checked, reCaptcha or AreYouAHuman human verification will be used, depending on the Setting under the Settings tab.
  6. Require Agreement to Terms of Service – If checked, users will be required to agree to the terms of service before checking out.
  7. Terms of Service URL – Enter the URL to your terms of service page. This isn't necessary if "Require Agreement to Terms of Services" isn't checked.

Package Groups & Currencies

These sections determine what Package Groups (And hence Packages) are available through this order form as well as what currencies are accepted.

  1. Assigned Groups & Available Groups – Move Package Groups from the right box (Available Groups) to the left box (Assigned Groups) to make them available on this order form.
  2. Currencies – Select which currencies to accept on this order form. If only one currency is selected, the currency selector will not appear on the order form.

Settings

The Order System supports various settings for human verification, and fraud detection.

Fraud Detection

The Order System supports Fraud Detection through the use of the MaxMind minFraud service. The MaxMind Anti-Fraud component offers a number of configurable options that allow orders to be either rejected outright (no client account created), or flagged for review. When an order is flagged for review it will remain as a Pending order until moved to either the Accepted or Fraud category by a staff user, at which time the client account will be automatically marked as active or fraud.

Human Verification

The Order System supports Human Verification through the use of reCaptcha as well as AreYouAHuman.

Order Emails

Order related email templates can be found under [Settings] > [Company] > [Emails] > Email Templates, in the section labeled "Plugin Templates".

Order Received

The order received email templates allow for the following tags:

TagsDescriptionNotes

{order.id}

The system-level order ID 
{order.number}The order numbere.g. "519131eb623b8"
{order.client_id}The system-level client ID of the client this order belongs to 
{order.client_id_code}The friendly client ID code 
{order.client_first_name}The first name of the client 
{order.client_last_name}The last name of the client 
{order.client_company}The client's company name 
{order.client_address1}The client's primary address 
{order.client_email}The client's email address 
{invoice.id}The system-level invoice ID of the invoice created for this order 
{invoice.id_code}The friendly invoice ID code 
{invoice.date_due}The UTC datetime stamp of the invoice due dateFormatted as "YYYY-MM-DD HH:MM:SS"
{invoice.date_billed}The UTC datetime stamp of the invoice bill dateFormatted as "YYYY-MM-DD HH:MM:SS"
{invoice.total}The total amount due on the invoicee.g. "8.00"
{invoice.paid}The total amount paide.g. "0.00"
{invoice.due}The remaining amount duee.g. "8.00"
{invoice.currency}The currency that the invoice is ine.g. "USD"

Due to the nature of tag objects containing several fields, many of which are likely irrelevant for use in email templates, but may be useful to you in certain circumstances, a dump of the tags are shown below.

The {order} object
stdClass Object
        (
            [id] => 52
            [order_number] => 519131eb623b8
            [order_form_id] => 1
            [invoice_id] => 19983
            [fraud_report] => 
            [status] => pending
            [date_added] => 2013-05-13 18:33:15
            [fraud_status] => 
            [order_form_label] => my_order_form
            [order_form_name] => My Order Form
            [client_id] => 3
            [total] => 8.0000
            [paid] => 0.0000
            [currency] => USD
            [date_closed] => 
            [invoice_id_code] => PD-15695
            [client_id_code] => PD-1501
            [client_first_name] => Mark
            [client_last_name] => Stevens
            [client_company] => Comp Co.
            [client_address1] => 123 Test St.
            [client_email] => user@domain.com
            [services] => Array
                (
                    [0] => stdClass Object
                        (
                            [order_id] => 52
                            [service_id] => 234
                        )

                )

        )
The {invoice} object
stdClass Object
        (
            [id] => 19983
            [id_format] => PD-{num}
            [id_value] => 15695
            [client_id] => 3
            [date_billed] => 2013-05-13 18:33:15
            [date_due] => 2013-05-13 18:33:15
            [date_closed] => 
            [date_autodebit] => 
            [status] => active
            [subtotal] => 8.0000
            [total] => 8.0000
            [paid] => 0.0000
            [previous_due] => 2635.4700
            [currency] => USD
            [note_public] => 
            [note_private] => 
            [id_code] => PD-15695
            [delivery_date_sent] => 
            [due] => 8.0000
            [line_items] => Array
                (
                    [0] => stdClass Object
                        (
                            [id] => 54940
                            [invoice_id] => 19983
                            [service_id] => 234
                            [description] => Bronze Standard - domain.com
                            [qty] => 1.0000
                            [amount] => 8.0000
                            [subtotal] => 8.00000000
                            [taxes] => Array
                                (
                                )

                            [taxes_applied] => Array
                                (
                                )

                            [tax_subtotal] => 0
                            [tax_total] => 0
                            [total] => 8
                            [total_w_tax] => 8
                        )
                )

            [delivery] => Array
                (
                    [0] => stdClass Object
                        (
                            [id] => 20716
                            [invoice_id] => 19983
                            [method] => email
                            [date_sent] => 
                        )
                )

            [meta] => Array
                (
                )

            [tax_subtotal] => 0
            [tax_total] => 0
            [taxes] => Array
                (
                )

        )
The {services} array of objects
Array
        (
            [0] => stdClass Object
                (
                    [id] => 234
                    [parent_service_id] => 
                    [package_group_id] => 1
                    [id_format] => PD-{num}
                    [id_value] => 229
                    [pricing_id] => 22
                    [client_id] => 3
                    [module_row_id] => 6
                    [coupon_id] => 
                    [qty] => 1
                    [status] => in_review
                    [date_added] => 2013-05-13 18:33:14
                    [date_renews] => 2013-06-13 18:33:14
                    [date_last_renewed] => 
                    [date_suspended] => 
                    [date_canceled] => 
                    [id_code] => PD-229
                    [fields] => Array
                        (
                            [0] => stdClass Object
                                (
                                    [key] => cpanel_confirm_password
                                    [value] => password
                                    [serialized] => 0
                                    [encrypted] => 1
                                )

                            [1] => stdClass Object
                                (
                                    [key] => cpanel_domain
                                    [value] => domain.com
                                    [serialized] => 0
                                    [encrypted] => 0
                                )

                            [2] => stdClass Object
                                (
                                    [key] => cpanel_password
                                    [value] => password
                                    [serialized] => 0
                                    [encrypted] => 1
                                )

                            [3] => stdClass Object
                                (
                                    [key] => cpanel_username
                                    [value] => domainco
                                    [serialized] => 0
                                    [encrypted] => 0
                                )

                        )

                    [package_pricing] => stdClass Object
                        (
                            [id] => 22
                            [package_id] => 13
                            [term] => 1
                            [period] => month
                            [price] => 8.0000
                            [setup_fee] => 0.0000
                            [cancel_fee] => 0.0000
                            [currency] => USD
                        )

                    [package] => stdClass Object
                        (
                            [id] => 13
                            [id_format] => {num}
                            [id_value] => 1
                            [module_id] => 4
                            [name] => Bronze Standard
                            [description] => 
                            [description_html] => <p>
	<span style="color:#008000;"><em>Good Value!</em></span></p>

                            [qty] => 
                            [module_row] => 6
                            [module_group] => 
                            [taxable] => 0
                            [status] => active
                            [company_id] => 1
                        )

                    [name] => domain.com
                )

        )

Order Received (Mobile)

The ticket received email template allows for the following tags:

TagsDescriptionNotes

{order.id}

The system-level order ID 
{order.number}The order numbere.g. "519131eb623b8"
{order.client_id}The system-level client ID of the client this order belongs to 
{order.client_id_code}The friendly client ID code 
{order.client_first_name}The first name of the client 
{order.client_last_name}The last name of the client 
{order.client_company}The client's company name 
{order.client_address1}The client's primary address 
{order.client_email}The client's email address 
{invoice.id}The system-level invoice ID of the invoice created for this order 
{invoice.id_code}The friendly invoice ID code 
{invoice.date_due}The UTC datetime stamp of the invoice due dateFormatted as "YYYY-MM-DD HH:MM:SS"
{invoice.date_billed}The UTC datetime stamp of the invoice bill dateFormatted as "YYYY-MM-DD HH:MM:SS"
{invoice.total}The total amount due on the invoicee.g. "8.00"
{invoice.paid}The total amount paide.g. "0.00"
{invoice.due}The remaining amount duee.g. "8.00"
{invoice.currency}The currency that the invoice is ine.g. "USD"

Due to the nature of tag objects containing several fields, many of which are likely irrelevant for use in email templates, but may be useful to you in certain circumstances, a dump of the tags are shown below.

The {order} object
stdClass Object
        (
            [id] => 52
            [order_number] => 519131eb623b8
            [order_form_id] => 1
            [invoice_id] => 19983
            [fraud_report] => 
            [status] => pending
            [date_added] => 2013-05-13 18:33:15
            [fraud_status] => 
            [order_form_label] => my_order_form
            [order_form_name] => My Order Form
            [client_id] => 3
            [total] => 8.0000
            [paid] => 0.0000
            [currency] => USD
            [date_closed] => 
            [invoice_id_code] => PD-15695
            [client_id_code] => PD-1501
            [client_first_name] => Mark
            [client_last_name] => Stevens
            [client_company] => Comp Co.
            [client_address1] => 123 Test St.
            [client_email] => user@domain.com
            [services] => Array
                (
                    [0] => stdClass Object
                        (
                            [order_id] => 52
                            [service_id] => 234
                        )

                )

        )
The {invoice} object
stdClass Object
        (
            [id] => 19983
            [id_format] => PD-{num}
            [id_value] => 15695
            [client_id] => 3
            [date_billed] => 2013-05-13 18:33:15
            [date_due] => 2013-05-13 18:33:15
            [date_closed] => 
            [date_autodebit] => 
            [status] => active
            [subtotal] => 8.0000
            [total] => 8.0000
            [paid] => 0.0000
            [previous_due] => 2635.4700
            [currency] => USD
            [note_public] => 
            [note_private] => 
            [id_code] => PD-15695
            [delivery_date_sent] => 
            [due] => 8.0000
            [line_items] => Array
                (
                    [0] => stdClass Object
                        (
                            [id] => 54940
                            [invoice_id] => 19983
                            [service_id] => 234
                            [description] => Bronze Standard - domain.com
                            [qty] => 1.0000
                            [amount] => 8.0000
                            [subtotal] => 8.00000000
                            [taxes] => Array
                                (
                                )

                            [taxes_applied] => Array
                                (
                                )

                            [tax_subtotal] => 0
                            [tax_total] => 0
                            [total] => 8
                            [total_w_tax] => 8
                        )
                )

            [delivery] => Array
                (
                    [0] => stdClass Object
                        (
                            [id] => 20716
                            [invoice_id] => 19983
                            [method] => email
                            [date_sent] => 
                        )
                )

            [meta] => Array
                (
                )

            [tax_subtotal] => 0
            [tax_total] => 0
            [taxes] => Array
                (
                )

        )
The {services} array of objects
Array
        (
            [0] => stdClass Object
                (
                    [id] => 234
                    [parent_service_id] => 
                    [package_group_id] => 1
                    [id_format] => PD-{num}
                    [id_value] => 229
                    [pricing_id] => 22
                    [client_id] => 3
                    [module_row_id] => 6
                    [coupon_id] => 
                    [qty] => 1
                    [status] => in_review
                    [date_added] => 2013-05-13 18:33:14
                    [date_renews] => 2013-06-13 18:33:14
                    [date_last_renewed] => 
                    [date_suspended] => 
                    [date_canceled] => 
                    [id_code] => PD-229
                    [fields] => Array
                        (
                            [0] => stdClass Object
                                (
                                    [key] => cpanel_confirm_password
                                    [value] => password
                                    [serialized] => 0
                                    [encrypted] => 1
                                )

                            [1] => stdClass Object
                                (
                                    [key] => cpanel_domain
                                    [value] => domain.com
                                    [serialized] => 0
                                    [encrypted] => 0
                                )

                            [2] => stdClass Object
                                (
                                    [key] => cpanel_password
                                    [value] => password
                                    [serialized] => 0
                                    [encrypted] => 1
                                )

                            [3] => stdClass Object
                                (
                                    [key] => cpanel_username
                                    [value] => domainco
                                    [serialized] => 0
                                    [encrypted] => 0
                                )

                        )

                    [package_pricing] => stdClass Object
                        (
                            [id] => 22
                            [package_id] => 13
                            [term] => 1
                            [period] => month
                            [price] => 8.0000
                            [setup_fee] => 0.0000
                            [cancel_fee] => 0.0000
                            [currency] => USD
                        )

                    [package] => stdClass Object
                        (
                            [id] => 13
                            [id_format] => {num}
                            [id_value] => 1
                            [module_id] => 4
                            [name] => Bronze Standard
                            [description] => 
                            [description_html] => <p>
	<span style="color:#008000;"><em>Good Value!</em></span></p>

                            [qty] => 
                            [module_row] => 6
                            [module_group] => 
                            [taxable] => 0
                            [status] => active
                            [company_id] => 1
                        )

                    [name] => domain.com
                )

        )

Linking to Order Pages

A link to each order page is displayed in the staff area, under Packages > Order Forms. The order form marked as the default will be available at ~/order/, and all other order forms will have unique links. It's also possible to link directly to a specific package, pricing option, or step. Here are a list of GET variables that can be passed into the order process.

VariableExampleNotes
package_id[URL]&package_id=xxApplies to the first step, the package selection step, where xx is the Package ID. To determine the Package ID, edit the package in the staff area and copy it from the URL, for example /admin/packages/edit/1/ – In this case, the package_id is 1.
pricing_id[URL]&pricing_id=xxApplies to the configuration step. Selects a specific price for the package. To determine the Pricing ID, edit the package and view the source for the pricing options. Look for a hidden form field with a name of pricing[id][] and observe it's value.

 


  • No labels