LogiSense Billing 10.7.x Release Notes

Within these release notes you will find descriptions of new features, enhancements and API changes in the LogiSense Billing application. The content below details changes in major release versions, point release versions and hotfixes. If you have any questions about the information provided below please do not hesitate to contact your LogiSense support representative.

 

10.7.0.0 Release Notes

Change Highlights

Product Catalog Enhancements:

  • Promo Code and Discount Enhancements:

    • Added a 'Trial Discount' option when configuring discounts or promo codes on package-services which can be used in conjunction with a new invoice token called 'IsFreeTrialExpiring' to alert customers that a discount is expiring in the current billing period

    • Added the ability to configure proration on promo codes

    • Added the ability to add a promo code to an account-package or account-service that has already been billed

    • Added the ability to add a promo code discount to a sales order. Promo code discounts will apply to all valid account-services in the order

    • When a Promo Code is attached to an Order, the Discounts on the Order Packages must apply (can no longer opt out of discounts being applied)

  • Contract Enhancements:

    • Added a Revoke Discount(s) option on the Setup / Product Catalog / Contracts screen. When enabled package term penalties are calculated as if discounts do not exist

  • Price Books:

    • Modified price book configuration so that bucket details on a package-service can be customized per price book and currency

Billing Enhancements:

  • Added the ability to execute bill runs in parallel

  • Added a 'Relative Date' option to the Recurring Bill Run Schedule configuration, this allows bill runs to be executed using relative values (End of Month, Start of Next Month, End of Next Month)

  • Modified bill runs to pick up any account-packages with effective cancel dates earlier than the bill run’s period end value, regardless of the account-package's next bill date. This permits the ability to apply charges/refunds to cancelled prepaid packages without the need to wait until the package’s next bill date is reached

  • Added ‘Run Invoice’ and ‘Render Invoice’ options when billing from an account. This allows charges to be generated without invoicing them

  • Modified the Bill Run History screen to display additional data and indicate where billing was initiated from (an account, sales order or a bill run)

Account Enhancements:

  • Account Search Enhancements:

    • Added the ability to create custom account search views where you can specify the fields to return in the search results

    • Expanded the data the accounts can be searched by (e.g. Invoice data, account custom fields, account-package custom fields)

    • Clicking on a search result will take you directly to the entity (e.g. clicking on an account-package custom field search result will load the account package screen with the related account-package selected)

    • A default account search can be configured

  • Other Account Screen Enhancements:

    • Added an 'Errors' tab to the Account / Profile / Orders screen which provides details as to why creating a sales order failed

    • Clicking on a note will navigate the user to the Account / Communication / Notes screen

    • An ‘Id’ field has been added to account-packages on the Account / Profile / Packages screen indicating the Account Package ID

    • An ‘Id’ field has been added to account-services under account-packages on the Account / Profile / Packages screen indicating the Account Service ID

    • A ‘Cancellation Billing Option’ field has been added to the Account / Profile / Packages screen which indicates what cancellation option was selected for cancelled account-packages

Tax Enhancements:

  • Tax Exemption Enhancements:

    • Ability to add the tax exemption for specific taxes on the Account / Settings screen Taxes tab

    • Account tax exemptions now allow granular exemptions based on tax type and tax location, along with the existing tax level settings (federal, state, local, etc.)

    • Tax Location is defined by the Tax Jurisdiction code (a.k.a. the pcode) of a location configured for the exemption

  • Tax Addresses:

    • Added the ability to configure tax addresses on the Account / Settings screen Taxes tab. These addresses can be used to apply taxes to account-services on the account/sub-accounts

    • Updating an address configured on the Account / Settings screen Taxes tab will update the address everywhere it is used on the account/sub-accounts

    • Added the ability to configure tax addresses directly on account-packages in order to tax account-services based on where the services are located. Tax addresses on account-packages can be entered as custom values specific to the package or pulled from the list of tax addresses configured on the account. Addresses configured at the account-package level will be used for taxation instead of account contact addresses

  • Inclusive Taxes:

    • Added the ability to configure rate groups as Tax Inclusive. When this setting is enabled all rates within the rate group will be tax inclusive

    • Added a ‘Zero Inclusive Tax When Exempt’ setting to the Account / Setting screen Taxes tab. When this setting is enabled tax inclusive services on the account which are tax exempt will keep the same charge and have the taxes reduced to zero. Transactions on the Invoice screen will still show the service charge as reduced (tax taken off) but the tax amount will be $0

  • Other Tax Enhancements:

    • Added the ability to configure service tax categories on usage rates

Payment Integration and Enhancements:

  • Adyen Direct Payments Integration

    • Added Adyen as a payment provider configurable at the Owner level

    • 3DS2 protocol is supported

    • Credit card, bank account and PayPal data is tokenized with no PCI data stored in LogiSense Billing

    • One-time payments are supported

    • Full and partial payment refunds are supported

    • Rejected payments can be retried

    • The Adyen Real Time Account Updater is supported allowing credit card information to be updated or the card deactivated

    • Adyen Auto Rescue is supported and integrated with LogiSense Billing Dunning functionality allowing the invoice balance to be collected during billing for cards or that have previously failed

    • Added a new field to the Account Settings screen called 'External Account Identifier' which is populated with Adyen's shopperReference value when a payment is sent to Adyen

    • Adyen fraud alerts can be received and acted upon (disable payment methods, trigger webhooks to alert the appropriate parties)

    • Payment methods and tokens can be imported

  • Spreedly Integration

    • Added the ability to setup more than one payment type using the same card type on different Spreedly payment gateways

