Pro: Address Check (find and fix address mistakes on orders before export)

plan: Pro plan only (R6. A feature of the CSV screen)
screens: App left menu "CSV" > tab "Orders" > "Address check" (appears above the table when orders are selected) / the "Address check" dialog
verified_from: the implementation of Address check (detection, suggestions, the 5 sections, action bar, confirmation, change history, metafield storage)
ui_verified: 2026-10-22 on the development store: the layout of the dialog, the labels, opening and closing the details, and the display of the confirmation for "Fix the address on the Shopify order" (old layout; the confirmation was not pressed). On 2026-10-26 "Fix for CSV output only" (override, encryption, restore) was removed, leaving only the fix of the order address. The content of this page (the 5 sections, the confirmation showing before → after, the history without values) is checked by automated tests only and has not been checked on a real store yet (check on the development store before publishing)
status: Not yet released to production (hold). When publishing, remove `hold: true` and add to the "personal data retention" part (065) how Address check handles personal data (no names, addresses or phone numbers are stored, neither on the servers nor on the order). Remove `hold: true` from the merchant help page (pro/csv/070) at the same time
caution: "Fix the address on the Shopify order" rewrites the shipping address of the Shopify order and cannot be undone. Never answer "it is fine" with certainty

SUMMARY

A feature that checks the shipping address of the orders selected on the order list for mistakes in the name, phone and address fields, and lets you fix what it finds on the spot. Fixing rewrites the shipping address of the Shopify order itself (it cannot be undone). The values before and after stay on the order timeline of Shopify. The operation has 2 steps.

  1. Check the rows: the rows in “Orders that can be fixed automatically” are checked from the start.
  2. Apply with the action bar: press “Fix the order address (N)” at the bottom, then “Fix N order addresses” in the confirmation.

What this app remembers is only “whether it was fixed” (the date, the target and the names of the changed fields). Names, addresses and phone numbers are stored neither on the servers of “CC Delivery Date Time” nor in the metafields of the order.

FACTS

AC-1  Pro plan only. Used on the CSV screen (app left menu "CSV" > tab "Orders"). When you select orders, "Add tag", "Address check" and "Mark as shipped in bulk" appear in the bulk actions above the table. Nothing is shown when no order is selected.
AC-2  "Address check" targets only the selected orders. The "Address check" dialog has, from the top: the note "Applying rewrites the shipping address on the Shopify order. It cannot be undone. The values before and after stay on the order timeline." / a notice when Shopify flagged orders / "1 Check the rows (rows that can be fixed automatically are checked from the start)" with the counts "Issues: N · Changed: N · Applied: N · No issues: N" / the table / "2 Apply" (the action bar, fixed at the bottom of the table). The only footer action is "Close".
AC-3  Every selected order, with or without findings, is listed one row per order, all of them in the table. The table is split by what to do next into up to 5 sections, in this order (a section with 0 orders is not shown; the heading is "Name (N)" with one line of note below):
        1 "Needs review: Shopify flagged the address (N)": orders with only a Shopify finding. Note: "Shopify does not identify the problem field, so these cannot be fixed automatically. Review the whole address and edit it directly."
        2 "Needs review: no suggested fix (N)": orders this app detected but could not make a suggestion that changes the address for (e.g. a phone number with too few digits). An order with both a Shopify finding and a finding without a suggestion is here too. Note: "An issue was found, but the correct value is unknown. Review the address and edit it directly."
        3 "Orders that can be fixed automatically (N)": orders whose suggestion really changes the address (an order that also has a Shopify finding is here too). Note: "A suggested fix is ready. Review it and apply." Only these rows are checked from the start
        4 "Fixed orders (N)": orders fixed with this app. Note: "Orders whose address was fixed with this app."
        5 "No issues (N)": note "No issues were found. You can still edit them if needed."
      "Fixed" means a row applied on this screen, and a row whose change history has a "Fixed the order address" entry. A fixed order stays "Fixed" even if it is flagged again later (it does not go back to needs review). When you apply, the row moves to "Fixed". Orders without findings can also be opened and edited in all fields (last name, first name, postal code, prefecture, city, address 1, address 2, phone) and applied. The select-all checkbox at the top of each table works per section ("Select all rows needing review", "Select all rows with no suggested fix", "Select all rows", "Select all fixed rows", "Select all rows without issues").
