Customer Service Form
The iFixit Customer Service form lives at www.ifixit.com/Support/cs-form. This page documents every request type the form supports and how to link customers directly to a specific request type with fields pre-filled — similar to an API reference.
Request types
Each request type has its own page at /Support/cs-form/<slug>. Linking to a slug page skips the request-type picker.
- standard-return — Return a non-defective item (30 days, 14 in the EU)
- item-mismatch — Received an item that doesn't match the order
- item-missing — Item missing from a delivered order
- cancel-modify-order — Request a cancellation or shipping-address change for an order that has not shipped yet. Cancellations are best-effort and not guaranteed
- shipping-delivery-issue — Lost, delayed, damaged, returned-to-sender, or misdelivered order
- guarantee — Guarantee claim for a toolkit, battery, or part
- part-availability — Ask about a part that's not listed
- pre-purchase-question — Compatibility or what's-included questions before buying
- product-suggestion — Suggest a new product or an improvement
- fixbot-subscription — Help with a FixBot Enthusiast subscription
- invoice-request — Request an invoice for an order
- something-else — Anything that doesn't fit the categories above
- privacy-request — GDPR data access/erasure. External portal (no hosted page, cannot be pre-filled): privacy request portal
Pre-filling fields with URL parameters
Any query parameter added to a request-type page URL pre-fills the form field with the same name:
https://www.ifixit.com/Support/cs-form/standard-return?order_number=IF12345&return_reason=changed_mind
Rules:
- The parameter name must exactly match the field name listed below.
- For choice fields, the value must exactly match one of the allowed values (the machine value, not the label).
- Dates use ISO format: YYYY-MM-DD.
- Values must be URL-encoded.
- Logged-in customers get name, email, and storefront filled automatically; URL parameters override that, and anything the customer types wins over both.
- Pre-fills only work on a slug page, not on the picker page.
Not every field can be pre-filled. Yes/No questions, item pickers (choosing items from an order), address blocks, and photo/file uploads must be completed by the customer in the browser. The customer always reviews the form before submitting, so a wrong pre-fill is correctable and never auto-submits.
Common fields (most request types)
- name — text. Customer name. Auto-filled for logged-in customers.
- email — text. Contact email. Auto-filled for logged-in customers.
- storefront — choice. Store the order was placed on: us, ca, au, uk, eu, fr, de. Auto-filled from the page locale.
- order_number — text. Order number. Logged-in customers can pick from their orders; a pre-filled value that doesn't match appears as free text.
- phone — text. Phone number; only shown for EU-store replacement shipping.
Fields by request type
Only pre-fillable fields are listed. "(also asked)" notes what the customer must still complete themselves.
standard-return
- return_reason — choice: wrong_item, changed_mind
- date_of_receipt — date (YYYY-MM-DD). Must be within 30 days (14 for EU stores).
- uk_return_method — choice: self_return, prepaid_label. Only for the UK store.
- (also asked: items to return, whether the package was opened/handled, possibly photos)
item-mismatch
- resolution — choice: replacement, refund
- (also asked: which items, item photo, compatibility photo, shipping address for replacements)
item-missing
- missing_type — choice: fix_kit, part
- missing_kit_items — text. What's missing from the kit (fix_kit only).
- missing_part — text. Which part is missing (part only).
- (also asked: which items, photos, shipping address)
cancel-modify-order
- cancel_modify_action — choice: cancel, modify_address
- cancel_reason — text (cancel only)
- (also asked: new address when modifying)
shipping-delivery-issue
- shipping_issue — choice: returned_to_sender, delayed, lost, marked_delivered, damaged
- delivery_window — choice: passed, within (delayed/lost only)
- delivery_date — date (marked_delivered only)
- other_circumstances — text
- (also asked: delivered-within-30-days and correct-address confirmations, damage photos, shipping address)
guarantee
- guarantee_type — choice: toolkit, battery, part
- issue_description — text
- items_to_replace — text. Toolkit items needing replacement (toolkit only).
- battery_received — choice: within_year, over_year (battery only)
- date_of_receipt — date (battery, within a year only)
- battery_details — text. Device and part details (battery only).
- device_type — choice: laptop, phone, watch, tablet, other (battery only)
- resolution — choice: replacement, refund (battery/part); coupon, replacement (toolkit)
- (also asked: proof/photos, order number for battery and part claims, swollen-battery and part-installed questions, shipping address)
part-availability
- part — text. Which part, and for which device.
pre-purchase-question
- product — text. Which product.
- question — text.
- (also asked: whether it's a compatibility question, device photo)
product-suggestion
- suggestion — text.
fixbot-subscription
- fixbot_message — text. What they need help with.
- (also asked: whether they're already a subscriber)
invoice-request
- notes — text, optional.
something-else
- message — text. Describe the request.
Examples
Return, reason known, order known:
https://www.ifixit.com/Support/cs-form/standard-return?order_number=IF12345&return_reason=wrong_item&date_of_receipt=2026-07-01
Battery guarantee claim:
https://www.ifixit.com/Support/cs-form/guarantee?guarantee_type=battery&order_number=IF12345&battery_details=MacBook%20Pro%2013%22%202019%20battery
Lost package:
https://www.ifixit.com/Support/cs-form/shipping-delivery-issue?order_number=IF12345&shipping_issue=lost&delivery_window=passed