+1-757-461-3022 x124


Primary tabs

How does the tax credit for discounts work?

The credit taxes option should be enabled if you want to ensure tax payments are credited when processing early payment discounts. This option is selected by default. If not selected, taxes will not be credited when early payment discounts are processed.

Was this Helpful?
348 users have voted.

Why do some sources require special characters? (“&” and “...”)

When viewing xTuple .ts files in Qt Linguist, you will notice that some sources contain special characters, such as the ampersand (&) and the ellipsis (…). These are used by the program to identify hotkeys. For example, the source &Print is text that would appear in a dropdown menu. The & would not appear on the screen, but it allows the program to target the menu with a hotkey. The & character is used in menu items and commands, not in explanatory text. If there is a special character in the source, it must be maintained in the translation.

Was this Helpful?
346 users have voted.

How do I set up taxes on an xTupleCommerce site?

Purchases made on the xTupleCommerce site may include tax if the shipping address is within the same state as your company. Each state handles their taxes differently, so if you have questions specific to your products or state, we suggest contacting your financial advisor.

To create a CSV file for your taxes, follow these steps:

  1. Create a new spreadsheet.
  2. Add the required headers: State, ZipCode, ERPTaxZone, TaxFreight, TaxRegionName, TaxRegionCode, CombinedRate, StateRate, CountyRate, CityRate, SpecialRate.
  3. Fill out the columns and rows of information required by your state. Note: The rates need to be in decimal format (0.0625), not percentages (6.25%).
  4. Select SAVE AS, giving the file a name and changing the format to .csv in the process.
  5. Save the file.

To upload your taxes CSV file to your xTupleCommerce site, follow these steps:

  1. Login to the site as a Manager.
  2. Navigate to Admin > Control Panel > Setup taxes.
  3. Click CHOOSE FILE.
  4. Select the CSV file that you’ve created.
  5. Click UPLOAD.


Was this Helpful?
341 users have voted.

How does xTupleCommerce secure credit card transactions?

Both the xTupleCommerce system and the ERP both integrate with a secure credit card payment gateway. The following graphic provides a high-level illustration of how the process works:



  1. xTupleCommerce sends the submitted credit card information and requested amount to the Credit Card (CC) Gateway to check for a pre-authorization (preauth).
  2. The CC Gateway confirms that the requested amount is available on the credit card and provides a token for the preauth.
  3. xTupleCommerce sends the preauth token to the ERP along with the sales order.
  4. The ERP sends the token to the CC Gateway asking to confirm the preauth for the exact amount of the sales order.
  5. The CC Gateway confirms that the preauth is still valid
  6. The ERP sends confirmation of the order to the CC Gateway and requests that they charge the credit card with the exact amount.

When storing a credit card on file, xTupleCommerce uses the CC Gateway tokens that represent the credit card information and customer data. In addition, the "Blowfish Security" algorithm for encrypting sensitive information is used in the PostgreSQL database, on the ERP side. This ensures that the customer information is never passed or stored as plain text, but rather as an encrypted string of letters and numbers that serve as a key to unlock that information. Without a direct connection to the CC Gateway system through the API integration, the keys are worthless, thus preventing attackers from obtaining the sensitive information.

Was this Helpful?
329 users have voted.

How do I reset a website customer's password manually?

Once you log in to the xTupleCommerce website, go to the People menu on the Admin bar. Locate the person's username, then select EDIT on the far right. From there, you can change their password.

Was this Helpful?
323 users have voted.

Why aren't certain buttons translated? (SAVE, CANCEL, APPLY, etc.)

There are several common buttons which belong to the internal Qt development framework. These include the SAVE, CANCEL, APPLY, and other similar buttons. Because of this, the text strings for these buttons are not included in xTuple .ts files--and the strings cannot be translated using the Translation Portal. Qt does provide translation files for these common strings, however. These translation files are included with the Qt SDK's that can be downloaded off the web. For example, Qt's Spanish translation file, which is named "qt.es.qm", can be downloaded and then installed in the same directory where your other xTuple translation files are located.

Was this Helpful?
321 users have voted.

What do I do if my credit card gateway isn't supported?

You have several options if your current credit card gateway is not supported: 1) You can switch to one of the supported gateways; 2) you can use the "external" gateway option, which records the accounting transactions related to credit card charges but doesn't connect to any gateway; or 3) you can develop—or sponsor the development of—additional gateway options.

Was this Helpful?
319 users have voted.

How do I run a(n) SQL script?

xTuple's Support, Professional Services, and Development departments often provide SQL scripts to patch databases. This might be a data fix, the addition of an index to the database, a new version of a stored procedure, or other change.

There are at least three ways to do this:

  • command line tool such as psql
  • graphical user interface tool such as pgAdmin
  • the xTuple ERP desktop client's MetaSQL editor

First save the SQL script file to your local machine. You don't have to save the file to the computer running the database server as long as your local machine can connect to the server over the network.

Then start the program of your choice and log in to the database. As always, we strongly recommend that you first try any script on a backup copy of your database, not your production database.

psql Open a terminal or command window and type this:

psql -h db-server-hostname -p db-server-port -U admin -d database-name
MetaSQL editor
  • Start the xTuple ERP desktop client
  • Log in to the database
  • System > Design > MetaSQL
  • click NEW

The third step is to run the script. If the script is small, just copy it and paste it into the window you just opened. Otherwise, load it from the file:

  • \f relative-or-full-path-to-the-file
  • This runs the script in its entirety


  • File > Open... or click on the OPEN button in the toolbar
  • Query > Run or click the RUN button

MetaSQL editor

  • File > Open... or click on the OPEN button in the toolbar
  • Tools > Execute Query
  • If the script appears to run successfully, turn off 'Test Mode' and run it again:
    • Tools > Test Mode (make sure there is no check mark next to Test Mode)
    • Tools > Execute Query


