Coupon Management and Cancellation

How to manage issued coupons and the cancellation and point refund mechanism

coupon managementcancellationrefundoperations
4 min read

About This Article

When points are converted by mistake or an order is cancelled, coupons need to be invalidated and points returned. This article explains the coupon management features and cancellation mechanism.

Coupon Management Overview

Scenarios Requiring Management

Customer converted by mistake
Required ResponseCancel coupon, return points
Order cancelled (unused)
Required ResponseCancel coupon, return points
Order cancelled (used)
Required ResponseReturn points only (coupon already used)
Suspected fraud
Required ResponseInvalidate coupon, investigate
Expiration check
Required ResponseList display, send reminders

Information Available to Administrators

Admin screen features: Search (customer ID/coupon code), Filter (all/unused/used)

70934-AB12CD
CustomerYamada Taro
Amount¥500
StatusUnused
Action[Cancel]
70934-XY34ZW
CustomerYamada Taro
Amount¥1000
StatusUsed
Action-
12345-CD56EF
CustomerSuzuki Hanako
Amount¥300
StatusExpired
Action-

Cancellation Feature

Cancellation Flow Overview

Select cancellation target

Admin selects coupon to cancel

Verify status

Confirm coupon is unused (used coupons cannot be cancelled)

Invalidate in Shopify

Delete/invalidate coupon via Shopify Admin API

Return points in POS

Restore deducted points via POS API

Update metafield

Update status in customer's coupon info

Notify customer

Email notification of cancellation and point refund

Detailed Flow Diagram

Cancellation Process Details
Admin executes cancellation

Select target coupon from admin screen

Status check

Unused → Continue / Used → Error "Already used"

Invalidate coupon in Shopify

DELETE /admin/discount_codes/[id] → Code becomes unusable

Return points to POS

POST /customers/[id]/points/add → Add deducted amount to restore balance

Update metafield

status: "active" → "cancelled", record cancelled_at

Email customer

"Your coupon has been cancelled" "500 points have been refunded"

Log completion

Record all operations for audit

Cancellation Conditions

Conditions for Cancellation

Unused, within validity
CancellationPossible
ReasonNot yet used
Used
CancellationNot possible
ReasonDiscount already applied
Expired
CancellationNot possible
ReasonAlready invalidated
Already cancelled
CancellationNot possible
ReasonPrevent duplicate processing

Handling Used Coupons

Scenario: Order was cancelled

At order
SituationCoupon used → Marked 'used' in Shopify, 500 yen discount applied
ResponseCancellation not possible at this point
Order cancelled
SituationCancel coupon → Cannot (used)
ResponseReturn points → Handle manually separately

Resolution:

  • Admin manually grants points in POS
  • Grant reason: "Refund due to order cancellation"
  • Record in history

Note: Automation possible, but recommend manual review for point returns on order cancellation to prevent fraud

Point Refund Mechanism

Refund Process Details

Cancellation info: Coupon code: 70934-AB12CD-500, Points used: 500pt, Customer ID: 12345

Endpoint
ValuePOST /customers/12345/points/add
amount
Value500
reason
ValueRefund due to coupon cancellation
reference
ValueCANCEL-70934-AB12CD-500
Pre-conversion balance
Points1250pt
Post-conversion balance
Points750pt
Post-refund balance
Points1250pt ← Restored

Refund Traceability

Customer 12345 point history:

1/15 10:00
Change-500pt
ReasonCoupon conversion (AB12CD)
1/20 15:00
Change+500pt
ReasonCancellation refund (AB12CD) ← Can be linked

Point: Reference code links conversion and refund, verifiable for audit consistency

Customer Notification

Cancellation Notification Email Content

Subject: Your coupon has been cancelled

Recipient
DetailsYamada Taro
Cancelled coupon code
Details70934-AB12CD-500
Amount
Details500 yen off
Issue date
DetailsJanuary 15, 2024
Refunded points
Details500pt
Current balance
Details1,250pt

Footer: Please contact us if you have any questions.

Operational Considerations

Cancellation Permission Management

General staff
PermissionView only
ReasonPrevent mistakes
Store manager
PermissionCan cancel
ReasonNeeded for store response
EC admin
PermissionCan cancel
ReasonNeeded for online response
System admin
PermissionAll
ReasonEmergency response

Recording Cancellation Reasons

Fields to enter at cancellation:

Cancellation reason
ContentCustomer request / Order cancelled / Correction of erroneous issuance / Other
RequiredRequired
Detail memo
ContentFree text
RequiredOptional
Staff name
ContentAuto-recorded
RequiredAuto

Record example: cancelled_by: "Yamada Hanako", cancelled_at: "2024-01-20T15:00:00Z", reason: "Customer request", note: "Said they converted by mistake"

Benefits of This System

For Operations

  • Flexible response to errors and cancellations
  • All operations recorded for audit compliance
  • Permission management prevents fraud

For Customers

  • Peace of mind knowing mistakes can be cancelled
  • Points reliably refunded
  • Status visible through notifications

Related Topics