Shopify Returns, Exchanges & RMA Processing
1. Overview
This guide explains return processing, exchange handling, credit memo behavior, and RMA workflows between Shopify, XoroERP, and WMS/3PL systems. It defines how returns are initiated, validated, processed, and financially reconciled, including refund logic, store credit generation, exchange scenarios, and receiving workflows.
This document is used by implementation teams, support engineers, operations teams, and warehouse integration administrators responsible for managing Shopify return automation, financial adjustments, and reverse logistics workflows within XoroERP.
2. Functional Workflow
2.1 Shopify → Xoro → WMS Order Lifecycle
Step 1: Order Creation
Customer places an order in Shopify.
Step 2: Order Sync to Xoro
Order is imported into XoroERP.
Step 3: Fulfillment
Order is shipped from XoroERP or WMS.
Step 4: Shopify Status Update
Order is marked fulfilled in Shopify.
2.2 Return Initiation Workflow (Loop Integration)
Step 1: Customer Initiates Return
Customer selects refund, store credit, or exchange through Loop.
Step 2: Return Record Creation
Loop creates a return request and sends data to Xoro.
Step 3: RMA Generation
Xoro creates a Return Merchandise Authorization (RMA).
Step 4: ASN Creation & 3PL Notification
RMA generates an Advance Shipment Notice (ASN) for warehouse receiving.
Step 5: Return Processing
After ASN is fully received:
Refund or gift card processing occurs.
Exchange workflow is triggered if applicable.
Shopify and Loop statuses update.
2.3 Return Outcome Processing
Three return outcomes are supported:
Refund
Money returned to original payment method.
Credit memo created.
Store Credit (Gift Card)
Gift card issued in Shopify.
Credit memo created in Xoro.
Exchange
Returned item processed.
New sales order created.
Pricing difference handled automatically.
2.4 Exchange Processing Logic
Equal Value Exchange
Replacement item value equals original.
New sales order created with $0 value.
Greater Value Exchange
Customer pays additional amount.
Difference recorded as deposit.
New order created.
Lesser Value Exchange
Remaining balance refunded or issued as store credit.
Credit memo generated.
2.5 Manual vs Automatic RMA Sync
Automatic Sync (Default)
Loop automatically creates RMAs in Xoro.
Manual Sync (Exception Only)
Sync by Order Number.
Sync by Return ID (recommended).
Used for testing or urgent validation.
2.6 Return Window & Auto-Flag Behavior
Loop controls return processing windows.
If return is not completed within configured window: • Return is automatically flagged • Automation stops • Manual processing required • No new Xoro records should be created
2.7 Exchange Order Traceability
Exchange orders create new sales orders with reference format:
OriginalOrder-1
OriginalOrder-2
Dash numbering identifies exchange sequence.
3. Core Configuration Logic
3.1 Third-Party Return Source Configuration
Return automation requires selecting a supported return source.
Required Configuration
Select Loop as return source.
Configure access token.
Enable return syncing.
Unsupported return apps require manual handling.
3.2 Credit Memo & Gift Card Configuration
Refund Processing
Creates credit memo with refund amount.
Store Credit Processing
Creates Shopify gift card.
Creates credit memo in Xoro.
Final values update after Shopify sync.
Manual edits before sync completion may cause inconsistencies.
3.3 Exchange Financial Logic
System behavior depends on price comparison:
Equal Value
$0 replacement order
Greater Value
Additional deposit recorded
Lesser Value
Refund or store credit issued
3.4 RMA & ASN Processing Dependencies
Return completion depends on:
RMA creation
ASN generation
3PL receipt confirmation
Financial processing does not occur until ASN closure.
3.5 Return Window Configuration
Return automation depends on:
Configured return window duration.
Automatic flagging rules.
Manual handling after flag status.
4. Transaction-Level Behavior
4.1 When a Return Is Created
System Behavior:
RMA generated in Xoro.
ASN created.
Return status tracked.
Awaiting warehouse receipt.
4.2 When ASN Is Fully Received
System Behavior:
Refund or store credit issued.
Exchange processing triggered.
Credit memo updated.
Shopify and Loop statuses updated.
4.3 When Store Credit Is Selected
System Behavior:
Shopify gift card created.
Credit memo generated.
Gift card details synced to Xoro.
4.4 When Exchange Is Requested
System Behavior:
New sales order created.
Deposit recorded if price difference exists.
Linked reference stored.
4.5 When Return Is Auto-Flagged
System Behavior:
Automation stops.
No new transactions created.
Manual processing required.
5. Structured Examples
Example 1: Equal Value Exchange
Action: Customer exchanges a $100 item for another $100 item.
System Impact:
RMA created.
ASN processed.
New sales order created with $0 value.
Original return closed.
Example 2: Greater Value Exchange
Action: Customer exchanges $100 item for $150 item.
System Impact:
New order created.
$50 recorded as deposit.
Exchange linked to original order.
Example 3: Store Credit Return
Action: Customer selects store credit for returned item.
System Impact:
Gift card created in Shopify.
Credit memo generated.
Gift card details synced back to Xoro.
Example 4: Return Not Received Within Window
Action: Return not completed within configured return window.
System Impact:
Return auto-flagged.
Automation stops.
Manual processing required.
6. Important Rules & Constraints
Loop must be enabled for return automation.
Unsupported return apps require manual processing.
Returns cannot complete before fulfillment.
ASN receipt is mandatory before financial processing.
Credit memo values may initially be zero until sync completes.
Refund and store credit follow separate processing paths.
Flagged returns must not be reprocessed automatically.
Exchange orders always create new sales orders.
Third-party reference numbers must be used for traceability.
7. Best Practices
Confirm client return app during onboarding.
Validate Loop configuration before go-live.
Always verify gift card values after sync.
Use Return ID for manual sync validation.
Monitor 3PL receiving accuracy.
Review return window configuration during setup.
Use reference numbers to track exchange history.
Avoid manual credit memo adjustments before sync completion.
8. Common Mistakes & Pitfalls
Returns not syncing into Xoro
Verify Loop is selected in Third-Party Return Source settings
RMAs and return records sync correctly
Refund issued before return processing completes
Confirm ASN receipt from 3PL warehouse
Prevents incorrect refunds and incomplete return processing
Credit memo shows incorrect or zero value
Allow Shopify refund or gift card sync to complete before reviewing
Ensures accurate financial records
Exchange orders not linked to original order
Check third-party reference format (OriginalOrder-1, OriginalOrder-2)
Enables correct exchange traceability
Manual RMA sync used repeatedly
Verify automatic sync configuration and integration status
Maintains stable return automation flow
Return automation stops unexpectedly
Check Loop return window and auto-flag status
Ensures proper manual handling of flagged returns
Gift card value mismatch after store credit return
Validate synced gift card amount and ID
Prevents incorrect store credit balances
Exchange payment differences not recorded
Verify deposit creation for higher-value exchanges
Ensures correct financial reconciliation
Returns processed before order fulfillment
Confirm original order fulfillment status in Shopify/Xoro
Prevents downstream return and exchange failures
9. Frequently Asked Questions (FAQs)
What happens if Loop is not enabled in Shopify integration?
If Loop is not enabled, returns and RMAs (Return Merchandise Authorizations) will not sync into XoroERP.
This means:
Return requests created by customers will not appear in XoroERP
No return processing, refund tracking, or exchange handling will be available in the system
What to do:
Ensure Loop is properly enabled and configured in Shopify
Verify integration settings in XoroERP to allow return data sync
Can refunds be processed before ASN receipt in XoroERP?
No, refunds cannot be processed before the ASN (Advanced Shipment Notice) receipt is completed.
This is because:
The system requires confirmation that returned items have been received
Inventory must be validated before financial actions (refunds) are processed
What to do:
Complete ASN receipt for returned items first
Then proceed with refund processing
Why does a credit memo sometimes show zero value initially?
A credit memo may initially display a zero value because the Shopify sync is still in progress.
Once synchronization completes:
The correct refund amount is updated
The credit memo reflects final values
What to do:
Wait for Shopify sync to complete
Refresh or recheck the credit memo after some time
When should manual RMA sync be used?
Manual RMA sync should only be used in limited scenarios such as:
Testing the integration
Urgent validation of a specific return
It is not recommended for regular operations.
What to do:
Use automatic sync for normal workflows
Use manual sync only when necessary and with caution
How are multiple exchanges for the same return tracked?
Multiple exchanges are tracked using third-party reference numbers with dash sequencing.
For example:
REF-001
REF-001-1
REF-001-2
This helps:
Maintain a clear link between original return and subsequent exchanges
Track each exchange separately
What triggers a new sales order during an exchange?
A new sales order is automatically created whenever an exchange request is processed.
This ensures:
The replacement item is tracked as a new order
Inventory and fulfillment are handled correctly
What to do:
Review the newly created sales order for fulfillment
Process it like a standard order
What happens when a return is flagged in the system?
When a return is flagged:
Automatic processing is stopped
The return requires manual review and handling
This usually happens when:
There is a discrepancy or issue with the return
Additional validation is required
What to do:
Review the flagged return
Resolve the issue manually before proceeding
Where can gift cards issued for returns be viewed in XoroERP?
Gift cards issued as part of a return are visible in the:
Credit Memo Centre (linked to the return transaction)
This allows users to:
Track issued store credits
Reconcile return-related financials
Can customers choose between refund and store credit?
Yes, customers can choose between:
Refund
Store credit
This depends on how the Loop configuration is set up in Shopify.
What to do:
Configure return options in Loop based on business requirements
Ensure the setup aligns with refund and exchange policies
What is the safest identifier to use for manual return sync?
The safest identifier to use is the Return ID.
This ensures:
Accurate mapping of the return
Correct syncing of data between Shopify and XoroERP
What to do:
Always use Return ID when performing manual sync
Avoid using order number or other identifiers for this purpose
Key Takeaway
Loop manages return requests
Shopify processes return decisions
XoroERP handles execution, tracking, and accounting
10. Conclusion
Proper configuration of return automation, RMA processing, and exchange workflows ensures accurate financial reconciliation, controlled reverse logistics, and reliable customer return experiences across Shopify, XoroERP, and WMS systems. Following defined return flows, validating configurations, and enforcing operational constraints prevents processing failures, financial inconsistencies, and automation breakdowns.
Last updated
Was this helpful?