AC-4  The check runs inside the browser. Names, addresses and phone numbers are not sent anywhere for the check.
AC-5  The mistakes detected (the badge labels; the "Finding" column of the table lists all the findings of the row, stacked):
        Name: "Name: full name in one field", "Name: first and last swapped"
        Phone: "Phone: wrong number of digits", "Phone: international format mixed with leading 0", "Phone: full-width and half-width mixed", "Phone: leading 0 missing"
        Mixed into the address field: "Address: postal code mixed in", "Address: prefecture mixed in", "Address: city duplicated", "Address: country name mixed in", "Address: multiple items mixed in"
        Misplaced fields: "Misplaced: building name in city field", "Misplaced: address and building name swapped", "Misplaced: address in building name field", "Misplaced: city field is empty"
        Shopify's judgment: shown short as "Shopify" in the table (the details show "Shopify: address error detected", "Shopify: address issue detected")
AC-6  This app does not check whether the postal code exists or matches the prefecture or city (it has no postal code data). Shopify's own address judgment does not check the existence or consistency of Japanese postal codes either.
AC-7  A "Shopify" finding is the judgment Shopify attached to the address when the order was placed (the same as "Review address issue" in the Shopify admin). For Japan it appears when the city field is broken or empty. This judgment is as of the time the order was placed. Shopify's judgment does not say which field is wrong, so the top of the dialog shows one notice ("For orders flagged by Shopify, the problem field is not identified. Review the whole address. …"), once (not on each row).
AC-8  Fixes that are put into the input fields as initial values:
        Name (swapping or splitting first and last name), phone (half-width conversion, adding the leading 0, etc.)
        Mixed into the address field: Address 1 without the postal code, prefecture, city or country name such as "Japan" that was mixed in (only what matches the other fields of the address is removed)
        City field empty: the city at the start of Address 1 moved into the city field
      No suggestion: "Phone: wrong number of digits", "Misplaced: building name in city field", "Misplaced: address and building name swapped", "Misplaced: address in building name field", and the "Shopify" finding. Fix these by hand (sections 1 and 2).
