Settings
Open Add-ons > Manage add-ons > Xero Accounting Sync > Settings.
General
Section titled “General”| Setting | Default | Description |
|---|---|---|
| Enable | On | When off, no new work is started. Jobs already queued are still processed. |
| Marketplace owner mode | On | Multi-Vendor only. On: every order is booked in the marketplace owner’s organisation. Off: each vendor connects their own. |
| Debug log | Off | Also stores every HTTP call with masked request and response. Tokens and secrets are never stored. |
| Log retention (days) | 90 | Older log entries are removed by the cron run. |
| Book the invoice when the order status becomes | P (Processed) | The contact and the sales invoice are created in Xero at this status. - books nothing automatically. |
| Record the payment when the order status becomes | P | The payment is recorded against the invoice and the mapped bank account. - records no payments. |
| Create a credit note when the order status becomes | I (Canceled) | Refund of the whole order, see Usage. - for none. |
| Invoice status in Xero | Approved (AUTHORISED) | Or Draft. Draft invoices wait for you in Xero and are approved automatically before a payment is recorded. |
| Invoice number prefix | WEB- | The Xero invoice number is the prefix plus the order number (WEB-1042). |
| Days until the invoice is due | 0 | Due date = order date plus this many days. |
| Sync orders from | empty | YYYY-MM-DD. Orders placed before are never sent. Use the first day of your Xero financial year. |
| Create Xero items from product codes | Off | Lines carry the product code as the Xero item code, missing items are created (name, description, price, sales account, tax type). Needs write access to Xero settings: connect again after switching it on. |
Connection
Section titled “Connection”Credentials are not ordinary settings: they are entered on the Connection page and stored encrypted (AES-256-GCM, key derived from your store’s own secret). The client secret is never shown again; leave the field empty to keep the saved value. Access and refresh tokens are stored encrypted too.
| Field | Description |
|---|---|
| Mode | Test and Live each have their own app credentials and their own connection. Use the Xero Demo Company in test mode. |
| Client ID / Client secret | From your app in the Xero developer portal (Configuration). |
| Redirect URI | Shown for you to register in the app; it must match exactly. |
| Connect to Xero | Starts the authorization. Scopes asked: offline_access accounting.transactions accounting.contacts and accounting.settings.read (accounting.settings when Create Xero items is on). |
| Xero organisation | The organisation orders are booked to; chosen after connecting. |
Mapping
Section titled “Mapping”Open Orders > Xero sync > Mapping. Values are Xero codes; the lists loaded from Xero appear as suggestions while you type.
| Field | Description |
|---|---|
| Sales account code | Revenue account for product lines and payment surcharges (Xero default 200). |
| Shipping account code, Discount account code | Accounts for the shipping line and for the order discount line. |
| Default bank account code | Bank account (or account that allows payments) used when a payment method has no own entry. |
| Bank account per payment method | One code per active payment method of your store. |
| Standard tax type | Xero tax type used for taxed lines whose CS-Cart tax has no own mapping, for example OUTPUT2 (UK 20% VAT on income), OUTPUT (Australian GST on income). |
| Tax type for lines without tax | For example ZERORATEDOUTPUT or EXEMPTOUTPUT. |
| Tax type for shipping | Defaults to the standard tax type. |
| Tax type per CS-Cart tax | One entry per tax of your store. |
Empty tax fields send no tax type and Xero uses the default of the account. Fill the tax types suggested for my country fills sensible codes for GB, AU and NZ organisations; always compare with the tax rates of your own organisation (the list loaded from Xero).
Tax amounts always come from the CS-Cart order and are sent per line, so the invoice total equals the order total. If prices include tax the invoice uses Xero’s tax-inclusive mode, otherwise tax-exclusive.
The queue runs from cron. Use either the command line or the secret web address shown in the Cron section of the settings:
php /path/to/store/admin.php --dispatch=kv_xero.cronhttps://your-store.example/index.php?dispatch=kv_xero.cron&key=<secret>
Log and jobs
Section titled “Log and jobs”- Log lists every call, job and connection event with filters (level, action, text, dates) and a CSV export.
- Jobs lists the queue. A job that fails is retried after 5 minutes, 15 minutes, 1 hour, 3 hours and 12 hours, then marked “Gave up”; use Retry to queue it again. When Xero answers “too many requests” the job waits for the time Xero names. While the connection needs you (expired or revoked), jobs wait six hours at a time so nothing is lost.
Multi-Vendor
Section titled “Multi-Vendor”In the vendor panel a vendor sees only their own records. With the marketplace owner mode off the vendor also gets the Connection and Mapping tabs for their own account.