Owner Enhancements:

  • Moved the Branding configuration into a new ‘Owner Information’ tab

  • Added the following new fields to the Owner Information tab which can referenced with new Invoice tokens and are shown in some reports

    • Owner Name (required)

    • Owner Display Name

    • Country and Address

    • Owner VAT#

    • Owner Banking Reference ID

    • Owner Registration ID

    • Owner eInvoice Endpoint ID

  • Added a 'Bill Prepaid Adjustments' option to the Owner Configuration screen which provides control on how prepaid periods are billed

    • If this setting is disabled then only the initial prepaid package charges will be applied each billing period when the prepaid account-package is billed. Additional charges that are applicable after that based on changes made (service/package status changes, upcoming cancellations, refunds, etc.) will not be billed until the next billing period

    • If this setting is left enabled then existing system behavior will still apply

  • A Reporting tab has been added which indicates if a reporting database has been configured. When a reporting DB is enabled reporting data in LogiSense Billing can be synced to a replica database. For more information on this feature please contact us

Usage & Rating Enhancements:

  • Improved the Rating Exceptions screen UI and functionality

    • Daily aggregates per exception type can be viewed

    • Aggregates can be filtered (by date, account, count)

    • Exceptions can be reprocessed or deleted

    • Up to 200 million usage exceptions can be loaded

    • Exception statuses are provided to indicate the state of an exception

    • A new Usage Rating Exceptions report can be run using the Generate Report button

  • Added a new screen under Operations / Monitor / Identifier History which displays the history of a supplied usage identifier (the accounts, services and statuses that the usage identifier has been configured with in its history, among other details)

  • Added the ability to configure general ledger codes on usage rates and usage rate groups

Data Archive and Transfer Location Enhancements:

  • The SFTP Settings screen has been renamed to 'Transfer Locations' and AWS S3 is now supported as a location in addition to the existing SFTP option

  • Scheduled reports can be configured to be sent to an external S3 bucket in the same way they can be sent to an external SFTP location

  • Migrated SFTP from LogiSense Billing to AWS S3 to address issues with downtime that occurs during maintenance/upgrades. The Usage Importer will now stream files off of S3, instead of the inbound directory

  • Added the ability to specify an ‘External’ location in the Invoice Delivery screen configuration which, when enabled, will send invoices and their attached reports to the specified transfer location during billing

    • Invoices sent externally will mark the invoice as delivered

    • Invoices delivered externally can still be downloaded from the LogiSense Billing application

    • Email templates can be attached to an invoice delivery that is setup to transfer the invoice to an external location allowing billing contacts to be notified by email when the invoice export occurs

  • Added the ability to export archived data to transfer locations when setting up a data archive

  • Added a new Delta Export data archive type which permits daily changes to account data to be sent to a transfer location

  • Added a new File Transfer screen in the Operations / Monitor menu to provide a history of file transfer events and their details

Invoice and Template Enhancements:

  • Moved Invoice and Credit Note Template files into AWS S3 buckets allowing template updates to be made without the need to log into the LogiSense Billing AdminPortal

  • Added a new Invoice Template Type XML eInvoice which stores the template as a PEPPOL 3.0 standard text document instead of a Word Mail Merge template

    • An Invoice Delivery can be setup to use the eInvoice template which renders the XML text document during billing

    • The XML text document can be exported to an external transfer location using the Offline Delivery option

    • Added the fields ‘Added VAT #’, ‘eInvoice Scheme ID’ and ‘eInvoice Endpoint’ fields to the Account / Settings screen Account tab

  • Modified Invoicing logic to adjust invoices with a negative balance to a zero balance value as new invoices are created and the negative balance is applied to the next invoice. This approach addresses issues with aged invoice balance reports

  • Added a new Account Id invoice token

  • Added a currency 'Format' field when configuring invoice or credit note templates. This setting allows the default formatting for tokens of type 'Money' to be overridden on invoices/credit notes

  • Adjusted validation to allow using the same Alias name when adding custom reports to invoice templates

Webhook Enhancements:

  • Updated Webhooks to support OAuth 2.0 client credentials

  • Added the ability to send webhooks from dunning events

  • Modified the Webhooks Monitor screen to be able to view webhooks coming into the system

  • Modified the Webhooks Monitor screen to provide more details to aid in resolving errors and tracking/sorting payment events

  • Added a new webhook entity 'Payment Status Updated' which is triggered when a payment record in LogiSense Billing changes status