Was this Helpful?
306 users have voted.

How do I backup and restore an xTuple database?

Here are the steps needed to backup and restore an entire xTuple database using pg_dumpall:

  1. Create the backup file:

    pg_dumpall -c -U postgres --quote-all-identifiers --disable-triggers -f backup.sql
  2. Edit the backup file, and insert this script after every "\connect" line.

  3. Restore the backup file (ostensibly on a BC/DR hot-spare, though you could also use this when upgrading postgresql versions):

    psql -U postgres -f backup.sql

List of scripts needed:

  • Export script:
/full/path/to/your/postgresql/bin/pg_dumpall -c -U postgres --quote-all-identifiers --disable-triggers -f $BF
  • Import script:
sed -e '/\\connect /r $PLV8' $BF > /tmp/$BF
chown postgres /tmp/$BF
rm $BF
cd /opt/local
/full/path/to/your/postgresql/bin/psql -U postgres -f /tmp/$BF
rm /tmp/$BF
  • "Create XT schema" script:
do $$
  count integer;
  query text;
  perform *
  from information_schema.schemata
  where schema_name = 'xt';
  get diagnostics count = row_count;
  if (count > 0) then
  end if;
  query = 'create schema xt;';
  execute query;
  query = 'grant all on schema xt to group xtrole;';
  execute query;
$$ language 'plpgsql';
Was this Helpful?
266 users have voted.

Why are some extensions missing?

If your list of extensions to be configured is missing extensions, it's likely those extensions have yet to be associated with your database. Please contact your system administrator for assistance.

Was this Helpful?
266 users have voted.

Why doesn't my sales order contain online transaction information?

If an online order was placed using a credit card, but in the ERP you cannot see detailed transaction information in the sales order, it's possible you may have an issue with the search path in the ERP. This is a known issue for systems where xTuple Connect is also installed. To fix the problem, go to System > Setup > Search path. When there, move the xtbatch package to the Schemas in Order column. This should fix the problem.

Was this Helpful?
250 users have voted.

Where can I find xTuple software releases and packages?

GitHub and SourceForge

Most xTuple projects are managed — and products are hosted — on GitHub. Start here on our main GitHub page: https://xtuple.github.io.

We host most non-commercial packages and releases on GitHub and on SourceForge, the community collaboration resource for open source software development and distribution. Our PostBooks® project main page is: https://sourceforge.net/projects/postbooks/. For direct access to the nightly builds, released clients, utilities, etc., visit the Files tab of our PostBooks® project page: https://sourceforge.net/projects/postbooks/files/.

If you do not have access to a GitHub repository listed below, they are marked PRIVATE. You must be logged in at GitHub. If you do not have a GitHub account, you will need to create one and request xTuple GitHub access via xTuple Forums: New Development.

Please ALWAYS check the xTuple Compatibility Matrix, which has an up-to-date listing of product and version compatibility. The version numbers on the matrix also link to the specific download.

xTuple Clients


Updater Clients


Manufacturing, Distribution, Enterprise Editions (commercial access only; contact sales)


xTuple Desktop | xTDesktop

Fixed Assets


Fixed Assets Maintenance/Depreciation (commercial access only; contact sales)


xTuple Connect | xTConnect (commercial access only; contact sales)


xDruple (commercial access only; contact sales)

https://github.com/xtuple/xdruple-extension/tree/master/packages (yes, the QT side can be installed via the updater)

Payment Gateways (commercial access only; contact sales)




xTuple Dashboards | xTDash (commercial access only; contact sales)


Don't see a package you're looking for?

Try finding the repository on xTuple's GitHub page and add "/releases" — example:


Was this Helpful?
214 users have voted.

Do I need to provide payment gateway login details?

If you are processing credit cards in xTuple using one of the supported credit card gateways, then you must provide login details for the gateway. xTuple needs these credentials to successfully communicate credit card transaction information to the gateway. If you aren't using credit cards in xTuple—or if you are using the "external" gateway option—then login details are not required.

Was this Helpful?
194 users have voted.

How do I schedule a report?

When xTuple Connect is installed, you will see a SCHEDULE button appearing near the top of most screens. This option, when selected, passes the current list parameters into the report options. Once a report has been scheduled, you can edit the job and also make it recurring from System > xTuple Connect Console. Date-based parameters will also automatically update based on the schedule frequency.

For non-list reports, go to System > Design > MetaSQL Statements and schedule an appropriate query. When processing a MetaSQL job, you will get to the Review EDI screen, where you will see an Attachments tab. On that tab, you can define a report attachment and the name of the report you want scheduled. For these types of reports, it is better to code the variable parameters into a custom report, as the parameters are not set from a screen. In this way, you know what is going to be used to generate the report.

Was this Helpful?
189 users have voted.

What are the batch manager settings for Office365 Cloud hosted emails?

There are many different options to choose from when setting up Office 365 cloud-hosted emails. The most commonly used option is Stunnel. The process of setting up the Batch Manager using Stunnel is similar to setting up Gmail, the main difference being that this process will require port 587. (More information on setting up Gmail can be found here.)

The outgoing settings for Office365 are as follows:

[SMTP Outgoing]
protocol = smtp
accept = 25
connect = smtp.office365.com:587
cert = /etc/stunnel/stunnel.pem

The other two options are direct send and SMTP relay.

  • Direct send: Will let any email send as any other email but ONLY to recipients in your domain, so no external email allowed.
  • SMTP relay: A more flexible option, but requires a static IP address on the source. You create a connector in Ofice365 that says "I trust email coming from this IP to send as whoever", which will act like a traditional SMTP server but without the authentication. More information on SMTP can be found here

Was this Helpful?
159 users have voted.