Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
We offer a number of addtional modules that can be enabled within your instance to futher enahnce the base offering by providing a more omni-channel feature set to your customers.
Generally, Ship From Store is a fulfilment strategy that allows retailers to utilise their physical stores as additional distribution centres for fulfilling online orders. Instead of shipping products from centralised warehouses or distribution centres, retailers can leverage their store inventory to fulfil online orders and ship them directly to customers.
When we make a request to the StockChanged endpoint (Retail API), Apparel21 returns to us a list of what they call "stores". However, this "store" isn't necessarily a physical store (or warehouse). You can configure in the Apparel21 backend which stock locations and pools contribute to a particular "store" which is how the Web Stores work.
Please note that these are "stores" over the Retail API, but they're actually groupings of various warehouse and/or store locations in the backend, to form the stock counts which go to the website.
The Web Inventory refers to the total amount of available inventory for sale on a website. Typically, this includes the inventory stored in your warehouse. However, with the Ship From Store feature, you can also include the available stock from your physical stores. For instance, you can have a designated "store" such as Web Sales, Online Store, or Web Store, where the stock number is calculated by adding up the inventory from your warehouse and all the stores that are enabled for SFS.
DotApparel only integrates the Web Inventory with a Shopify location to facilitate the SFS feature. All other processes will be managed by the ERP. This means that DotApparel will continue to send online orders as normal, and Apparel21 will decide if an order will be shipped from a physical store based on the configured logic or rules.
In essence, there will be no changes unless the Web Store is modified. As previously stated, your ERP representatives will need to set up your Web Stores and Web Inventory in the ERP backend. This will guarantee that the inventory counts from the WEB Store already include the store inventory. For example, if the inventory number of Product A was 3 in the warehouse and 2 in Retail A, without SFS, the total inventory number from your WEB store would be 3. However, with SFS, it will be 5.
No. Since the Web Inventory has been configured in the ERP, the Shopify inventory also includes the floor stock available in your physical stores. Let's say that Product B is out of stock at the warehouse but there are 2 units available at Retail B. With SFS, in Shopify, there are 2 units available for purchase on the website. When customers purchase them, the orders will be sent to the ERP by DotApparel and then they will be processed by the ERP according to the SFS configuration.
Contact your ERP representatives and discuss your requirements to enable SFS.
Agree on the locations(stores) that will be included in the inventory pool (Web Inventory).
Let us know when you plan to launch SFS and also if the existing Web Store will be used or new Store ID provided.
Schedule your configuration change with the ERP and confirm that date and time with us.
Once activated we will process a full inventory sync and get you to confirm all inventory is expected.
Orders will start syncing through to the ERP as normal and the ERP will start assigning them to retail stores for fulfillment.
AusPost Returns offers a streamlined returns process, allowing customers to generate labels and track returns easily. Integrating DotApparel Core with your ERP automates return management, reduces manual errors, and updates stock levels in real-time. This improves efficiency, enhances customer experience, and provides better inventory visibility for merchants.
Responsibility: Merchant
To enable return creation in AP21, we need to configure a webhook URL in Loop Returns' admin.
Install and configure the Australia Post Shopify app
Ensure the app is installed on the relevant Shopify store and basic setup is complete.
Contact Australia Post support
Request that they enable webhook subscriptions for your account (required for DotApparel to receive return events).
Notify the DotApparel team
Once webhook access is granted, let our team know so we can proceed with configuration.
Provide ERP Return Reasons
Please share your ERP’s standard list of return reasons. These will be mapped into the Core app.
Example:
Enter Australia Post API credentials into the Core app
Our team will retrieve these details from the AusPost app in your Shopify admin:
Company ID
API Domain URL
API Key
API Secret
Map ERP Return Reasons
DotApparel will match your ERP return reasons to the Shopify return submission reasons within the Core app.
Size - item is too small
Too small
1357
Change of mind
Change of mind
1358
Faulty - zip broken
Faulty zip
1359