Other Enhancements and Fixes

  • Many UI and API validation fixes and improvements

  • Billing and rating performance and resiliency improvements

  • Security improvements

  • Improved performance when loading large reports

  • Removed the total count value from the paging controls of many screens to address performance issues

  • Modified package contracts to permit them to be added to an account-package with any start date, even a date that precedes the effective date of the account-package

  • Modified general ledger names to support up to 255 characters

  • Updated several screens to adhere to the standard left hand side menu format

  • Moved the Rating Exceptions and Import History screens into the Operations / Monitor menu

  • Added LogiSense Billing Entity ID, Single Sign-On URL and Billing Tenant URL details to the Owner Configuration SAML Setting tab

  • Fixed an SSO issue where SCIM users would remain in the SCIM default role group after a new group was configured on the user

  • Removed the option to add a new default account service status from the Services screen

  • Removed the field type 'Text' when creating custom fields to address performance issues. Existing custom fields setup with the Text field type will still be able to use this type

  • Fixed an issue where an account-package with an effective date time value of 00:00:00.000 could result in an extra charge for a prepaid, charge full period account package

  • Fixed an issue where voiding an invoice could result in an incorrect next bill date being set on prepaid account-packages with non-recurring charged services

  • Fixed an issue with prepaid packages where an account-service status could not be changed from a suspended status to a billable status in some scenarios

  • Fixed an issue that prevented the reversal of a remaining partial transaction on a sub-account if the sub-account was configured with a different currency than its invoicer account

  • Fixed an issue that prevented a partial reversal of a previously reversed transaction that was voided

  • Fixed an issue that could cause invoice re-rendering to fail

  • Fixed an issue where a package configured to bill on its own bill day would be set with a bill day of the 28th instead of the 1st when the account-package was added on the 29th, 30th or 31st day of the month

  • Fixed an issue that could generate an unexpected API error response when attempting to select a product code while creating an order

  • Fixed an issue where re-rating might not be triggered when an account in overage had an account-service added containing a shared bucket and the account-service was later cancelled

  • Fixed an issue that could cause email template tokens to fail to resolve

  • Added a BillAccount permission to the Account Profile permissions list to control if a user has permissions to bill an account or not

  • Fixed a permission issue that prevented a user with valid permissions from creating a sales order

  • Fixed a permission issue that prevented a user with read-only permission from accessing the package frequencies screen

  • Fixed several issues with data imports and the Data Import screen

  • Added a totalCount property to child embedded datasets for use in invoice templates

  • Modified the Developer / Server / API screen not to display deprecated API versions in the Version drop down list

  • Modified the CompanyIdentifier field to support only 20 characters to match the Avalara character limit

  • Modified customer portal UI to clearly indicate which payment methods are active on an account

10.7.0.0 API Changes

API versions v4 is deprecated as of this release

