> ## Documentation Index
> Fetch the complete documentation index at: https://docs.grain.inc/llms.txt
> Use this file to discover all available pages before exploring further.

# Release Notes

> Latest updates and changes to the Grain platform

<Tip>
  Subscribe to release notifications in your Dashboard under **Settings > Notifications** to get notified when new versions are published.
</Tip>

### v2.5.0 --- March 24, 2026

**Added**

* Automatic capture of funded payment sessions with a new explicit capture API for greater payment control.
* Fee computation service calculating Grain fees, network fees, and net payouts based on partner take rates and transaction status.
* Core data models for Users, Partners, Team Members, Take Rates, and Payments, establishing the foundation for partner management.
* Persistent payment records with rich details including currency, network/token info, fee breakdowns, and net payout — all normalized to cents with idempotent handling.
* Erebor KYB service integration for full business and person applicant management, onboarding flows, and document upload/retrieval.
* End-of-day Slack transaction report powered by Trigger.dev, delivering daily aggregated payment summaries.
* Threaded Slack notifications per payment transaction with persistent thread IDs for easier tracking.

**Improved**

* Multi-AZ Redis failover for production, ensuring high availability with automatic failover across availability zones.
* Optional custom domain support for API (ALB) and CDN (CloudFront) via Route53 alias records with ACM certificate integration.
* WAF rate-limiting rule protecting the ALB at 2,000 requests per 5 minutes per IP.
* VPC endpoints for S3, Secrets Manager, KMS, and STS to reduce NAT costs and improve latency.
* AWS Backup integration with daily automated backups (7-day retention for dev, 35-day for prod) and optional cross-region backup copy.
* GuardDuty findings forwarded to SNS via EventBridge and AWS Config recorder added for Vanta compliance.
* CloudWatch security alarms wired to SNS for root account usage, MFA-less console login, failed logins, and unauthorized API calls.
* Resource tagging across all CDK stacks (`Environment`, `Project`, `ManagedBy`) for compliance and cost attribution.
* Lambda reserved concurrency limits set per environment to prevent account-level exhaustion.
* SQS dead letter queue added for failed async Lambda invocations with KMS encryption and 14-day retention.

**Fixed**

* Payment processing now uses the specified amount rather than a hardcoded default.
* Simplified API key handling in payment sessions and improved webhook error handling and logging.

***

### v2.4.0 --- March 10, 2026

**Added**

* Support for USDC payments on the Arbitrum network, giving customers a lower-fee payment option.
* New `payment.settlement.completed` webhook event so you can track settlement in real time.
* Bulk export of transaction history as CSV from the Dashboard.

**Improved**

* Reduced average API response time for the `/payments` endpoint by 35%.
* Updated the Dashboard transaction detail view with clearer status labels and a timeline of payment lifecycle events.

**Fixed**

* Resolved an issue where webhook signature verification failed intermittently when the payload contained non-ASCII characters.
* Fixed a display bug in the Dashboard that showed incorrect settlement amounts for refunded transactions.

***

### v2.3.0 --- February 14, 2026

**Added**

* Multi-user access for merchant accounts with configurable roles (Owner, Admin, Viewer).
* Support for setting a preferred settlement currency per payment, overriding the account default.

**Improved**

* Sandbox environment now simulates realistic blockchain confirmation delays for more accurate integration testing.
* Webhook retry schedule adjusted to include a faster first retry (30 seconds instead of 5 minutes).

**Fixed**

* Fixed a race condition that could cause duplicate `payment.confirmed` webhook deliveries under high throughput.
* Corrected exchange rate display rounding in the customer-facing payment page for JPY-denominated merchants.

***

### v2.2.0 --- January 20, 2026

**Added**

* Introduced idempotency key support on the `POST /payments` endpoint to prevent duplicate payment creation.
* New status page integration for real-time service health visibility at [status.grain.com](https://status.grain.com).

**Improved**

* Upgraded on-chain monitoring to detect payments with zero confirmations, reducing perceived confirmation time for supported networks.
* Dashboard loading performance improved by 40% through optimized data fetching.

**Fixed**

* Resolved an issue where expired payment sessions were not correctly marked as `expired` in the API response.
* Fixed CSV export encoding issue that affected merchants using special characters in product descriptions.
