--- title: Note API description: >- The Note API provides read-only access to the optional text note that the customer left during checkout. Use this API to display delivery instructions, special requests, or other freeform messages the customer included with their order. api_version: 2026-04 api_name: customer-account-ui-extensions source_url: html: >- https://shopify.dev/docs/api/customer-account-ui-extensions/latest/target-apis/order-apis/note-api md: >- https://shopify.dev/docs/api/customer-account-ui-extensions/latest/target-apis/order-apis/note-api.md --- # Note API The Note API provides read-only access to the optional text note that the customer left during checkout. Use this API to display delivery instructions, special requests, or other freeform messages the customer included with their order. ### Use cases * **Display delivery instructions**: Show the customer's note containing special delivery instructions, such as "Ring the doorbell twice." * **Show special requests**: Display any special requests the customer included with their order. * **Conditional rendering**: Check whether a note exists and conditionally render a section in your extension. ### Support Targets (10) ### Supported targets * [customer-account.​order-status.​announcement.​render](https://shopify.dev/docs/api/customer-account-ui-extensions/2026-04/targets/order-status#order-status-announcement-) * [customer-account.​order-status.​block.​render](https://shopify.dev/docs/api/customer-account-ui-extensions/2026-04/targets/order-status#order-status-block-) * [customer-account.​order-status.​cart-line-item.​render-after](https://shopify.dev/docs/api/customer-account-ui-extensions/2026-04/targets/order-status#cart-line-item-render-after-) * [customer-account.​order-status.​cart-line-list.​render-after](https://shopify.dev/docs/api/customer-account-ui-extensions/2026-04/targets/order-status#cart-line-list-render-after-) * [customer-account.​order-status.​customer-information.​render-after](https://shopify.dev/docs/api/customer-account-ui-extensions/2026-04/targets/order-status#customer-information-render-after-) * [customer-account.​order-status.​fulfillment-details.​render-after](https://shopify.dev/docs/api/customer-account-ui-extensions/2026-04/targets/fulfillment-status#fulfillment-status-targets) * [customer-account.​order-status.​payment-details.​render-after](https://shopify.dev/docs/api/customer-account-ui-extensions/2026-04/targets/payments-and-returns#payments-and-returns-targets) * [customer-account.​order-status.​return-details.​render-after](https://shopify.dev/docs/api/customer-account-ui-extensions/2026-04/targets/payments-and-returns#return-details-render-after-) * [customer-account.​order-status.​unfulfilled-items.​render-after](https://shopify.dev/docs/api/customer-account-ui-extensions/2026-04/targets/fulfillment-status#unfulfilled-items-render-after-) * [customer-account.​order.​page.​render](https://shopify.dev/docs/api/customer-account-ui-extensions/2026-04/targets/full-page#order-specific-full-page-) ### Properties The [`shopify` global object](https://shopify.dev/docs/api/customer-account-ui-extensions/latest#target-apis-define-what-your-extension-does) provides the note that the customer left during checkout. Access the following properties on `shopify` to read the customer's note. * **note** **SubscribableSignalLike\** **required** A note left by the customer to the merchant, either in their cart or during checkout. The value is `undefined` if no note was provided. ### SubscribableSignalLike Represents a reactive signal interface that provides both immediate value access and subscription-based updates. Enables real-time synchronization with changing data through the observer pattern. This interface extends \`ReadonlySignalLike\` with deprecated fields that are still supported for backwards compatibility. * current The current value of the signal. Equivalent to \`.value\`, accessing this property subscribes to changes when used in a reactive context. ```ts T ``` * destroy Cleans up the subscription and releases any resources held by this signal. After calling \`destroy()\`, the signal stops receiving updates from the main thread. ```ts () => Promise ``` * subscribe Subscribes to value changes and calls the provided function whenever the value updates. Returns an unsubscribe function to clean up the subscription. Use to automatically react to changes in the signal's value. ```ts (fn: (value: T) => void) => () => void ``` * value The current value of the signal. This property provides immediate access to the current value without requiring subscription setup. Use for one-time value checks or initial setup. ```ts T ``` Examples ### Examples * #### ##### Description Show the note that the customer left for the merchant during checkout. This example reads \`shopify.note\` and displays the text, with a fallback message when no note is present. ##### jsx ```jsx import '@shopify/ui-extensions/preact'; import {render} from 'preact'; export default async () => { render(, document.body); }; function Extension() { const note = shopify.note.value; return ( Order note {note || 'No note provided'} ); } ``` * #### ##### Description Only render a note section when the customer left a note on the order. This example checks whether \`shopify.note\` is defined and returns \`null\` when no note exists, avoiding empty UI. ##### jsx ```jsx import '@shopify/ui-extensions/preact'; import {render} from 'preact'; export default async () => { render(, document.body); }; function Extension() { const note = shopify.note.value; if (!note) { return null; } return ( Order note {note} ); } ``` * #### ##### Description Show the order note in a styled banner component for visual emphasis. This example reads \`shopify.note\` and wraps the text in an \`s-banner\` with an informational status. ##### jsx ```jsx import '@shopify/ui-extensions/preact'; import {render} from 'preact'; export default async () => { render(, document.body); }; function Extension() { const note = shopify.note.value; if (!note) { return null; } return ( Note from buyer {note} ); } ``` *** ## Limitations * Only a single note is supported per order. There's no way to retrieve multiple notes or a note history. ***