DotApparel collaborates with Loop Returns and AusPost to automatically generate return authorisations in your ERP when customers initiate returns through the returns portal online.
For Loop Returns, DotApparel Core enables merchants to preserve revenue in ERP through instant exchange orders and transfers refunded store credit to the ERP gift voucher seamlessly. AusPost does not currently have the capability to do instant exchanges or refund into a store credit.
Merchants can choose between AusPost Returns and Loop Returns, both of which integrate seamlessly with DotApparel Core. Here’s how they differ:
DotApparel offers a flexible option to map return reasons between Loop Returns and the ERP, enabling enhanced return reason reporting in the ERP.
To configure the return reason mappings, follow these steps in your DotApparel admin:
Navigate to Returns > Mappings.
Under the Return Reasons section on the right-hand side, click "Add new return reason".
From the "ERP return reason type" dropdown, select a reason from the provided list.
In the "Source return reason pattern
Once the integration is fully set up and operational, it will function automatically. However, merchants may still wish to monitor the process and address any potential issues. To do so, they can access the Returns section in the DotApparel app.
This section serves as a comprehensive list of all returns known to DotApparel, including any return requests that existed before the implementation of DotApparel. This feature ensures smooth tracking of all returns, without any critical ones being overlooked.
The Returns section has four tabs:
All returns: Each line item represents an individual Return order received from the Loop webhook. By clicking on each line item, merchants can access detailed information about the return order.
Return suspended: This tab displays a list view of all Return orders that were not created in the ERP due to API errors.
Need review: This tab provides a list view of all Return orders that require issuing a gift voucher to the customer, but the voucher order has not yet been posted to the ERP. This might occur if the return was requested before the implementation of DotApparel. Merchants need to review the voucher information, including person ID, email, and amount, before manually triggering the voucher to the ERP. Merchants may also need to verify if the gift card refund has already been processed during the integration migration.
As return orders progress or change status, DotApparel will attach different tags to each order, indicating its current state. The following tags may be associated with a return order:
Return posted: This tag is applied immediately after a customer submits a return request to Loop, confirming that DotApparel has successfully created a return in the ERP.
Applies to Loop, AusPost
Return suspended: This tag indicates that DotApparel encountered an issue and could not create a return in the ERP, often due to API errors or other reasons.
Applies to Loop, AusPost
Return received: This tag indicates that the return might have been processed before the implementation of DotApparel, resulting in DotApparel logging the record without taking any further action.
Applies to Loop, AusPost
The "Return Suspended" status mainly occurs when DotApparel encounters issues while attempting to create a return in Apparel21 due to API errors. This situation is rare, and it can generally be easily resolved by retrying the task. However, if you come across this issue, please don't hesitate to contact us for further assistance.
Several factors may result in a return order being marked as "Need Review":
The return order was processed before the implementation of DotApparel21 or was handled by a legacy integration during pre-migration.
Progress encountered an API error during the return process.
The order was previously or partially refunded to a gift voucher, and another gift card refund may be issued from other resources. In this case, DotApparel suspends the progress to avoid the risk of issuing a gift card twice to the customer.
Yes, when a customer chooses the "refund to original payment method" option in Loop, but a gift card was used for the original payment, the customer will receive a new gift voucher from ERP. This is necessary since the previously used gift card is no longer available for the refund process.
Shopify helps merchants expand their business to a global audience, sell to multiple countries, and scale internationally. With Shopify Markets, you can configure multiple languages, international pricing, market-specific domains and subfolders, and more. By creating localized shopping experiences, merchants can better expand their business internationally.
Reference: https://help.shopify.com/en/manual/markets
ERP allows merchants to configure additional price schemes in various currencies, in addition to the primary currency of the business. For example, a business based in Australia (AUD) can set up a new price scheme in US Dollars (USD) within ERP.
By setting up these additional price schemes, merchants can manage product prices in different currencies in the ERP and expose the price data through the Retail API.
DotApparel provides seamless integration between Shopify Markets and ERP, allowing merchants to connect multiple ERP APIs to their respective Shopify Markets. This feature enables the synchronization of product pricing between ERP and Shopify, ensuring accurate and up-to-date information is available to customers across different markets.
Markets Synchronization
DotApparel retrieves the latest configurations from Shopify Markets, ensuring that the data is up-to-date.
This synchronization process guarantees that the Markets information and settings in DotApparel align with the Shopify Markets' requirements and changes.
DotApparel allows merchants to connect one or more Shopify Markets to either the primary ERP API or an additional API.
This flexibility enables merchants with multiple ERP instances to manage various markets efficiently
Pricing Integration
DotApparel offers seamless integration of product prices between ERP and Shopify Markets.
By mapping the appropriate ERP API to each Shopify Market, DotApparel retrieves the product prices in the desired currency for each connected market.
An automation task within DotApparel downloads the product prices from ERP on a daily basis and automatically uploads the fixed prices to the respective Shopify Markets.
Order Integrations
DotApparel provides the option to sync Shopify Markets orders to ERP in multi-currency.
Orders can be synced in either the store currency or the configured market currency, based on the individual configuration for each Market and ERP mapping.
This flexibility allows merchants to choose whether to sync orders in the original market currency or convert them to the store's default currency in ERP (calculated by Shopify).
-
Support refunding to the original payment method where an Apparel21 gift voucher was used
âś…
-
Return not posted: This tab highlights any Return orders that DotApparel has not processed. These returns typically existed before DotApparel, and no further action is required for DotApparel to create the returns in the ERP.
Voucher posted: This tag denotes that DotApparel has successfully created a gift card refund in the ERP for the return order.
Applies to Loop
Need review: This tag indicates that DotApparel has paused the process of posting a gift voucher in the ERP, requiring the team's review of the voucher request. This situation might arise when the return order was requested before the implementation of DotApparel.
Applies to Loop
Return to store credit: This tag is applicable when the customer selects "refund to store credit" in Loop while the return is still in progress. No action is needed at this stage, but it serves as a future reference.
Applies to Loop
Return to original voucher: This tag indicates that the customer selected "refund to original payment method" in Loop, but a gift card was used in the original payment. Consequently, a new gift voucher will be sent to the customer. Similar to "Return to Store Credit," no further action is required during the ongoing return process.
Applies to Loop
Generate RANs once a customer triggers a return using the online returns portal
âś…
âś…
Assign identifiers to orders within Shopify, reflecting the status of returned item
âś…
âś…
Streamline instant exchange orders, especially in cases requiring refunds in the form of store credit
âś…
-
When a return is sent to ERP, the revenue calculation and stock count are accurately recorded
âś…
âś…
Configure return reasons within the app, ensuring perfect alignment between Returns platform and ERP
âś…
âś…
Store credits (gift vouchers) can be represented as distinct line items on exchange orders in ERP


