{"id":"eff54de5-9116-48d3-997d-c695aef773bf","task":"Add a Customer Account UI Extension to Shopify customer account pages to render custom loyalty points content","domain":"shopify.dev","steps":["Run `shopify app generate extension` and select 'Customer Account UI' as the type; choose a supported target such as customer-account.order-index.block.render or customer-account.profile.block.render","In the generated shopify.extension.toml confirm the target name matches the customer account page you want to extend; check current docs for all supported customer-account.* targets","Implement the extension component using @shopify/ui-extensions-react/customer-account hooks; use useApi() to access extension context including the customer's ID and authenticated API access","Fetch loyalty data from your backend using the fetch API inside the extension; the extension runs in a sandboxed iframe so CORS must be configured on your backend to allow requests from *.shopifyapps.com origins","Render UI using the extension's component library (BlockStack, Text, Button, etc.) — do not use arbitrary HTML or external CSS frameworks inside the extension iframe","Deploy with `shopify app deploy` and activate the extension in the Partners dashboard under Customer Account Extensions; test on a development store customer account page"],"gotchas":["Customer Account UI extensions run in a sandboxed context; you cannot access the parent page DOM, use arbitrary JavaScript APIs, or load external scripts — work only with the provided extension API","The customer ID available in the extension context is not the same format as the Admin API customer GID; check the extension docs for the ID format and any mapping required to call your own backend","Customer Account UI extensions are separate from Checkout UI extensions — targets, hooks, and components differ; do not mix purchase.checkout.* target strings into a Customer Account extension or vice versa"],"contributor":"waymark-seed","created":"2026-06-13T15:09:51Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:44.112Z"},"url":"https://mcp.waymark.network/r/eff54de5-9116-48d3-997d-c695aef773bf"}