# Changelog

All notable changes to this project will be documented in this file.

See [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) for format guidelines.

## [Unreleased]

## [v1.0.10] - 2026-07-06

### Changed
- Release version bump and changelog maintenance.

## [v1.0.9] - 2026-03-25

### Changed
- Release version bump and changelog maintenance.

## [v1.0.8] - 2026-03-20
### Added
- `src/models/NetsuiteDecoder.php` — decodes inbound payloads from PP_Order_Change SuiteScript, supporting `json`, `json+gzip`, `json+aes-cbc` and `json+gzip+aes-cbc` envelope formats
- `src/controllers/api/NetsuiteController.php` — `POST /netsuite/updateorder` webhook endpoint that decodes payloads via `NetsuiteDecoder` and logs the result
- Separate `decryption_key` setting for inbound NetSuite webhook decoding, wired through `src/models/SettingsForm.php`, `src/views/settings/index.php`, and `src/config/ns.php.template`

### Changed
- `src/Module.php` — registers `netsuite/updateorder` URL rule automatically when the application is identified as an API application
- NetSuite settings UI now includes a dedicated "Inbound Webhook Security" section for the webhook decryption key used by `/netsuite/updateorder`

## [v1.0.7] - 2026-02-25
### Changed
- General maintenance and stability improvements

## [v1.0.0] - 2025-01-01
### Added
- Initial release
- NetSuite OAuth 2.0 JWT authentication (`NetSuiteApiAuth`)
- HTTP client with bearer token support (`NetSuiteClient`)
- High-level CRUD wrapper and Sales Order sync (`components/NetSuiteComponent`)
- SuiteQL and REST search builder (`components/SearchBuilder`)
- Settings controller and configuration template (`config/ns.php.template`)
- Yii2 module bootstrap with event-driven product and cart integration
