• A valid XenForo Licence validation token will be required to complete signup and purchasing.
    This may retrieve this from the XenForo Customer Area.
  • All XenForo 2.3+ add-ons require at least php 8.0, recommend php 8.2+
    All XenForo 2.2+ add-ons require at least php 7.2, recommend php 8.x
    All XenForo 2.0-2.1 add-ons require at least php 5.6, recommend php 7.x.
    The Standard Library add-on is also required.
    Older php versions are not supported, and add-ons will either refuse to install or fail to function.
  • Automatic discounts are applied for orders above $100 USD (10%) or for early renewals (5%)

Xero Invoice Sync 2.4.3

Change log

  • Fix paypal without tax overriding user upgrade tax handling
  • Fix user upgrade sales tax was stored as a percentage instead of the actual computed amount, which could result in xero failing to sync or if it did sync syncing with incorrect tax details.
    • This does not fix-up incorrectly synced to xero records, as manual fix up with xero is required.
      To find these records the following queries will need to be used

      Find affected user-upgrades, this may include synced and synced records.
      SQL:
      select user_id, transaction_id, subscriber_id, purchase_request_id, cost_amount, sv_taxable_amount, sv_sales_tax
      from xf_purchase_request
      join xf_payment_provider_log on xf_payment_provider_log.purchase_request_key = xf_purchase_request.request_key
      where xf_purchase_request.cost_amount != xf_purchase_request.sv_taxable_amount;
      Go to xero, search for transaction_id and update each invoice to have the correct tax zone and tax rate. This will require removing the payment, editing the invoice and adding the payment again.

      Patch syncable records:
      SQL:
      update xf_purchase_request
      set sv_sales_tax = cost_amount - sv_taxable_amount
      where xf_purchase_request.cost_amount != xf_purchase_request.sv_taxable_amount;
      Run the invoice sync if outstanding items have been "stuck" due to errors.
Back
Top