âś…
The integration of Shopify Local Pickup and DotApparel enables merchants to offer Click & Collect as a delivery option while seamlessly syncing the orders with their ERP backend.
With the integration in place, merchants can easily set up multiple pickup locations in Shopify and offer pickup as an option during checkout.
Behind the scenes, DotApparel integrates with Shopify to feed in-store stock into Shopify locations using the location mappings set up in the app. DotApparel also sends the PickupStoreId for each mapped location so that the ERP can process the orders as Click and Collect.
PickupStoreId for the mapped Shopify location and in doing so, the ERP can process the orders as Click and Collect.There are 2 types of configurations:
Combined: The ERP config for "Online Store" combines total available stock from all locations. It includes warehouse and in-store stock.
Separate: The ERP config keep inventory levels for warehouse and in-store stock separate.
The merchant holds the decision to choose the most suitable approach. Upon reaching a decision, ERP will configure the rerouting logic and stock calculation for each specific location in the ERP. Before deciding, it is important to consider the limitations.
Limitations of the Combined Approach:
Challenges in Offering Same Day Delivery, International Shipping, and Local Pickup Simultaneously
Reduced Control Over Product/Order Locations
If you are not offering Same Day Delivery, International Shipping, and Local Pickup simultaneously then it is fine to proceed with the Combined approach.
ERP support will need to action this. Here's a canned template we prepared earlier:
Hi ERP Team,
We're requesting an update to our stock formula so that the "Online Store" no longer combines the total stock for warehouse and store locations. This update will support our move towards Native Locations in Shopify.
To clarify, please update the stock formula for "Online Store" so that it only includes warehouse stock.
To ensure smooth implementation, let's coordinate the action on an agreed-upon day and time in collaboration with the DotApparel team. Can you confirm your availability for this task?
Once confirmed, we'll schedule the adjustment, ensuring all parties are ready for the necessary changes.
Regards,
Merchant Name
ERP support will need to action this. A common scenario is when a merchant needs to add or remove a physical store from the "combined" stock pool. Here's a canned template we prepared earlier:
Hi ERP Team,
We would like to request an update to our stock formula to remove the Chadstone store from the "Online Store" pool, as this location is no longer in operation.
To clarify, please adjust the formula so that it includes the warehouse and all other retail stores except the Chadstone store.
Kindly let us know once this has been actioned.
Regards,
Merchant Name
Go to Shopify and enter all the shipping origins. It should include the warehouse and the stores that are available for local pick-up.
For each location that can fulfil online orders, make sure to tick this checkbox.
Ensure that this checkbox is ticked for only the individual store(s) that allow for Click & Collect.
Double-check the local pickup settings in Shopify.
We recommend using the "Locations that fulfill pickup orders only" option for local pickup orders in Shopify. This option ensures that the inventory at a location is only available for pickup orders, and prevents delivery orders from being allocated to this location. Always check that location is enabled for fulfil online orders from this location.
Location mappings allow DotApparel to link ERP Stores to the corresponding locations in Shopify. This enables DotApparel to sync inventory levels from AP21 to Shopify locations.
Refresh locations to download all locations from Shopify and all stores from the ERP.
Add the ERP store to a Shopify location.
Once Shopify is set up, the next step is up for the DotApparel team to setup the locations in the DotApparel Core app (this involves configuring store mappings one-by-one).
Pickup Store ID mappings enable DotApparel to pass a PickupStoreID to the ERP for Local Pickup orders. We can easily map a Pickup Store ID to a Shopify location like the shipping option patterns for shipping.
Click Add new shipping method button in the Settings > Shipping Methods section
Enter the required fields in the form Delivery method type: Select "Local Pickup" from the dropdown list. Pickup Store ID: Can be found from Retail API /Stores endpoint. Shopify title pattern: This should be the location name in Shopify. The preview name can be found in Shopify Settings > Shipping and Delivery> Local Pickup section.
Brauz is a tech platform that specialises in various delivery method solutions, ensuring a top-tier omnichannel retail experience. Within its suite, Brauz offers several products. Merchants have the option to leverage Brauz instead of the Find In-Store and Click & Collect modules within DotApparel Core.
Brauz requires the latest inventory data. There are 2 ways to achieve this:
Approach 1: Shopify Inventory API
Ideal For: Stores with multiple locations set up in Shopify.
Why? Choose this option if each location in your Shopify store is configured individually. If this setup is not already in place, we strongly recommend configuring each location separately. This allows Brauz to function natively without the need for additional API calls via DotApparel.
Brauz strongly prefers using the Shopify Inventory API for the latest inventory data because its integration is designed around Shopify's APIs. However, for merchants with only one Shopify location, the best approach is to utilise DotApparel Core.
No, the Brauz solution does not rely on Shopify's native local pickup feature. Instead, it is built on top of the regular shipping checkout. Therefore, you can leave the Local Delivery and Local Pickup sections blank.
If the fulfilment is enabled in DotApparel, the order status will always be synced from Apparel21 to Shopify.
Within DotApparel Core, we offer inventory endpoint that allow Brauz to obtain accurate inventory data from your Apparel21 instance.
Although the Shopify admin has only one location, DotApparel Core supplies up-to-date stock information from multiple retail and warehouse locations within Apparel21. DotApparel Core ensures that Brauz references accurate inventory, despite there being only one Shopify location.
Brauz has 6 solutions but only 4 of them utilise DotApparel Core.
Merchants can access all of Brauz's solutions with one integration. With DotApparel Core, we can sync the latest inventory data to provide customers with the most convenient delivery method. Here's more info about a few Brauz solutions.
Brauz offers a Shopify Checkout Extension exclusively for Shopify Plus merchants who have upgraded to checkout extensibility. This extension simplifies front-end implementation and automatically presents all available delivery options at checkout based on your Brauz configuration.
DotApparel has introduced a new feature that enables online refunds that were paid via Shopify Payments and other native payment gateways supported by Shopify. With this feature, merchants can easily sync Apparel21 refunds back to the original orders in Shopify.
This guide will walk you through the steps to initiate transaction refunds within DotApparel.
The main advantage of this feature is the streamlined refund process for payment refunds, here's how it primarily benefits merchants:
Store staff processes the return in Apparel21 POS using the correct return reason.
A refunds.csv file is uploaded to SFTP at a set frequency (i.e., every 5 mins)
DotApparel receives and processes the refunds in Shopify when it's eligible for Auto-Refunds
The refunds.csv must only include refund transactions, not exchanges or store credits.
The file must include the WEB_ORDER_NUMBER column for Shopify order mapping.
Merchants must notify DotApparel if they want to enable POS refunds via Apparel21.
An Apparel21 Specialist must generate the refunds.csv file.
The refunds.csv contains online orders refunded in-store via Apparel21 POS. DotApparel uses this file to verify refund eligibility and process the refund in Shopify.
Each record must include:
WEB_ORDER_NUMBER – The Shopify Order Number. DotApparel uses this to validate the order in Firestore.
RETURN_REASON – The Apparel21 return reason code. It must match a pre-configured reason in DotApparel Core.
Refund Amount – If multiple products were refunded in a single transaction, DotApparel will sum the refund amounts before processing.
Additionally:
The same AP21 payment type (tender) used for web sales should be applied for refunds (e.g., "Shopify Payment").
The Apparel21 Consultant will configure POS to surface the correct tender.
The refund record should meet these conditions:
A retail transaction contains a negative amount (e.g., -$50), indicating a refund.
The original sale was an online (web) purchase.
The return (credit) value is correctly recorded.
For refunds processed directly via Apparel21, DotApparel regularly downloads updated orders and checks for returned items. If the return reason matches the pre-configured settings in DotApparel, the system will automatically trigger the refund in Shopify.
If a future merchant is using both DotApparel Core; Auto-refunds and Yotpo Loyalty, they may require a refunds.csv to be sent to two different SFTP destinations.
Ideal For: Stores with a single location in Shopify. Merchants must have DotApparel Core enabled to utilise this feature.
Why? Use this option if all locations within Apparel21 are consolidated into one location in Shopify.
[only applies if custom C&C and Find In-Store is already enabled] In the app, remove freight options relating to custom Click & Collect and/or Find In-Store
DotApparel
Script is pushed from staging to production
Brauz
Customisable email/SMS confirmation and reminder
58% conversion rate
Merchants can choose from the following carriers for delivery:
Uber: Covers a 15km radius
Rendr: Covers a 50km radius
[only applies if custom C&C and Find In-Store is already enabled] In the app, remove freight options relating to custom Click & Collect and/or Find In-Store
DotApparel
Script is pushed from staging to production
Brauz
Alignment meeting
Brauz, DotApparel
Training schedule with Retail Ops and Staff
Brauz
Code pack handed off for placement on staging
Brauz
Brauz makes requested change to function or UI design
Brauz
Set up each location in Shopify admin panel
Merchant
Retailer and Brauz runs end to end test
Brauz, Merchant
Click & Collect
Yes
Find In-Store
Yes
Reserve In-Store
Yes
On-Demand Delivery
Yes
Retail Appointments
No
Commerce Anywhere
No
Alignment meeting
Brauz, DotApparel
Code pack built to retailer requirements utilising DotApparel Core
Brauz, DotApparel
Training schedule with Retail Ops and Staff
Brauz
Code pack handed off for placement on staging
Brauz
Brauz makes requested change to function or UI design
Brauz
Retailer and Brauz runs end to end test
Brauz, Merchant






