Changelog:WHMCS V8.1

From WHMCS Documentation

Version 8.1.0 Beta 1

Implemented

FEATURE-1805 - New Client Area Theme with Bootstrap 4
FEATURE-2465 - Add support for more social/service accounts
ADDON-6130 - Add support for Google Analytics v4
CORE-15144 - Add Google and Oauth settings for ticket department mail configuration
CORE-15257 - Implement User Deletion for Data Retention Automation
CORE-15507 - Implement Security Question disablement in admin's user management modal

Maintenance

CORE-10578 - Correct CC value for merged tickets
CORE-12475 - Ensure domain pricing shows free on order form
CORE-12798 - Improve link for domain renewal email generated by misconfigured cron invocations
CORE-14101 - Ensure one time promo for domain renewal only affects registration price
CORE-14254 - Ignore login requests from unsupported authentication methods
CORE-14396 - Remove AutoAuth functionality
CORE-14556 - Allow admin to delete transactions for deleted client
CORE-14618 - Improve error feedback for unaccessible Metric Statistics
CORE-14773 - Use non-linear calculation for multi-year TLD pricing with ResellerClub
CORE-14885 - Correct currency change on mobile
CORE-14935 - Add auto recalculate on save option to service addons
CORE-15058 - Align admin ticket access with assigned departments
CORE-15094 - Persist language select across all admin pre-authentication screens
CORE-15133 - Set IP banned expiry to 3 year
CORE-15156 - Update WHOIS server for .th TLD
CORE-15159 - Improve integration of custom countries with phone auto-formatting
CORE-15214 - Ensure Domain Sale Groups are translatable
CORE-15300 - Provide return link to parent product for addon
CORE-15417 - Add Kosovo to country selection
CORE-15425 - Correct measurement units shown on Database Status page
CORE-15436 - Provide graceful error when custom admin directory conflicts with routing
CORE-15470 - Create an activity log entry when upgrades are performed
CORE-15479 - Prevent last login update when authentication is the result of an admin masquerade
CORE-15493 - Correct filtering of styling for plain text email message
CORE-15526 - Correct render of CC recipients on ticket view in admin area
CORE-15534 - Remove erroneous documentation of ticketnum for AddTicketReply API
CORE-15536 - Provide translation string for Sitelock landing page
CORE-15557 - Ensure Ticket Merge Fields represent requestor
CORE-15558 - Ensure client can manage domains when admin has registration and transer disabled
CORE-15572 - Ensure client group color is present on ticket view
CORE-15575 - Improve rounding on upgrade order with non-fractional currency
CORE-15584 - Correct Order Summary view of promo applied addon
CORE-15598 - Ensure EPP Code is populated on Transfer page
CORE-15599 - Correct repeatable toggle state on client's Domin tab
CORE-15600 - Allow non-domain values in domain field when creating an order as an admin
CORE-15601 - Correct 2FA disabling for admins
CORE-15612 - Ensure custom invoice number is used in admin order confirmation notification
CORE-15625 - Correct currency prefix shown for affiliate commission
CORE-15634 - Ensure MarketConnect buy prices are shown in USD prior to activation
CORE-15635 - Include Canary Islands as country
CORE-15638 - Correct loose signature for table rending helper
CORE-15639 - Correct ticket associate for imported ticket
Also known as: CORE-15574
CORE-15645 - Provide option to delete a user in the manage user modal
CORE-15646 - Ensure Enom Getdomaininfo API requests for IDN domains are properly formatted
CORE-15647 - Ensure cart summary displays level 2 tax rule only if configured
CORE-15651 - Rectify spurious warning on domainregister.tpl
CORE-15652 - Improve error detection of APOP messages
CORE-15661 - Correct error messaage for blocked existing domain
CORE-15667 - Improve error message for DomainUpdateLockingStatus API
CORE-15672 - Prevent fatal error when using bulk tools on addons
CORE-15675 - Provide ability to disable outgoing email
CORE-15687 - Correct Remember Me cookie date
CORE-15700 - Correct path of assets for Duo 2FA
CORE-15701 - Correct SSL manage template item display logic
CORE-15712 - Improve detection of concurrent gateway transactions within same session
Also known as: MODULE-7530
CORE-15757 - Correct IDN domain data for GetRegistrarLock
MODULE-7477 - Prevent subscriptions for multi-year domain registrations

Modules