API Version 9 is introduced in this release

  • API Enhancements:

    • API error handling fixes and improvements

    • Added the ability to specify a Idempotency Key which can be optionally sent in with a non-GET API request

    • Added a new Client ID/Secret Authentication Type for API Users (configured on the Setup / Users & Accounts / Users screen). Instead of authenticating with a username/password, with the password following password expiry rules, the user will authenticate with a Client ID (the username) and client secret (an API key), which does not expire

  • Deprecated APIs:

    • Account/Summary (all versions)

    • Account/Summary/Paged (all versions)

    • Udr/Aggregate/UsageRate (all versions)

    • Udr/Aggregate/UsageRate/Paged (all versions)

    • Udr/Aggregate/UsageRate/<id> (all versions)

    • v9/BillRun/Schedule//Recurring (v5-v8 versions still available)

    • v9/Account/Summary/{id:int} (v5-v8 versions still available)

  • Updated APIs:

    • v9/Account/Package/FromCatalog: added nonBillableServiceStatusTypeName to AccountPackageFromCatalogServiceDTO, added ImportLastUsageBilled to AccountService (but not on AccountServiceDTO)

    • v5-v8/Package/Frequency/id/Detail: PriceBookId is now included in the usageBucketTiers, moneyBuckets detail sections

    • v9/Package/Frequency/id/Detail (Get): usageBucketTiers, moneyBuckets, defaultUsageBucketTiers, defaultMoneyBuckets are no longer returned in the detail section

    • v5-v8/Package/Frequency/id/Detail (Get): PackageFrequencyDetail.usageBucketTiers, PackageFrequencyDetail.defaultUsageBucketTiers to use new DTO UsageUnitsBucketTierDTO PackageFrequencyDetail.moneyBuckets, PackageFrequencyDetail.defaultMoneyBucketTiers to use new DTO MoneyUnitsBucketTierDTO

    • v9/Package/Frequency/id/Detail (Post, Put): PackageFrequencyDetail.usageBucketTiers, PackageFrequencyDetail.defaultUsageBucketTiers to use new DTO UsageUnitsBucketTierDTO PackageFrequencyDetail.moneyBuckets, PackageFrequencyDetail.defaultMoneyBucketTiers to use new DTO MoneyUnitsBucketTierDTO

    • v9/Template (Get): made public

    • v9/Template/{id} (Get): made public

    • V9/Invoice/Item (Get): Added public int InvoicerAccountId { get; set; }, public string InvoicerAccountName { get; set; }

    • V9/Invoice/Item/Paged (Get): Added public int InvoicerAccountId { get; set; }, public string InvoicerAccountName { get; set; }

    • V9/Invoice/Item/Paged/Detail (Get): Added public int InvoicerAccountId { get; set; }, public string InvoicerAccountName { get; set; }

    • V9/Invoice/Item/{id} (Get): Added public int InvoicerAccountId { get; set; }, public string InvoicerAccountName { get; set; }

    • V9/Invoice/Item/{id}/Detail (Get): Added public int InvoicerAccountId { get; set; }, public string InvoicerAccountName { get; set; }

    • v9/Payment (Get, Post): Added public int PaymentStatusTypeId { get; set; }

    • v9/EventSubscription/Webhook (Post, Patch): Added public string OAuthClientSecret { get; set; }

    • Account/Package/{id}/Detail (Get, Post, Patch): Removed AccountService CurrentRatePlan from accountServices Detail and removed AccountPackageRecurringPriceTier CurrentRatePlan from AccountPackageRecurringPriceTier Detail

    • Account/Package/Paged/Detail (Get, Post, Patch): Removed AccountService CurrentRatePlan from accountServices Detail and removed AccountPackageRecurringPriceTier CurrentRatePlan from AccountPackageRecurringPriceTier Detail

    • Account/Service/{id}/Detail (Get, Post, Patch): Removed AccountService CurrentRatePlan from Detail

    • Account/PricePlan/{id}/Detail (Get, Post, Patch): Removed AccountPricePlan CurrentRatePlan from Detail

    • Account/PricePlan/Paged/Detail (Get, Post, Patch): Removed AccountPricePlan CurrentRatePlan from Detail

    • Package/Service/PricePlan (Get, Post, Patch): Removed RecurringPriceTier CurrentRatePlan from RecurringPriceTier Detail

    • v9/Owner (Get): Added public bool IsReportingDatabaseEnabled { get; set; }

    • v9/ReportDefinition (Get, Post, Put, Patch): Added public bool UseReportingDatabase { get; set; }

    • AuthorizationServer/api/V9/Access/Login (Post): Added public string client_secret { get; set; }

    • v9/Account/Detail (Get, Post, Put, Patch): Added public ListResultsDTO<AccountTaxExemptionDTO> AccountTaxExemptions { get; set; }, removed public ListResultsDTO<AccountTaxExemptLevelDTO> AccountTaxExemptLevels { get; set; }

    • v9/ReportDefinition/{reportDefinitionId}/Render (Post): ReportRequest Header Updated:

      • Added “onDemandFilters” as of v9

        • Supports dataSourceName and dataSourceColumnName

        • filterId removed

      • Deprecated “filters” (can use in API version v8 and below)

    • v9/Usage/Rate (Get, Post, Put, Patch): Added GeneralLedgeId and ServiceTaxCategoryId

    • v9/Owner (Get, Patch): Added public bool BillPrepaidAdjustments { get; set; }

    • v9/Account/Package/FromCatalog (Post): Added public int discountPromoCodeId { get; set; } and
      public string discountPromoCodeName { get; set; }

    • v9/Order (Get, Post, Put, Patch): Added public int discountPromoCodeId { get; set; }

    • v9/Usage/Rate/Group (Get, Post, Put, Patch): Added public int GeneralLedgerId { get; set; }
      and public string GeneralLedgerName { get; set; }

    • v9/Usage/Rate/Group (Post, Get): Added public bool IsTaxInclusive { get; set; }

    • v9/Account (Get, Post, Put, Patch): public bool ZeroInclusiveTaxWhenExempt{ get; set; }

    • v9/Account (Post, Put, Patch, Delete):

      • Added optional custom taxAddresses to details

        • public ListResultsDTO<TaxAddressDTO> TaxAddresses { get; set; }

      • and TaxAddressDTO:

        • public string Name { get; set; }

        • public bool IsShared { get; set; }

        • public int AccountId { get; set; }

        • public string AccountName { get; set; }

        • public int AddressId { get; set; }

        • public bool SaveTaxAddressOnInvoicer { get; set; }

        • public string Address1 { get; set; }

        • public string Address2 { get; set; }

        • public int StateId { get; set; }

        • public string StateName { get; set; }

        • public string StateCode { get; set; }

        • public int CountryId { get; set; }

        • public string CountryName { get; set; }

        • public string CountryCode { get; set; }

        • public string ZipCode { get; set; }

        • public long TaxJurisdictionCode { get; set; }

        • public string CityName { get; set; }

        • public DateTime TaxJurisdictionCodeUpdated { get; set; }

        • public long TaxJurisdictionCodeOverride { get; set; }

        • public bool IsIncorporated { get; set; }

    • v9/Account/Package (Get, Post, Put, Patch, Delete): Added ability to set optional shared taxAddressId or custom taxAddress in details

    • v9/Account/Package/FromCatalog (Post): Added ability to set optional shared taxAddressId or custom taxAddress

    • v9/Order (Get, Post, Put, Patch, Delete): Added ability to set optional shared taxAddressId or custom taxAddress in OrderPackage

    • v9/Rerate (Get, Post, Put, Delete): public in v5, internal in v6 onwards

    • v9/Account/Package (Post, Patch): Added int IsFreeTrial { get; set; }

    • v9/PaymentMethod/CreditCard (Post): Added int PaymentGatewayId and string PaymentGatewayName

      • NOTE: this is a Breaking Change as more than one PaymentType is now permitted to use the same CardType on different PaymentGateways. Prior to this change a CardType could only be used once, so a PaymentType was unique

      • This does not affect Adyen integrations since only one Adyen PaymentGateway is allowed

      • For Spreedly, if a CardType is used multiple times, then the PaymentGateway MUST be provided for these API routes, or an error will be returned

    • v9/PaymentMethod/BankAccount (Post): Added int PaymentGatewayId and string PaymentGatewayName

      • NOTE: this is a Breaking Change as more than one PaymentType is now permitted to use the same CardType on different PaymentGateways. Prior to this change a CardType could only be used once, so a PaymentType was unique

      • This does not affect Adyen integrations since only one Adyen PaymentGateway is allowed

      • For Spreedly, if a CardType is used multiple times, then the PaymentGateway MUST be provided for these API routes, or an error will be returned

    • v9/PaymentMethod (Get): Added int PaymentGatewayId and string PaymentGatewayName

  • New APIs:

    • v9Package/Frequency/{id}/PriceBook/{id}/Currency/{id}/UsageBucketTier (Get)

    • v9/Package/Frequency/{id}/PriceBook/{id}/Currency/{CurrencyCode}/UsageBucketTier (Get)

    • v9/Template/CreditNote (Post)

    • v9/Template/Invoice (Post)

    • v9/Template/CreditNote/{id} (Put)

    • v9/Template/Invoice/{id} (Put)

    • v9/JsonApi/ApiVersion/Available (Get)

    • v9/UsageRatedExceptionSchedule/Reprocess (Post)

    • v9/UsageRatedExceptionType (Get)

    • v9/Administration/User/* (Get, Post, Patch)

    • v9/PaymentMethod/Import/Sync (Post)

    • V9/CustomDataSource/ByConnection/{id:int}/Paged?useReportingDatabase=(true/false) (Get)

    • V9/CustomDataSource/ByConnection/{id:int}?useReportingDatabase=(true/false) (Get)

    • v9/Account/ByName/Search (Post)

    • v9/Account/ByHierarchy/Search (Post)

    • v9/Account/[id]/Balance?asOf=[Date] (Get)

    • v9/ResourceServer/api/Ping (Get)

    • v9/AuthorizationServer/api/Ping (Get)

    • v9/UsageIdentifier/ByIdentifier/Search (Post)

    • v9/Account/{id}/TaxAddress/Search (Post)

    • v9/Account/{id}/TaxAddress/AvailableFor/Search (Post)

    • v9/Account/Package/ByExtension/Search (Post)

For additional API documentation please see the API Reference documentation on logisense.com.

10.7.1.0 Release Notes

  • Added an 'Allow Credit' option to the discount configuration screen. When set discounts can be configured to be greater than the price of a service (resulting in a negative charge/credit)

  • Added a 'Default Gateway' field to the Account / Settings screen Billing tab which appears if at least one payment gateway is setup in the system. This setting is used to indicate the payment gateway that will be used when payment methods are setup or payments are made

  • Modified the Adyen payment method dialog to display the Credit Card holder's name

  • Added Sage Payment Solutions as a supported gateway in Spreedly integrated environments

  • Improved performance loading data on the Account Package and Package screens

  • Re-rating performance improvements

  • Added custom fields of type String that support field sizes of 500, 1000, and 2000

  • Modified the Aged Invoice Balance data source to include Account Name, Display Name, and Currency Code columns

  • Fixed a billing issue where a daily bill run could have its End Date incremented by two days instead of one in some scenarios

  • Fixed an issue with sales orders where the invoice ID was not being saved when processing an order

  • Fixed an invoice rendering error that could occur in some scenarios

  • Fixed an email template issue where Invoice variables failed to load in the Variables list in some scenarios

  • Fixed an issue in AvaTax integrated environments where billing would fail to bill some transactions if no document codes were available when committing the transactions to Avalara

  • Fixed an issue with fixed rate usage where partially bucketed usage that went into overage was charged at a prorated rate per event instead of at the configured fixed rate

  • Fixed an issue where an error would occur after modifying a share plan's Recur Type from Recurring to Recurring with rollover

  • Fixed an issue where an error would occur when attempting to update the Threshold, Usage Unit or Flat Charge on share plan usage bucket tiers

  • Fixed an issue in Adyen integrated environments where attempting to make a payment would fail if a billing contact was not configured on the account

  • Fixed an issue in Adyen integrated environments where creating a new payment method using an existing payment method's name could result in payment processing failures

  • Fixed an issue where json files were being transferred when sending invoice attachments to an external delivery location

  • Fixed an SSO issue which could result in login errors in load balanced environments

10.7.1.0 API Changes

  • v9/Account (Get, Post, Patch, Put): added public int Default_PaymentGatewayId { get; set; }

10.7.2.0 Release Notes

  • Added Name, ID, Event and Days dunning tokens which allow dunning step details to be used by webhooks or in emails

  • Modified invoice names and invoice attachment names to include more relevant information

  • Added a 'Locales' tab to the invoice template configuration which allows multiple locales to be setup on the template. This approach reduces the number of invoice templates that need to be created in order to satisfy regional and currency requirements

  • Modified the product catalog to update the service tax category on account-services when the service tax category on a service in the catalog is changed. If an account-service has been manually configured with an alternate service tax category then it will not be updated when the service tax category is modified in the catalog

  • Removed the Invoice Render Threshold Amount field from the Bill Group configuration screen

  • Fixed an issue where attempting to re-render an invoice would fail with an Unexpected API Error Response

  • Fixed an issue when making manual tax adjustments which caused invoice amount values to be rounded to 2 decimal places

  • Fixed an issue where report generation could fail when promptable filters where configured with a default value

  • Fixed an issue where the Default Value was set as a required field when adding a filter to a report when the Required setting was not enabled

  • Removed the requirement to enter a payment method name when adding a payment method to an account if the payment method uses an Adyen gateway. Payment method names in these cases will now be auto-generated if the name is left unspecified

  • Added a Capture Setting to the Adyen payment gateway configuration screen to support Adyen automatic and delayed automatic capture

  • Added a 'Test Gateway' option when configuring an Adyen payment gateway in the AdminPortal for testing purposes. When this option is selected the 'Production Prefix' field value will be cleared and disabled

  • Added a Drop-in Merchant Account column when configuring an Adyen payment gateway. This setting allows you to define the merchant to use for $0 authorizations/tokenization. Normal payment transactions involving greater than $0 amounts will be collected using the standard merchant account

  • Fixed a data import issue that prevented Adyen payment method details from being imported

  • Fixed an issue with the Identifier History screen where canceled records were not listed in the correct order

  • Modified the Account Delta Export data archive to include 'Account', 'Account Package' and 'Account Service Extension' data

10.7.2.0 API Changes

  • API Updates and Enhancements

    • v9/Service: added to ServiceDetailDTO public ListResultsDTO<ServicePricebookSetting> ServicePricebookSetting { get; set; }

    • Fixed an issue which could cause some API calls to fail in error when multiple post/put and get calls were made simultaneously

    • Fixed an issue where sales orders containing packages with tax addresses would fail in error when attempting to submit the order via API

  • New APIs

    • v9/CountingRule (Get, Post, Put, Patch, Delete)

    • v9/EventRegistration/External (Get)

    • v9/EmailTemplateType/{id}/AvailableTokens (Get)

    • v9/EmailTemplate/Upload (Post)

    • v9/EmailTemplate/Upload/{id} (Patch, Put, Delete)

    • v9/ServicePricebookSetting (Get)

    • v9/Template/{id} (Delete)

    • v9/Template/[id]/Detail (Get)

    • v9/Template/Paged (Get)

10.7.3.0 Release Notes

  • Inheriting Service Settings by Price Book:

    • Added the ability to select a price book when manually adding a charge or credit so that the service properties (GL Code, Service Tax Category, Rate Plan, Tax Inclusive configuration) configured on the service in the price book will be set as default values when creating the transaction/credit

    • Added a 'Price Book Settings' tab to the Setup / Product Catalog / Services screen which allows optional service setting overrides to be defined. These settings will automatically be selected when configuring services on packages in the product catalog based on matching criteria (the price book name, the service currency)

    • Dunning charges will use the service settings from the first active price book found on the account being charged. If a valid price book cannot be found on the account then the default service settings set on the service will be used

    • Package Contract penalties and commitments will now inherit service settings from the price book

  • Added a new 'Email and External Transfer' invoice delivery type permitting an invoice to be sent to a billing contact and also sent to an external location

  • Modified the tax adjustment feature on the Transactions screen to auto-populate the tax adjustment fields using details from the transaction that was selected for adjustment

  • Modified Tax Rate naming scheme to include details to help identify the tax rate (federal, state, etc.) when a new tax rate is returned by AvaTax

  • Added a 'Locales' tab when configuring an invoice email template which allows multiple locales to be configured on the template. This approach reduces the number of email templates that need to be created in order to satisfy regional and currency requirements

  • Improved error handling when entering invalid or incorrect payment method data in Adyen integrated environments

  • Modified the report generator to enclose all string field data in double quotes when generating CSV reports

  • Added support for Cartes Bancaire and UnionPay in Adyen integrated environments

  • Improved performance loading account data in the account search results

  • Rating and re-rating performance improvements

  • Fixed an issue when adding an optional service containing a bucket to an existing account-package which caused the usage bucket's start date to be set to the date/time that it was added instead of the account-service's effective date

  • Fixed an issue where an error would occur when attempting to save an order with a large quantity of account-packages even though the order would be saved successfully

  • Fixed an issue where an account's balance could fail to include an additional charge from an order after billing the order

  • Fixed an issue where an error could occur when attempting to modify service details in an order when account-services in the order were configured to be tax inclusive

  • Fixed an issue where price overrides could not be configured on tiered bracketed prices in an account-package attached to an order if the same package in the catalog was also configured with a package frequency that used progressive tiered pricing

  • Fixed an issue where contract commitment penalties were not charged at the correct amount if the service used to apply the charge was configured to be tax inclusive

  • Fixed an issue where a duplicate recurring credit would be applied when an account-service with a prorated discount applied to it was cancelled mid period

  • Modified invoicing logic to ensure currency symbols on invoices are rendered based on the currency set on the account and not the currency configured on the invoice template locale

  • Fixed an issue where an account's previous balance may have been incorrect when displayed using the invoice.previousBalance invoice token in scenarios where voided invoices existed on the account

  • Fixed an issue where invoices could be transferred to an external location without an email template being specified

  • Fixed an issue where a bill run could remain stuck In Progress when attempting to deliver invoices to an SFTP transfer location if there was an error connecting to the SFTP

  • Fixed an issue where amounts were displayed using only 2 decimal precision when editing usage rates on account price plans

  • Fixed an issue where a voided tax adjustment would not be rebilled, referenced on the next billed invoice nor reflected in the account balance

  • Fixed a rounding issue that would result in incorrect aggregate values in rare scenarios

  • Fixed a parsing issue which prevented operations against float values in data transforms from being applied

  • Fixed an issue that could cause a webhook to fail to send and return a token is invalid error

10.7.3.0 API Changes

  • API Updates and Enhancements

    • Account (Patch): Fixed an issue where attempting to add account level tax exemptions would fail for all API versions prior to v9

    • v9/Invoice/Item/ReverseCharge (Post): Fixed an issue where a reversal charge for a reversed tax adjustment was not attached to the next invoice generated in scenarios where the tax adjustment needed to be converted into another currency

    • v9/Payment/Import (Post): PaymentProviderID can now be sent when importing a payment method in Adyen integrated environments. If the PaymentGatewayID is not provided then the PaymentProviderID will be used to attempt to automatically determine the PaymentGatewayID

  • New APIs

    • v9/EventSubscription/Email (Get)

    • v9/EventSubscription/Webhook (Get)

10.7.3.1 Release Notes

  • Modified the Credits and Transactions screens to auto-populate the price book value when entering manual credits/transactions if only one price book is configured on the account

  • Modified the Credits and Transactions screens to update the service settings from the appropriate price book when the user changes the selected service while entering a manual credit/transaction

  • Modified the Credits screen to auto-populate 'Invoice and Credit Note' in the Show On drop down field

  • Modified password lockout policy not to apply to API and Service users with repeated invalid login attempts

  • Removed IP based lockout functionality as it is no longer relevant

  • Modified account screens to navigate the user back to the Account Overview screen when clicking the back button in the browser

  • Fixed an issue where it was possible to edit values that should have been read-only on cancelled accounts

  • Fixed an issue which caused invoice attachments not to be sent when delivering invoices by email in some scenarios

  • Fixed an issue where the reset password link sent in reset user password emails presented html code instead of a functioning hyperlink

  • Fixed an issue where no search results would be returned when using operators to query certain columns

10.7.3.1 API Changes

  • API Updates and Enhancements

    • v9/Account (Get): fixed an issue that would cause a 'is not a valid name' error when querying a VATNumber

10.7.3.2 Release Notes

  • Modified the Transactions screen to show unbilled reversal transactions under the Transactions heading

  • Removed the uniqueness requirement on Account_ExternalIdentifier so that multiple accounts can use the same ID value

  • Added support for Visadankort and Bijcard card types in Adyen integrated environments

  • Fixed an issue which prevented a share plan add-on or global add on package from being created in the AdminPortal

  • Fixed an issue on the Transactions screen that prevented reversals from being deleted on the Reversals tab

  • Fixed an issue where an incorrect balance due value would be updated on an account after reversing a tax-inclusive, line based transaction with a quantity value greater than 1

  • Fixed an issue that could cause a database timeout during billing and impact email invoice delivery in rare scenarios

  • Fixed an issue where billing with the Term option set and processing a large number of invoices could result in incorrect bill run details on the Bill Run History screen

  • Fixed an issue where an incorrect tax amount was calculated when reversing a transaction with the Tax Inclusive option enabled

  • Fixed an issue in Adyen integrated environments where disbursement amounts were not properly calculated when refunding a payment

  • Fixed an issue in Adyen integrated environments where syncing of merchant accounts would fail when a second payment gateway was configured

  • Fixed an issue in Adyen integrated environments that would cause an error when configuring a gateway if merchant accounts existed with duplicate names

  • Fixed an issue in AvaTax integrated environments where tax applied was not fully reversed when reversing a manual transaction with a quantity value greater than 1

  • Caching improvements to ensure old report configuration data is invalidated in multi-server environments

  • Fixed an issue that could result in incorrect UsagedByAccountServiceUsageRateBillingID values on custom reports

  • Fixed an issue which limited the precision value displayed on reports to a maximum of 6 decimal places

  • Modified the Rating Exceptions screen not to show exceptions with a zero count value

  • Added missing screen permissions for the Rating Exceptions screen

  • Fixed an issue where an account-service's updated value was not updated in the database after canceling and billing the account-service, resulting in account-service delta changes not being included in the list of cancelled account-service records

10.7.3.3 Release Notes

  • Rating resiliency improvements

  • Permissions for Account Search and Account Overview are now inherited. If a user has access to any other Account screens (Profile, Billing, Communication, Settings) they also are granted permission to search for accounts and access the Overview screen

  • Added the ability to modify the auto-disburse setting on invoiced credits in the AdminPortal

  • Added the ability to modify the Expire After and Expire After Frequency values of non-recurring buckets on account-services

  • Expired buckets can have their Expire After value modified in order to make the bucket active again (this will trigger a rerate if the bucket has usage applied to it)

  • Modified billing logic to calculate using all invoices with negative balances regardless of their due date when making payments. Previously only invoices with a due date on or before the current date were considered

  • Fixed an issue which could cause incorrect date/time values to be set on account-service status last updated dates

  • Fixed a billing issue that could cause accounts to be repeatedly queued for payment processing in environments with a large number of accounts (40k+)

  • Fixed a billing issue where two aggregate invoices with a balance equaling zero dollars could still result in automatic payment collection occurring

  • Fixed an issue where orders could not be saved if optional custom fields related to account-services were not populated

  • Fixed an issue where an update failed error would be returned when attempting to edit a draft order

  • Fixed an issue where multiple clicks were required to be able to select an Effective Date using the calendar feature on the Orders screen

  • Fixed a permissions issue where left hand side menus could still appear if a user had 'no permissions' set for the menu

  • Fixed a permissions issue which resulted in an error when attempting to access the custom fields screen

  • Fixed an issue in Adyen integrated environments where importing payment method data for an existing payment method failed to update credit card expiry dates and payment method identifiers

10.7.3.4 Release Notes

  • Adjusted the account balance due value to now factor in negative transactions, transaction reversals and pending payments

  • Modified billing so that when an invoice is created with a negative balance it will immediately apply the balance against all outstanding invoices that contain positive balances (oldest to newest)

  • Modified billing to no longer create an invoice if only payment activity has occurred on an account

  • Modified credits so that they can be disbursed to unpaid invoices on invoicer accounts prior to invoicing occurring

  • Modified logic to disburse undisbursed credits/payments that are configured to auto-disburse to invoices after a credit/payment is deleted from an invoice (e.g. when a payment refund occurs, or a credit is manually deleted/reversed)

  • Added the ability to modify the auto-disburse setting on invoiced credits in the AdminPortal

  • Added the ability to tax manual transactions and reversals immediately instead of waiting for invoicing to occur

  • Fixed an issue where credits would not be disbursed to invoices if invoices were in Delivery Pending status

  • Fixed an issue where attempting to disburse the full amount of a credit including tax would result in a 'Disburse Amount is not within range' error

  • Fixed an issue that could cause credits to be recorded with a $0 balance adjustment in rare scenarios

  • Fixed an issue that could cause invoice balances to be incorrect when calculating payment disbursements in some scenarios

  • Fixed an issue where changing a payment to disburse automatically when it was previously configured to disburse manually would fail to automatically disburse the payment to an unpaid invoice

  • Fixed an issue that could cause an incorrect currency symbol to be rendered on invoices

  • Fixed an issue where an account set to deliver multiple invoices using the email & external delivery method would only deliver the last invoice set to be sent

  • Fixed an issue where creating partial payment refunds could lead to incorrect disbursed invoice balances

  • Fixed a rounding issue where the account balance and account balance due could differ by one cent in certain scenarios when both prorated recurring charges and prorated recurring credits existed on the same invoice

  • Fixed a permissions issue where account billing screens on child accounts could display details that only invoicer accounts should show

  • Fixed a validation issue that could allow duplicate usage identifiers to be created

  • Modified Adyen integration to update a payment method's expiry date value when the real time account updater indicates that the card has expired

  • Added support for Adyen chargeback_failed webhook events. When LogiSense Billing receives a chargeback callback from Adyen for a payment in the system, a payment refund will occur, reducing the payment amount

  • Fixed an issue in Adyen integrated environments where importing payment method data for an existing payment method failed to update credit card expiry dates and payment method identifiers

  • Fixed an issue in Adyen integrated environments that could cause payment retries for rejected payments to get stuck in a pending state

  • Fixed an issue in Adyen integrated environments that could cause duplicate payments or duplicate refunds to occur in certain scenarios when multiple webhooks were setup in the same environment

  • Fixed an issue where child account data was not being displayed when utilizing hierarchical custom reports to present invoicer and child account data on invoices

  • Fixed an intermittent caching issue that could cause incorrect values to be returned when looking up custom field values across multiple webservers

10.7.3.4 API Changes

  • API Updates and Enhancements

    • v9/Invoice/Item/Charge (Post): added the ability to set ApplyTaxNow

    • v9/Invoice/Item/ReverseCharge (Post): added the ability to set ApplyTaxNow

    • v9/PaymentMethod/Import/Sync: Fixed an issue in Adyen integrated environments that could cause a failure when adding a TWINT payment method

10.7.3.5 Release Notes

  • Modified the AdminPortal to enable the auto-disbursement option by default when creating credits and payments

  • Fixed an issue when reversing recurring credits that in rare scenarios could cause an incorrect invoice balance and account balance

  • Modified billing to prevent dunning from executing when an account's balance is zero

  • Modified payment collection and dunning to factor in negative tax adjustments when calculating the balance due in order to avoid unnecessary collections

  • Modified billing to attach payments to an invoice if the invoice is created during the same bill run

  • Fixed an issue that could cause invoice balances to be incorrect when calculating payment disbursements in some scenarios

  • Fixed an issue where the total payment value displayed on invoices could miss factoring in some payments in certain scenarios

  • Fixed an issue with tax inclusive charges that could cause a rounding error of one cent on invoice totals

  • Addressed performance issues that could cause timeouts when voiding invoices in some scenarios

  • Fixed a billing issue where contract terms were evaluated using a date-time value instead of date which could result in the collection of late fees when they were not applicable

  • Fixed an issue that could cause a usage billing exception when an account's usage bill day was scheduled to change

  • Modified Adyen real time account updater integration to update both the card number and card expiry date when receiving card changed and card expired events from Adyen

  • Modified events to trigger only when an entity is updated and the state of the entity matches the criteria defined in the event filter

Copyright LogiSense 2020