Skip to content
woo-address-correction logo

Woo Address Correction

woo-address-correction

Update billing or shipping address fields on a WooCommerce order with a private audit note.

SKILL.md

Full skill instructions

woo-address-correction

Purpose

Update the billing and/​or shipping address on a WooCommerce order at the request of a customer. Adds a private audit note recording what was changed, by whom, and when. For use by customer support agents correcting addresses before fulfillment.

Prerequisites

  • WooCommerce store with REST API enabled
  • Consumer Key with Read/​Write scope
  • Order must still be in processing or on-hold status (not yet shipped)
  • Minimum WooCommerce version: 3.5.0

Parameters

ParameterTypeRequiredDefaultDescription
store_urlstringyes—Base URL of the WooCommerce store
consumer_keystringyes—WooCommerce REST API consumer key (ck_...)
consumer_secretstringyes—WooCommerce REST API consumer secret (cs_...)
dry_runboolnotruePreview without executing
formatstringnohumanOutput format: human or json
order_idintyes—WooCommerce order ID
address_typestringnoshippingWhich address to update: shipping, billing, or both
new_addressobjectyes—Address fields: first_name, last_name, address_1, address_2, city, state, postcode, country
correction_reasonstringnoCustomer requestReason logged in private note

Authentication

WooCommerce uses OAuth 1.0a for HTTP and Basic Auth over HTTPS.

For HTTPS stores (recommended):

Authorization: Basic base64(consumer_key:consumer_secret)

For HTTP stores (development only): Use OAuth 1.0a — include oauth_consumer_key, oauth_nonce, oauth_signature, oauth_signature_method=HMAC-SHA1, oauth_timestamp, oauth_version=1.0

Never log or output consumer_key or consumer_secret values.

See docs/​AUTHENTICATION.md for full setup instructions.

Safety

Step 2 modifies order address data. Always run with dry_run: true first (the default). Verify the new address fields before applying. Note: if the order has already been handed to the carrier, contact the carrier directly as well.

Workflow Steps

Step 1 — Fetch order

GET /​wp-json/​wc/​v3/​orders/​{order_id}

Extract current address fields for comparison.

Step 2 — Preview or execute

If dry_run: true: show old vs. new address diff. Stop.

If dry_run: false and confirmed:

PUT /​wp-json/​wc/​v3/​orders/​{order_id}
  Body: {
    "shipping": { <new_address fields> },    // if address_type is shipping or both
    "billing":  { <new_address fields> }     // if address_type is billing or both
  }

Then add a private note:

POST /​wp-json/​wc/​v3/​orders/​{order_id}/​notes
  Body: {
    "note": "Address corrected by support | Reason: <correction_reason> | <ISO-8601>\nOld: <old> | New: <new>",
    "customer_note": false
  }

API Endpoints Used

GET   /​wp-json/​wc/​v3/​orders/​{id}         — fetch current address
PUT   /​wp-json/​wc/​v3/​orders/​{id}         — update address fields
POST  /​wp-json/​wc/​v3/​orders/​{id}/​notes   — add audit note

Pagination Strategy

WooCommerce REST API uses page/​per_page pagination (not cursor-based).

Standard pattern:

page = 1
while True:
  response = GET /​endpoint?per_page=100&page=page
  process(response)
  if len(response) < 100: break
  page += 1

Maximum per_page is 100 for most endpoints. The X-WP-Total and X-WP-TotalPages response headers report totals. Always read X-WP-TotalPages on the first request to estimate job size.

Session Tracking

Claude MUST emit the following output at each stage. This is mandatory.

STARTUP:

╔══════════════════════════════════════════╗
║  SKILL: woo-address-correction           ║
║  STORE: <store_url>                      ║
║  TIME:  <ISO-8601 UTC>                   ║
║  MODE:  <DRY RUN | LIVE>                 ║
╚══════════════════════════════════════════╝

PER-OPERATION (emit after each API call batch):

[N/​TOTAL] <METHOD> <endpoint> → <result_count> records | params: <key>=<val>

COMPLETION (human format):

╔══════════════════════════════════════════╗
║  COMPLETE: woo-address-correction        ║
║  RECORDS PROCESSED: 1                    ║
║  OUTPUT: stdout                          ║
╚══════════════════════════════════════════╝

COMPLETION (json format):

