In August we worked on:

New Features:

  • General Ledger: Added tests for sales, payments, and allocations, expanded loyalty reward tracking in the ledger, and improved loyalty management by preventing duplicates and ensuring accurate liability and store tracking.
  • P&L: Created a new Profit & Loss interface with Vue 3, enhancing data display, API metrics, and adding a mobile view for easier financial data access and analysis.
  • Web POS: Set up a workspace to organize apps and reuse packages, improving back-office system management.

Improvements this month concentrated on:

  • Shipped Items: Improved data consistency across environments.
  • Web Order: Cancelled pre-authenticated VII when order changes occur during checkout to prevent overspending.
  • Quick Search: Added a 250ms debounce feature for better performance.
  • Referral Program: Developed backend for store onboarding referral data and restarted self-onboarding/admin dashboard projects.
  • Cash Up Report: Simplified page layout by removing the previous week’s column.
  • Gift Card Payment: Removed the option to select “gift card” for manual payment to streamline the General Ledger.
  • Loyalty Redemption: Improved data accuracy by preventing use of ‘Loyalty’ as a reference on invoices.
  • P&L: Adjusted interface to display previous month’s data for easier financial analysis.
  • Font Awesome: Updated to support new icons, including Twitter ‘X’.
  • Checkout Loyalty: Enhanced checkout by dynamically updating loyalty points used in orders.
  • Returns: Improved loading speed by displaying only recent data by default on the “Awaiting Credit Notes” page.
  • Stock Take Scanner: Increased efficiency by removing unnecessary ‘info’ function.

Housekeeping & Upgrades concentrated primarily on Rails, Depreciate Feature Flags, Customer Orders and Vue 3 Upgrade


New Features

  • General Ledger
    • We added and verified tests for sales, payments, and allocations to ensure accurate ledger records. Improved data translator enqueuing for better efficiency. #188015792 #188011195 #188010744 #188009910 #188009769 #188009570 #187895366
    • We progressed in our new feature in development by expanding the general ledger functionality by translating loyalty rewards, ensuring that loyalty points given to customers are accurately reflected in the ledger. #187470473 #188011195
    • We progressed in developing our new feature by tracking the loyalty rewards to ensure that our General Ledger will consider our loyalty correctly. #187470473
    • We progressed in our new feature in development by improving loyalty management, preventing duplicate translations, ensuring accurate liability reduction, and linking points to the correct stores for better tracking. #188106614 #188046250 #188118179
  • P&L
    • Created a new Profit & Loss interface with Vue 3 for better store performance metrics, adjusted data display order, and improved the API for up-to-date info. #187855295 #187994447 #187923623
    • We progressed in our new feature in development by improving the P&L interface by implementing a mobile view, making it easier to access and analyse financial data on mobile devices. #188014471
  • Web POS
    • We progressed in our new feature in development by setting up a workspace, allowing us to organize apps and reuse packages more efficiently, which enhances our ability to manage the back office system. #187991408

Improvements

  • Customer Orders
    • Shipped Items
      • We ensured that shipped items are consistently displayed across different environments for the same website, improving data consistency. #187812578 #187890912
  • Website
    • Vii
      • Web Order
        • We ensured that if a customer changes their order during the web checkout process, the pre-authenticated VII is cancelled to prevent overspending issues. #184706857
    • Quick Search
      • We improved the quick search functionality by adding a debounce feature, which waits 250ms before processing the search input, reducing unnecessary searches and improving overall performance. #188039322
  • Onboard
    • Referral Program
      • We developed the backend for the store onboarding referral data, enabling store owners to refer users to the site’s onboarding flow and participate in an incentives scheme.
      • We restarted our self-onboarding and admin dashboard projects from a fresh codebase to resolve technical issues, ensuring that our referral program works seamlessly with the latest system updates. #188095273
  • Cash Up Report
    • We removed the column for the previous week but moved the “<< Week __” to the left side column, simplifying the page and reducing query and calculation load. #187968546
  • Gift Card Payment
    • We enhanced the invoice and accounts page features by removing the option to select “gift card” for manual payment, reducing confusion and contributing to the organisation of our General Ledger feature. #188002733
  • Loyalty Redemption
    • We prevented shops from using the ‘Loyalty’ term as a reference when making alterations on the invoice page, reducing confusion and improving data accuracy. #188034476
  • P & L
    • We adjusted the interface to display the previous month’s data instead of the current one, helping users to analyse past financial performance more easily. #188057560
  • Resource
    • Font Awesome
      • We updated the Font Awesome resource to support new icons, such as the Twitter ‘X,’ ensuring that users can use the latest icons without encountering display issues #188015898
  • Checkout
    • Loyalty
      • We improved the checkout process by dynamically updating the loyalty amount given to customers based on the loyalty points applied to pay the order, enhancing transparency and accuracy #188047234
  • Returns
    • Historical Data
      • We improved the loading speed of the “Awaiting Credit Notes” page by setting it to show only the most recent year of data by default, while still allowing users to filter for older records if needed. #187747437
  • Stock Take
    • Scanner
      • We improved efficiency by removing the unnecessary ‘info’ function from the stocktake scanner page, reducing the load on our servers and speeding up the scanning process. #188039556