MODULE-6400 - Update list of TLDs that require TNC
MODULE-6522 - Correct indexing for Plesk accounts
Also known as: CORE-11428
MODULE-7438 - Correct arguments require for ID Protection with GoDaddy
MODULE-7439 - Correct IP data sent when configuring NameCheap
MODULE-7484 - Correct command for upgrades using Configurable Package Addon with DirectAdmin
MODULE-7490 - Correct domain fields required for .dev with ResellerClub
MODULE-7507 - Ensure retired and hidden addons are not offered related to cPanel Product Details
MODULE-7511 - Update Plaid integration for "link tokens"
MODULE-7518 - Update SenderModuleInterface to include getName and getDisplayName
MODULE-7522 - Discontinue distribution of Realtime Registrar
MODULE-7524 - Correct require citizenship field for .eu registration with Enom
MODULE-7529 - Correct applink authorization override
MODULE-7535 - Prevent superfluous re-registration for admin Duo accounts

Project Management Addon

PMA-186 - Correct display of associated ticket when using custom ticket mask

API

CORE-15458 - Allow Addon and Fraud module activation vi ActivateModule API
Also known as: CORE-15463

Languages

CORE-15622 - Improvements for French translation

Version 8.1.0 Release Candidate 1

Maintenance

CORE-12269 - Correct display of products with HTML description in Cloud Slider
CORE-12743 - Incorporate and inspect auto-responder headers for Support messaging
CORE-14789 - Improve logging of server change
CORE-14963 - Correct log description of sent admin order notification
CORE-14965 - Provide warning when attempting to place admin upgrade order if unpaid invoice exists
CORE-14970 - Optimize indexing for cron log data
CORE-15138 - Ensure ClientEdit hook fired when toggling tax status
CORE-15245 - Create translation string for Admin Authentication Confirmation
CORE-15352 - Prevent invoice creation email for downgrade orders with no invoice
CORE-15496 - Implement UserEdit hook point
CORE-15550 - Show quantity of Service/Addon on Details pages
Also known as: CORE-15877
CORE-15556 - Prevent addition of uninvoiced items to new order invoice
CORE-15570 - Introduce Marketing Opt-In and Opt-Out link merge fields
CORE-15583 - Improve display of error for invalid domain search
Also known as: CORE-15851
CORE-15607 - Correct display of promotion code on Domains tab
Also known as: CORE-15688
CORE-15610 - Correct Order Details in order emails for One Time products
CORE-15666 - Suppress admin error for previously configured invalid TLD
CORE-15668 - Provide warning when editing a product and system order form is missing
CORE-15670 - Optimize Client Log Tab Query
CORE-15671 - Show all entries on the calendar by default
CORE-15673 - Provide health check to notify when memory setting for cron is less than recommendation
CORE-15678 - Ensure Loading Saved Message keeps filters for Email Campaigns
CORE-15682 - New Invoice link doesn't work on the Billing > Invoices page
CORE-15686 - Suppress Invalid Domain warning for admin orders with a wildcard expression
CORE-15690 - Correct Product Addon selection Validation for Product Bundles
CORE-15716 - Correct webmail portal link in OX App Suite welcome email
CORE-15763 - Reject non-compliant email address for UpdateClient API
CORE-15773 - Correct markdown formatting inspection for non-latin characters
CORE-15775 - Ensure 2FA challenge is provided for password reset
CORE-15776 - Prevent error when removing quote items for new client
CORE-15832 - Correct free setup promo for mutliple quantity orders
CORE-15850 - Use correct hover cursor for admin search icon
CORE-15855 - Correct template variable of county name for SSL configuration in Twenty-One
CORE-15856 - Improve domain checker field in mobile view on Twenty-One theme
CORE-15859 - Correct styling of Checkout button for domain availability check
CORE-15860 - Correct input-group-* class for domainregister template
CORE-15861 - Ensure ticket primary sidebar text is translatable
CORE-15883 - Ensure mail_auth_config field is correctly populated on update to 8.1.0

Modules

MODULE-6646 - Ensure Stripe module converts fees to payment currency before applying
MODULE-6656 - Pass CPR details when updating whois contact details on .ca domain via ResellerClub
MODULE-7478 - Prevent Stripe PaymentIntent creation when TOS and captcha validation fail
MODULE-7527 - Add FrContact Support for .fr in ResellerClub
MODULE-7528 - Correct transfer API call to GoDaddy with additional domain fields
MODULE-7531 - Ensure GoDaddy module can verify Privacy Protection eligibility for all TLDs

API