{
  "skill": "woo-address-correction",
  "store": "<store_url>",
  "completed_at": "<ISO-8601>",
  "records_processed": 1,
  "output_file": null,
  "dry_run": <bool>
}

Output Format

Human format: side-by-side diff of old address fields and new address fields.

Error Handling

ErrorCauseResolution
401 UnauthorizedInvalid credentialsVerify consumer_key and consumer_secret
403 ForbiddenKey lacks Read/​Write scopeRegenerate with Read/​Write scope
404 Not FoundOrder ID does not existConfirm the order ID
Order already shippedStatus is completedContact the carrier to redirect; WooCommerce address is for record only

Best Practices

  • Always run with dry_run: true first. Show the customer the address diff before confirming.
  • Always add a correction_reason for the audit trail.
  • If the order is already completed, correct the address in WooCommerce for record-keeping but also notify the carrier directly.

More skills from navarroido

woo-cancel-and-restock logo
navarroido/Woocommerce-skill

woo-cancel-and-restock

Cancel one or many WooCommerce orders and restore stock quantities for all line items with dry-run preview.

7 0
View
woo-loyalty-segment-export logo
navarroido/Woocommerce-skill

woo-loyalty-segment-export

Read-only: Export customers meeting spend or order-count thresholds for loyalty program enrollment.

7 0
View
woo-order-status-bulk-update logo
navarroido/Woocommerce-skill

woo-order-status-bulk-update

Move a filtered set of orders (by date, current status, or payment method) to a new status with dry-run preview.

7 0
View
woo-variant-attribute-normalizer logo
navarroido/Woocommerce-skill

woo-variant-attribute-normalizer

Read-only: Find product variations where attribute values are inconsistently cased or spelled, and export a normalization report.

7 0
View
woo-product-tag-bulk-update logo
navarroido/Woocommerce-skill

woo-product-tag-bulk-update

Add or remove tags from a filtered set of products (by category, price range, or stock status) with dry-run preview.

7 0
View
woo-low-stock-restock-alert logo
navarroido/Woocommerce-skill

woo-low-stock-restock-alert

Read-only: Query products below a configurable stock threshold and export a prioritized reorder sheet grouped by category.

7 0
View
woo-product-data-completeness-score logo
navarroido/Woocommerce-skill

woo-product-data-completeness-score

Read-only: Score each product against a required fields checklist (images, description, weight, SKU, attributes) and export a completeness gap report.

7 0
View
woo-fulfillment-status-digest logo
navarroido/Woocommerce-skill

woo-fulfillment-status-digest

Read-only: Aggregate order counts by status and flag orders overdue for processing based on a configurable SLA age threshold.

7 0
View
woo-customer-spend-tier-tagger logo
navarroido/Woocommerce-skill

woo-customer-spend-tier-tagger

Segment customers into Bronze, Silver, and Gold tiers based on lifetime total_spent and write the tier as a customer meta field.

7 0
View
woo-bulk-order-notes logo
navarroido/Woocommerce-skill

woo-bulk-order-notes

Append a private or customer-visible note to multiple orders matching a status, date, or payment method filter.

7 0
View
woo-b2b-customer-overview logo
navarroido/Woocommerce-skill

woo-b2b-customer-overview

Read-only: Export customers with a B2B role or meta_data flag including order count, lifetime spend, and last order date.

7 0
View
woo-order-lookup-and-summary logo
navarroido/Woocommerce-skill

woo-order-lookup-and-summary

Read-only: Retrieve a WooCommerce order by ID or customer email and produce a human-readable support summary.

7 0
View

Popular AI tools

Kaiber logo
Video

Kaiber

Generate, edit, and beat-sync AI video with leading models in one workspace.

Paid
View
Vimcal logo
Productivity

Vimcal

The world's fastest calendar for remote work

Free
View

Transform Your Design with AI Designer by ImgCreator.ai

Freemium
View
Akool AI logo
Content & writing

Akool AI

Revolutionizing Video Production with AI-Powered Creativity

Paid
View

Extend an image past the frame and let AI fill the new aspect ratio.

Freemium
View
StarByFace logo
Security

StarByFace

Discover your celebrity doppelgänger with StarByFace!

Free
View
C

ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.

Freemium
View
Opus Clip logo
Coding & apps

Opus Clip

Opus.ai: Revolutionize Your Web Experience

Free
View