Housekeeping & Upgrades

  • Rails 7.0
    • We fixed an automated test, ensuring that our test suite remains comprehensive and reliable. #187934140 #187894750
    • We’ve upgraded to Rails 7.0 alpha for better performance and security, fixed minitests, updated date formats, and ensured tests run correctly. #187935056 #187934895 #187991446 #187934140
    • We started our tests using the Rails 7.0 version, added resources to improve our server performance and fixed some automated tests. #188006942 #188033390 #188036860 #187940684 #187970531
    • We corrected a validation that was wrongly implemented related to our General Ledger feature that we are developing, se to ensure data integrity and proper functioning of the ledger chart rules. #188052287
    • We updated the Stripe resource that we use as a payment method to ensure our payment processing remains secure, efficient, and compatible with the latest Rails version. #188070275
    • We enhanced our platform’s date display, testing process, and job scheduling to ensure everything runs smoothly and consistently with Rails 7.0 #188012363 #187935068 #188090204
    • We prepared for the upgrade to Rails 7.1 by applying codebase refactors, laying the groundwork for a smooth transition to the new version #188070770
  • Rails 6.1
    • We removed some changes from the migration files, making it easier to review changes and preventing unwanted modifications in our version control system. #187926295
    • We streamlined our testing setup by removing outdated Rails 6.0 from our GitHub continuous integration, focusing our resources on the more current versions. #188108940
  • Backoffice
    • Switch to Beta
      • We updated the customer-facing link to direct users to the correct server environment, ensuring they access the right version of our system after our recent upgrade. #188111267
  • Spec fix
    • We removed the Xero refreshing token settings controller spec because the feature is adequately covered elsewhere, streamlining our testing process. #187673413
  • Loyalty Promotion
    • We made it easier to identify the loyalty points gained when placing an order by displaying the Loyalty Promotion clearly. #187623063
  • API > Logs
    • We added a log tracking report for failing API requests, helping us quickly identify and address issues with our API. #187540697
  • CI
    • We fixed the continuous integration (CI) system so that it runs all the specified 229 spec files correctly instead of stopping prematurely, ensuring thorough testing and reliable builds. #188016124
  • Customer Orders
    • Shipped Items
      • We removed old API endpoints and services used for retrieving data from Redis, cleaning up the codebase and improving system performance. #187981864
      • We created a worker that cleans up shipped item data older than 7 days, ensuring the database remains optimized and free of outdated data. #187990826
  • Xero
    • We upgraded the Xero-Ruby gem and its dependencies, ensuring proper retrieval of allocation IDs and improving integration with Xero for credit notes allocations. #187979686
  • Robots.txt
    • We updated the robots.txt file to prevent bots from crawling the ‘click & collect’ URL path, reducing unnecessary server load and preventing spam requests. #187975246
  • ESLint
    • We added linter support for IDEs, which helps developers maintain consistent code quality and reduce potential errors during development. #188024608
  • Depreciate Feature flag
    • We made the Circle Gift Card feature available on all websites, as it is now fully stable and ready for general use. #187939242
    • We enabled the Second Hand label Display feature on all websites, as it has been thoroughly tested and is now ready for broad implementation. #187723185
  • Semaphore ci
    • We fixed the alpha build in Semaphore CI to ensure continuous integration and deployment processes run smoothly without interruptions. #188071453
  • Web POS
    • We reorganized our code to make the project simpler and easier to maintain to allocate our new Web POS feature. #188063037 #188063028 #188063033 #188041576
    • We reorganized some parts of our code to make it more efficient and easier to maintain. #188081905
  • Github CI
    • We improved our system by replacing a link with a simulated one, ensuring smoother operations. #188110258

  • Upgrades
      • Vue 3 Upgrade
        • We improved the layout and queries for the Load Stock With File Preview feature as part of the Vue 3 upgrade, enhancing user interface consistency and performance. #187707056
        • We refactored the Customer Order settings queries and mutations to align with the Vue 3 upgrade, improving the efficiency and maintainability of the codebase. #187952311
        • Refactored shipped items queries/mutations for Tanstack Query upgrade and fixed linting issues for better code quality. #187792934 #187992606

    See www.twitter.com/circlesupport for all changes including bug fixes.


    Some of the things we are currently working on:

      • Rails 7
      • Vue 3 Upgrade
      • Deals
      • General Ledger
      • Bug Fixes