CORE-14322 - Correct trigger for InvoiceCancelled hook via UpdateInvoice API
CORE-15567 - Ensure localAPI can generate valid tokens via createssotoken
CORE-15615 - Allow validation for select fields to be skipped for AddClient
CORE-15674 - Correct support of IDN domains for SaveRegistrarLock and DomainUpdateLockingStatus API
CORE-15788 - Allow Client Status filtering in GetClients API
CORE-15829 - Correct relative path for unauthenticated OAuth authorization
CORE-15840 - Clarify documentation that WhmcsDetails API is available as of v8.0

Languages

CORE-15825 - Hungarian language improvements
CORE-15847 - French language improvements

Version 8.1.0 General Availability

Maintenance

CORE-10886 - Do not send "Invoice Created" email when Order does not have invoice
CORE-12227 - Add search and UI improvements for module log
CORE-14738 - Provide Health Check for known MySQL variable issues
CORE-14777 - Correct unpaid invoice total calculations on "My Invoices" sidebar
CORE-15210 - Improving logging of admin actions related to affliate operations
CORE-15211 - Include negative tax rates in invoice email
CORE-15586 - Prevent error when transferring domain whose associated service's server does not define nameservers
CORE-15595 - Correct language selection for Admin New Order notification
CORE-15677 - Ensure Load Saved Message options reflect selected email type
CORE-15709 - Display Generic Feedback on Ticket Feedback Comments report
CORE-15711 - Improve support department POP setup UI
CORE-15739 - Only render Mass Payment button when enabled and client has unpaid invoices
CORE-15751 - Optimise downloads routine when no service provided
CORE-15774 - Improve resilience of domain SSL status sync
CORE-15795 - Prevent superfluous empty option for CC Recipients when viewing ticket as admin
CORE-15804 - Correct filtering behavior of client custom fields for Email Campaigns
CORE-15820 - Correct typo in "Available Merge Fields" section on email templates
CORE-15869 - Ensure client currency is used if available in admin order process
CORE-15878 - Prevent quantity factor of recurring amount when creating a line item of a multiple quantity service
CORE-15879 - Correct One Time promo calculation for multiple quantity service
CORE-15881 - Ensure time input is used when provided for AddInvoicePayment API
CORE-15882 - Ensure all distributed mail provider support the Reply-To header
CORE-15890 - Add Facebook Sign-in Feedback Error String to Language File
CORE-15897 - Correct display of country on save of Contact in Client area
CORE-15898 - Correct generation of UUIDs required for API actions
CORE-15899 - Remove reference to obsolete client_password merge field
CORE-15905 - Retain invites for 7 days following expiry
CORE-15907 - Correct saving of input for Mail Provider details
CORE-15910 - Improve small port view for password reset in Twenty-One
CORE-15913 - Implement automatic pruning of Module Log
CORE-15914 - Update WHOIS server for .NU
CORE-15922 - Improve display of navigation bar with many items for Twenty-One
CORE-15923 - Correct template inheritance for Marketconnect Upsells
CORE-15932 - Update EV upsell messaging
CORE-15940 - Correct display of Allow Multiple Quantities in Products/Services
CORE-15942 - Prevent partial render on invalid ticket request
CORE-15944 - Ensure correct expiry date is set for multi-year registrarion
CORE-15950 - Include pid if available when redirecting to product group
CORE-15952 - Update EV icon
CORE-15953 - Ensure registrant contact fields are visible when bulk editing domain contact information
CORE-15955 - Implement GetUsers API
CORE-15958 - Improve remote bank + remote gateway migration
CORE-15960 - Correct inheritance for invoicepdf.tpl
CORE-15966 - Ensure OX App Suite upgrade utilises quantities
CORE-15978 - Ensure Security Questions in use cannot be deleted
Also known as: CORE-15981
CORE-15994 - Correct internal type related to display of domain registration pricing
CORE-16013 - Prevent error when providing invalid domain search term in Admin WHOIS lookup

Modules

MODULE-7537 - Ensure credits apply to accounts with addons
MODULE-7541 - Transliterate Statement Descriptor Suffix for Stripe
MODULE-7545 - Correct server sync API request for DirectAdmin

CORE-15928 - Improve resilience of mod_pleskaccounts update routine

Addons

ADDON-6132 - Improve styling of Licensing addon for use in theme Twenty-One

Project Management Addon

PMA-188 - Correct display of associated projects when using custom ticket mask
PMA-189 - Improve compatibility with Twenty-One
Also known as: PMA-190

API

CORE-16008 - Rectify distributed example for OrderProductPricingOverride hook

Languages

CORE-15888 - Update Azerbaijani translations
CORE-15921 - Update Hungarian translations
CORE-15925 - Improvements for Admin Hebrew translation
CORE-15927 - Improvements for Client Hebrew translation