Set Up Store Pickup Location

Download skill
Copy

Prerequisites

  • Wix Stores (or another eCommerce business solution) installed on the site
  • The Pickup carrier must be installed on the site (it is a built-in carrier, not a third-party app)

Required APIs


Step 1: Discover the Pickup carrier

Call List Installed Delivery Carriers to find the Pickup carrier's id.

Endpoint: GET https://www.wixapis.com/ecom/v1/delivery-profiles/installed-carriers

Response:

Copy

Look for the carrier with "displayName": "Pickup" and save its id. This is the appId you will use in Step 4.

If no Pickup carrier appears in the list, the Pickup app is not installed on the site and must be installed before proceeding.


Step 2: Find the default delivery profile

Call Query Delivery Profiles to retrieve the site's default delivery profile.

Endpoint: POST https://www.wixapis.com/ecom/v1/delivery-profiles/query

Request:

Copy

The response contains an array of deliveryProfiles. Find the one where "default": true. Save its id and revision. Inspect its deliveryRegions array.

Decision point:

  • Region exists for the user's country (match on destinations[].countryCode): save that region's id → skip to Step 4.
  • No matching region: proceed to Step 3.

Step 3: Add a delivery region for the pickup country

If no region exists for the user's country in the default profile, call Add Delivery Region to create one.

Endpoint: POST https://www.wixapis.com/ecom/v1/delivery-profiles/{deliveryProfileId}/delivery-region

Replace {deliveryProfileId} with the default profile's id from Step 2.

Request:

Copy
  • name: descriptive, e.g. "{Country} Pickup".
  • countryCode: ISO-3166 alpha-2 code (e.g. "US", "IL", "DE", "GB").
  • revision: from the profile returned in Step 2.

Response:

Copy

Save the new region's id from the response.


Step 4: Add the Pickup carrier to the region

Call Add Delivery Carrier to attach the Pickup carrier to the delivery region.

Endpoint: POST https://www.wixapis.com/ecom/v1/delivery-profiles/add-delivery-carrier

Request:

Copy
  • deliveryRegionId: from Step 2 (existing region) or Step 3 (new region).
  • appId: the Pickup carrier id from Step 1.
  • backupRate.title: the pickup address customers see at checkout.
  • backupRate.amount: "0" for free pickup, or a price string like "5.00".
  • backupRate.active: must be true for the option to appear at checkout.

Response:

Copy

Error Handling

ErrorCauseFix
DESTINATIONS_COLLISIONThe country is already assigned to another region in the same profile.Skip Step 3 — use the existing region's id and add the carrier to it in Step 4.
CARRIER_ALREADY_EXISTS_IN_REGIONThe Pickup carrier is already configured in this region.The pickup option is already set up. No action needed.
DELIVERY_CARRIER_MISSING_BACKUP_RATEThe backupRate or backupRate.amount field is missing.Ensure backupRate includes title, amount, and active.

Did this help?