AC-9  The columns of the table: checkbox / Order / Finding / Change (from → to) / (Edit) (there is no "Status" column). The column headings are always shown. The order number is a link to the order page in the Shopify admin (opens in another tab). The "Current address" is not in the table; it is the first line of the details that open with "Edit". Whether an apply succeeded is shown by the section the row is in (a row that applied successfully moves to "Fixed orders"). The only badge is the red "Failed" in the "Change" cell of a row whose apply failed.
AC-10 1 Check the rows and 2 the action bar: the rows of "Orders that can be fixed automatically" are checked from the start (rows needing review, fixed rows and rows without issues are not). The checkbox in a section heading selects / clears all rows of that section. The action bar shows "N selected" and the red "Fix the order address (N)". What is applied is the checked rows that are unapplied and have changes. When the checked count and the applicable count differ, "N selected (M with changes to apply)" is shown. A note "N unapplied changes are discarded when you close." is shown. A row that finished applying is unchecked; a failed row stays checked.
AC-11 Details: "Edit" opens them right below the row (only one row at a time; the button of the open row becomes "Close"; for an applied row the button is "Details"). Contents: "Current address" / the finding badges and messages / the input fields / the note "Suggested values are filled in. …" / "Fields to change: N" with the difference / the button "Fix the order address" and "Change history (N)" (when there is history). The input fields are only the fields with findings and related ones (name: "Last name", "First name"; phone: "Phone"; address: "Prefecture", "City", "Address 1", "Address 2"; Shopify's judgment: "Postal code" too; all fields for an order without findings). A changed field shows a blue "Changed" mark and "Original: …". Only the changed fields are applied. A row that has been applied cannot be edited, because the order itself has changed.
AC-12 Applying always goes through a confirmation. Pressing "Fix the order address (N)" on the action bar replaces the action bar with a confirmation: "This rewrites the shipping address on N Shopify orders. It cannot be undone." / "The values before and after stay on the order timeline." / for each target order, "#number and its changes (field: from → to)" / the red "Fix N order addresses" / "Cancel" (N is the number of checked rows). Applying inside the details of a row shows the same kind of confirmation ("This rewrites the shipping address on the Shopify order. It cannot be undone. The values before and after stay on the order timeline.", "Fix the order address", "Cancel"). When run, the orders are written one by one. The shipping address in the Shopify order details changes, and the order timeline shows that the app updated the shipping address, with "from X to Y" for each field. For an updated order, the list, preview and CSV of this screen use the new address right away (there is no need to fetch the orders again).
AC-13 Failure: even if one order fails in a bulk apply, the rest continue. The action bar shows "N applied / M failed — Failed: #…". A failed row gets the red "Failed" badge, its details open automatically and show the reason with "This order was not applied.". The failed row stays checked, and applying again re-runs only that row. When Shopify rejects the update (e.g. a prefecture that does not exist), that order does not change.
AC-14 Undo: there is no undo (no "Restore" button). If an order was updated by mistake, look at the values before on the order timeline in Shopify and fix the shipping address of the order by hand in the Shopify admin.
AC-15 Change history (a mark of "whether it was fixed"): each apply records the date, the target ("Fixed the order address") and the names of the changed fields in the app-owned metafield of the order (`$app:cc_delivery_order_profile`). The values of names, addresses and phone numbers are not recorded (the details show e.g. "Changed fields: Last name, Postal code"; no values and no "→"). At most 20 entries per order; older ones are dropped. They are shown newest first. An order whose history has a "Fixed the order address" entry goes into the "Fixed orders" section and shows a blue badge "Order address fixed" in the findings column. The history does not expire.
AC-16 Even if the same order is fixed on two screens at the same time, the history loses nothing (the one written later re-reads and appends).
AC-17 How personal data is handled:
        - The servers of "CC Delivery Date Time" do not store names, addresses or phone numbers. Address check also keeps no per-order data on the servers.
        - Detecting and fixing addresses is done from the browser directly against the Shopify Admin API.
        - What remains in the metafield of the order is only the change history (date, target, names of the changed fields). No values of names, addresses or phone numbers.
        - The values before and after the change stay on the order timeline of Shopify (a Shopify feature).
        - Even when a customer personal data deletion request (a notification from Shopify) arrives, this app has no personal data to delete.
        - When the app is uninstalled, Shopify deletes the app-owned metafields (same as other apps' app-owned metafields).
        - The metafield "definition" is not declared, so it cannot be edited or validated in the Shopify admin.
AC-18 Note: app-owned metafields of an order may be readable from theme Liquid. The history has only the date, target and field names, and no personal data.
AC-19 What it cannot do: it cannot fix only the CSV without changing the shipping address of the order (the former "Fix for CSV output only" no longer exists). Fixing changes the shipping address of the Shopify order, so other apps (e.g. shipping apps) that read the Shopify address also get the new address.

PROC-AC1 Fix the shipping address of the actual order

Where: app left menu "CSV" > tab "Orders" at the top
Steps:
1. Select the orders whose address you want to check
2. Press "Address check" above the table
3. In "1 Check the rows" of the dialog, make sure the rows you want to fix are checked (the rows of "Orders that can be fixed automatically" are checked from the start). For a row you want to check or fix, press "Edit" to open the details and fix the input fields (suggested values are in as initial values when there is a suggestion). Rows under "Needs review" have no suggestion, so fix them by hand
4. Press "Fix the order address (N)" in "2 Apply" at the bottom. The action bar becomes a confirmation
5. Check "This rewrites the shipping address on N Shopify orders. It cannot be undone." and the changes of each order (from → to), then press "Fix N order addresses" (press "Cancel" to stop)
6. The applied rows move to "Fixed orders". Close the dialog with "Close" and export the CSV with "Export" of a template as usual
Result: the shipping addresses of the Shopify orders are rewritten one by one. The new address is in the CSV. The order timeline shows that the app updated the shipping address, with the values before and after
Note: it cannot be undone. If updated by mistake, check the value before on the order timeline and fix the shipping address of the order by hand in the Shopify admin. Whether a notification email is sent to the customer has not been confirmed (do not assert)

PROC-AC2 Check the address before the fix

Where: Shopify admin > Orders > the details of the order > "Timeline"
Steps: open the line "(app name) updated the shipping address of this order."
Result: "from X to Y" is shown for each field (e.g. "Address1 / updated from 五色山 to 五色山22-1")
Note: this app's screen does not keep the values before and after (the history has only the date, target and field names)

QA

  • Q: Where is Address check? A: Select orders on the tab “Orders” of “CSV” in the app left menu and “Address check” appears above the table. It does not appear when nothing is selected (AC-1). It is a feature of the CSV screen in the Pro plan.
  • Q: Can it check whether the postal code is wrong? A: No. It does not check whether the postal code exists or matches the prefecture and city (AC-6). Shopify’s address judgment does not look at Japanese postal codes either.
  • Q: I cannot tell what is wrong in a “Shopify” row. A: Shopify’s judgment does not identify the problem field (AC-7). It appears in the section “Needs review: Shopify flagged the address”. Open the details and review the whole address. No suggestion is given (AC-8).
  • Q: Why are the rows in “Needs review” not fixed automatically? A: Because a problem can be detected but the correct value is not known (e.g. a phone number with too few digits). Fix them by hand and apply (AC-3, AC-8).
  • Q: Is the fixed value reflected on the Shopify order? A: Yes. Applying rewrites the shipping address of the Shopify order itself (AC-12).
  • Q: I want to fix only the CSV address without changing the order. A: It cannot be done. The former “Fix for CSV output only” no longer exists; Address check only fixes the shipping address of the order (AC-19). If you do not want to change the order, this app cannot fix it.
  • Q: I pressed “Fix the order address” by mistake. A: It cannot be undone. Check the value before on the order timeline and ask them to fix the shipping address of the order by hand in the Shopify admin (AC-14, PROC-AC2).
  • Q: I want to know the value before the fix. A: It stays on the order timeline of the Shopify order (PROC-AC2). The “Change history” of this app has only the date, target and field names, without values (AC-15).
  • Q: I want to undo. A: There is no “Restore”. Same as “I pressed it by mistake” above (AC-14).
  • Q: Must I check every row for it to be applied? A: The rows of “Orders that can be fixed automatically” are checked from the start. Pressing “Fix the order address” and confirming applies to all of them. Rows you uncheck are not applied (AC-10).
  • Q: I checked a row without changes and the apply count did not go up. A: Only unapplied rows with changes are applied. “N selected (M with changes to apply)” is shown (AC-10).
  • Q: Only some orders show “Failed”. A: The details of a failed row open and show the reason. The row stays checked, so check the cause (permission, network, etc.) and apply again; only that row is re-run (AC-13). If the reason is unclear, ESCALATE.
  • Q: An order I fixed appears under “Needs review” again. A: It does not. An order fixed with this app goes into “Fixed orders” and does not go back even if it is flagged again (AC-3). Shopify’s judgment is as of the time the order was placed, so it may still show as flagged in the Shopify admin (AC-7).
  • Q: Where is personal data stored? A: Names, addresses and phone numbers are stored neither on the servers of “CC Delivery Date Time” nor in the metafields of the order. The metafield of the order keeps only the date, target and field names of the fix. The values before and after stay on the order timeline of Shopify (AC-17).
  • Q: What happens when the app is uninstalled? A: Shopify deletes the app-owned metafields (the history) (AC-17). Do not state how long the deletion takes.
  • Q: A customer sent a personal data deletion request. A: Address check does not store names, addresses or phone numbers, so this app has nothing to delete (AC-17). ESCALATE if a firm statement is needed.
  • Q: No suggestion appears. A: “Phone: wrong number of digits”, “Misplaced: …” and “Shopify” have no suggestion. Fix them by hand (AC-8).
  • Q: I want all orders checked automatically. A: It cannot be done. Only the selected orders are targeted (AC-2).

ESCALATE

SituationInformation to ask for
“Fix the order address” resulted in an unintended addressOrder number, date and time of the action, the order timeline (before and after), the contents of the “Change history”
An error appears on apply, it does not move to “Fixed orders”, or “Failed” continuesOrder number, the error text in the details of the row
It does not go into “Fixed orders” or the history is not visibleOrder number, whether the orders were fetched again
Asked how a personal data deletion request or data after uninstalling is handledThe content of the request (customer, order numbers). Do not assert; refer them to the developer of “CC Delivery Date Time”

SEE

Install