Front-End
Configure locations and local pickup in DotApparel
DotApparel
Front-end implementation (ref: )
Front-End
Unpredictable Bouncing to Different Stores
Lack of Control Over Fulfillment Processes
Common Issue with Combined Stock Formula
Inability to Exclude Ship From Store (SFS) Locations
Difficulty in Supporting International Orders
Check your current stock formula config for the ERP
Merchant
Update the ERP stock formula config (if applicable)
ERP
Merchant
Merchant
Setup locations that fulfill pickup orders only (only applicable for the "combined" approach)
Merchant




[store name]








Upgrade to checkout extensibility
Refund Shopify order from AP21: Merchants can handle returns within AP21 without any extra steps. There is no need to handle refunds separately in both Apparel21 and Shopify, instead, they can process refunds exclusively in Apparel21, saving time and effort.
Refund Shopify order from POS (in-store): When a refund is processed in Apparel21, the payment status of the corresponding order in Shopify will be automatically updated. This sync ensures that the payment status is accurate and up to date in both systems without manual intervention. (this requires a refunds.csv for in-store refunds only) Note: The merchant will need to configure the refund.csv files. See more info here
Refund online orders via Apparel21 Mail Order (Head Office)
âś…
Refund online orders via Apparel21 POS (In-store)
âś…
Note: The requires a refunds.csv
Refund should be deducted from Shopify order
âś…
Capture the return reason
âś…
Ability to refund online orders back to the original payment method. The module can process refunds for all payment methods supported by Shopify:
PayPal
AfterPay
Shopify, ShopPay
Apple Pay
âś… Note: The feature does not support Refunds for orders paid with gift cards
Exchange of size or colour
❌
Merchant to provide:
DotApparel to configure:
Merchant to provide:
DotApparel to verify:
Merchant to:
If setup is correct, refund will process automatically in the staging Shopify store
Responsibility: DotApparel
This step requires the merchant to set up the new return reason on their end. The new return reason can be anything such as Shopify Refund but should be a unique reason to avoid potential coupling issues with existing ones.
After completing the setup for return reasons, open the DotApparel Core app and navigate to the settings page. Find the Refund section and select the newly created return reasons for Auto-Refunds.
The "Freight SKU IDX" field is now required in the settings. This value is used to determine if a returned item corresponds to a shipping fee and whether it can be refunded.
The "Refund Payment Origin" field is used to help with refunding shipping fees for cancelled orders.
The "Virtual Partial Refund SKU IDX" field enables merchants to configure virtual products in AP21 specifically for partial refunds. This feature allows merchants to create a new returned item and immediately specify a total partial refund amount without the need to modify existing order items in AP21, thereby enhancing flexibility in handling partial refunds.
Make sure to enable the "Active Auto-Refund in Shopify" option.
After configuring the settings, click the "Update settings" button to save the changes and complete the setup.
Within the settings page, navigate to the automation section.
Find the option to enable fulfilment automation and activate it.
Save the changes.
By default, Auto-refunds only handles orders that are paid through "Shopify payment". However, an enhancement now allows users to customise this rule. Users can navigate to DotApparel's settings, locate the payment gateways section, and enable the "Allow Auto-Refund" checkbox for third-party gateways like Afterpay.
Every Auto-Refund workflow consists of 3 main steps:
After an item is refunded in Apparel21, it must be assigned a specific return reason designed for auto-refunds. In DotApparel, a pre-defined return reason ID is established to identify eligible items for auto-refunds. To trigger the auto-refund process in Shopify, the following conditions must be met:
The Apparel21 OrderDetail (line item) status should be marked as "Returned".
The return reason ID assigned to the refunded item in Apparel21 matches the pre-defined return reason ID in DotApparel.
DotApparel is running an automation task to regularly download the most recently updated orders from Apparel21. By default, this task occurs once per hour, ensuring the system stays updated with the latest order information. However, if the Apparel21 Retail API version is 2022.3 or newer, the download task is more frequent, running every 5 minutes for faster synchronisation.
Once the orders are downloaded into DotApparel, the system proceeds to evaluate each order's eligibility for automatic refunds in Shopify. DotApparel checks various criteria to determine if an order can be automatically refunded using the payment gateway. If an order meets the necessary conditions for automatic refunding, DotApparel lists the refund requests within the app for merchant review and processing.
Once an order is processed in DotApparel, the corresponding items are immediately refunded in Shopify. DotApparel communicates with Shopify's refund functionality, initiating the refund process for specific items.
Upon successful refund in Shopify, the "refund notes" section within the order will be updated with a reference ID. The reference ID format is as follows: "Reason: '[AP21 Refund] - ref: 4a00e8e1-cd94-46f8-9090-f5d9f9e4107b'". This reference ID serves as a unique identifier and enables merchants to easily locate and view the AP21 refund details within the DotApparel app.
In the event of any error during the auto-refund process, DotApparel promptly displays an error message. The order associated with the failed refund is labelled as "Failed to refund" within DotApparel, indicating that the refund was not successful. Merchants can review the specific error message in DotApparel to identify the cause of the failed refund and take appropriate action, such as manual refund processing in Shopify if necessary.
This section highlights the limitations of the auto-refund feature in DotApparel and its integration with Shopify. It covers scenarios where manual refunds in Shopify, cancelled AP21 orders, and gift card payments are not supported.
If an order has already been refunded manually in Shopify, the auto-refund process in DotApparel will be halted to prevent duplicate refunds. Merchants are required to manually process the refund in Shopify for such cases.
By default, if an order is cancelled in AP21, DotApparel will not automatically process a refund in Shopify. If you require automatic refunds for these types of orders in Shopify, please contact our support team for assistance.
The feature does not support refunds for orders paid with gift cards. In cases where an order is paid using a combination of gift card and normal payment, only the portion paid with the payment can be refunded through Shopify. Merchants need to process any gift card refunds separately, outside the auto-refund process.
The Wishlist is a tool that enhances the customer experience by enabling users to create and manage wishlists on your e-commerce store. It provides an easy way for retailers to capture shopper details and preferences, both in-store and online, and automatically generates personalised marketing campaigns that build engagement and drive sales.
A Shopify store with DotApparel Core installed (includes Apparel21 API credentials)
A Firebase project upgraded to the Blaze plan
Shopify store access with permission to install a private app on the Shopify store
DotApparel API:
The Wishlist has access to all DotApparel API endpoints .
The Wishlist primarily uses POST and GET endpoints for customer and order data.
Data sync frequency can vary from daily to every 15 minutes for more real-time updates. This needs to be predetermined and set up by an Apparel21 specialist.
Subscription Fees: The use of DotApparel API incurs a fixed monthly charge of A$300, automatically billed to the merchant via Stripe.
Additional Charges: Our Apparel21 Consultant my charge additional for any changes relating to the Apparel21 CSV exports.
CSV Files:
Both the customers.csv and orders.csv are required.
Note: The CSV templates might be different from DotApparel Customers. Particularly, orders.csv must include online transactions.
An Apparel21 Consultant needs access to your Apparel21 instance to configure file exports.
The CSV files are used for /customers/search and /orders/transactions/search endpoints as a workaround to get both online and in-store data. Without this, the Apparel21 API only returns online data.
Install DotApparel Core: Ensure your Shopify store has DotApparel Core installed.
DotApparel
Install The Wishlist App: Follow the installation instructions provided by The Wishlist.
The Wishlist
Setup the CSVs: Setup the automated customers.csv and orders.csv exports in Apparel21.
Apparel21 Consultant
Configure Settings: Customise DotApparel Core settings to fit your store's needs.
Once configured, CSV files are uploaded to the SFTP.
DotApparel API processes these files and stores the data in the database (Firebase project within DotApparel Core).
The Wishlist accesses this data via the DotApparel APIs.
DotApparel
Test End-to-End: Conduct thorough testing (i.e., verify that saved wishlist items are appearing across devices)
Merchant & The Wishlist

