Operations
Refunds
Refunds are issued from the order they belong to, executed through the marketplace API, and mirrored into a credit note so your books, stock and reports stay aligned.
Refund types
| Type | Use when | Amount |
|---|---|---|
| Full refund | The whole order is returned or cancelled after payment | All items + shipping + tax |
| Partial — by line | Some items come back | Selected lines and quantities, tax recalculated |
| Partial — goodwill amount | Compensation without a return | A free amount up to the remaining refundable total |
| Shipping only | Late or failed delivery | Shipping line only |
Full refund
- Use when
- The whole order is returned or cancelled after payment
- Amount
- All items + shipping + tax
Partial — by line
- Use when
- Some items come back
- Amount
- Selected lines and quantities, tax recalculated
Partial — goodwill amount
- Use when
- Compensation without a return
- Amount
- A free amount up to the remaining refundable total
Shipping only
- Use when
- Late or failed delivery
- Amount
- Shipping line only
Issuing a refund
- 1
Open the order
Orders → the order → Start return. Refunds run through Returns, so Owner, Admin, Supervisor, Manager and Support can refund; Finance sees the resulting credit notes.
- 2
Choose scope
Pick full, select lines and quantities for a line refund, or enter a goodwill amount. Include or exclude shipping explicitly.
- 3
Decide on restocking
Tick restock to return units to on-hand stock. Leave it off for damaged or discarded goods.
- 4
Add a reason and confirm
The reason is stored on the credit note and passed to the channel where required. The refund is submitted to the marketplace and tracked until confirmed.
Important
Submitted refunds cannot be recalled from CrowPrime. Verify the amount before confirming.
What a refund changes
- Order status becomes refunded or partially_refunded, with the refund on the order timeline.
- A credit note is generated referencing the original invoice number, with tax split per rate.
- Stock increases only if restock was selected, immediately triggering a cross-channel sync push.
- Dashboard net revenue and the VAT report reflect the refund on its own date, not the order date.
- The remaining refundable amount on the order is reduced, so repeated partial refunds can never exceed the order total.
- Double submissions are stopped server-side: the same money cannot be refunded twice, even if confirm is clicked twice.
- Refunds into an already closed fiscal month are blocked to protect your books; post them in the current month instead.
{
"refund_id": "rfn_5MTQ2",
"order_id": "ord_8QF2K",
"type": "partial",
"lines": [{ "sku": "MUG-BLU-350", "qty": 1, "amount": 14.90, "vat_rate": 19 }],
"shipping_refunded": 0,
"restock": true,
"credit_note": "INV-0001-G",
"status": "confirmed"
}Channel-specific rules
| Channel | Notes |
|---|---|
| eBay | Full and partial refunds are issued through the eBay API; CrowPrime enforces the remaining refundable balance (it does not enforce a fixed day window — handle expired cases in the eBay seller portal) |
| Shopify | Full refunds and per-line partial refunds (including optional shipping) are issued through the Shopify API |
| TikTok Shop | Refunds are issued by approving the buyer's return request; terminal return states cannot be approved |
| Amazon | Refunds are imported from Amazon's finance data rather than issued from CrowPrime; fee reimbursements are reported separately |
| Etsy | Etsy has no refund API — CrowPrime opens the Etsy order page so you can refund there, and imports the result on the next sync; if an amount cannot be matched, the credit note is marked manually settled |
eBay
- Notes
- Full and partial refunds are issued through the eBay API; CrowPrime enforces the remaining refundable balance (it does not enforce a fixed day window — handle expired cases in the eBay seller portal)
Shopify
- Notes
- Full refunds and per-line partial refunds (including optional shipping) are issued through the Shopify API
TikTok Shop
- Notes
- Refunds are issued by approving the buyer's return request; terminal return states cannot be approved
Amazon
- Notes
- Refunds are imported from Amazon's finance data rather than issued from CrowPrime; fee reimbursements are reported separately
Etsy
- Notes
- Etsy has no refund API — CrowPrime opens the Etsy order page so you can refund there, and imports the result on the next sync; if an amount cannot be matched, the credit note is marked manually settled
Failed refunds
- Rejections keep the order unchanged and show the channel error on the refund attempt.
- Common causes are exceeding the remaining refundable amount, an already-refunded amount, a closed return state on the channel, or insufficient marketplace balance.
- After settling manually in the seller portal, record the refund in CrowPrime as externally settled so the credit note and reports match reality.
- When goods come back physically, track them under Returns — refunds here only move money.