Google Pay
Exchange with different products requiring more payment
❌
exchanges with different products requiring a monetary refund
❌








DotApaprel utilises Loop's webhooks to create a return in ERP whenever a customer initiates a return through the customer portal, allowing the customer to receive store credit upon processing the return request. The store credit is then seamlessly converted into a gift voucher, which ERP directly sends to the customer.
Basically, the flow looks like this:
The customer starts the return process in Loop.
The return status in Loop is marked as "in progress".
DotApparel automatically creates a return order in AP21.
The customer ships the returned item to the merchant.
The merchant confirms they've received the returned item.
The merchant completes the return in Loop.
Loop refunds the Shopify order.
The return status in Loop is marked as "closed". If no gift voucher is needed, the process ends here. However, If the customer chooses store credit or needs a gift card refund:
DotApparel sends a request to AP21 to generate a new gift voucher.
AP21 then emails the new voucher to the customer.
Our Loop configuration can do these four things:
Return Processing: When a return is made through Loop, the integration sets up a return process by mapping return reasons, creating a return order, and generating a Return Authorisation Number (RAN) in the ERP system. This applies to all merchants using Loop. This applies to all merchants using Loop integration.
Refund with Gift Card: If a return involves refunding to the original payment and a gift card was used, the integration generates an ERP return voucher. This applies to merchants using ERP voucher.
Store Credit: For customers choosing store credit in Loop, the integration sends out an ERP return voucher. This is relevant for merchants who have integrated the store credit feature in Loop.
Exchange Orders: The integration can push exchange orders (prefix EXC-) from Shopify to the ERP system. This specifically applies to merchants using the exchange feature in Loop.
Merchants can choose to launch with any one or all four of the configuration above. However, if at any point in the future, merchants plan to add #3 and #4 then merchants will need to reach out to Loop for the necessary configurations.
Before we can start, merchants may need to contact Loop support for the disabling or modification of certain features to ensure smooth functioning.
For merchants using Loop's instant exchange order, they need to contact the Loop support team to make specific adjustments.
Normally, this should be the account owner (i.e. the merchant) to reach out to Loop for these actions:
Switch off the 100% discount for EXC orders Required for Loop config #4
Merchants are advised to reach out to Loop support and request the removal of the 100% discount (i.e. the discount code “loop-discount”) from instant exchange orders created by Loop in Shopify. Failure to do so might result in inaccurate revenue and stock data within the ERP.
Confirm the tax-inclusion of the EXC orders Required for Loop config #4
Merchants needs to ensure that each exchange order includes tax. This will enable DotApparel to accurately post the correct exchange amount to the ERP.
Stop creating new Shopify gift cards for store credit Required for Loop config #3
This applies if the merchant utilises ERP gift vouchers.
Failure to do so may lead to a problem of issuing duplicate store credit for customers, occurring both in ERP and Shopify.
Responsibility: Merchant or DotApparel w/ permissions
To enable return creation in AP21, we need to configure a webhook URL in Loop Returns' admin.
This webhook is triggered when a customer submits a return request (not an exchange). Without this setup, DotApparel won't be able to capture returns from Loop. To proceed, you may need to provide us with login access to your Loop instance so we can configure it for you. Given that Loop requires 2FA right now, sharing login credentials may be challenging. If you are comfortable handling this step yourself, here's the detailed guideline:
Log in to Loop Admin.
Navigate to Settings > Developers
Note: if Developers is not available as a menu item, you can navigate to it directly by adding /developers to the end of the Settings page URL
Find the Webhooks section and select the "Create webhook" button.
In the prompted window, choose "Return created" as the Event and "Return" as the Response. Then, paste the trigger URL of the function webhooks-loopReturnsReturnCreated.
Click "Add" and proceed to click "Activate." Finally, remember to save the webhook settings.
Responsibility: DotApparel
When a customer submits a return for instant exchange, Loop will bring in an instant exchange order to Shopify. Usually, the order number begins with "EXC-", although Loop allows customisation based on the merchant's preferences. Once the exchange order is received in Shopify, DotApparel will be configured to send the order to the ERP in the same manner as regular orders.
Responsibility: DotApparel
To set up the return voucher, perform the following steps within your DotApparel admin:
Go to Returns > Mappings.
Locate the Return voucher section.
Provide the necessary information in the fields labelled "ERP voucher SKU ID", "ERP voucher type", and "Email subject".
If merchant ID and Card Type are explicitly required, ensure you fill in those details as well.
When a return order requires issuing a gift voucher to the customer, but the return was initiated before the implementation of DotApparel, it will be marked with a "Need review" status. In such cases, DotApparel makes every effort to gather all essential customer and order information from various sources. Therefore, it is advisable for the team to thoroughly review crucial details, including the person's identifier, email address, and gift card amount. Once everything is verified as accurate, manual actions can be taken in the subsequent step.
By default, DotApparel automatically handles gift voucher refunds to customers. However, if a return order requires review, you will need to manually trigger the task to post the voucher to ERP.
To do this, go to the return order page and click ERP > Upload voucher to ERP. A window will display the task status, and log messages will provide real-time updates on the progress of the voucher posting.
After the process is finished, you have the option to click on ERP > Download voucher from ERP to examine the appearance of the generated voucher order and save it within the app for future reference.




