POST
/
orders
/
{order_id}
/
bags
/
{bag_id}
/
cancel
curl --request POST \
  --url https://sandbox-api.violet.io/v1/orders/{order_id}/bags/{bag_id}/cancel \
  --header 'Content-Type: application/json' \
  --data '{
  "notify_customer": true,
  "reason_code": "CUSTOMER",
  "reason": "Customer requested refund."
}'

Bag cancellation is in beta. Please report any errors to Violet.

Cancel a single Bag from an Order. This action will attempt to cancel the external order in the merchants system. The total amount paid for this Bag will be refunded to the shopper upon successful cancellation.

The Bag must be in a cancellable state. Any Bag’s that have a status of IN_PROGRESS, REFUNDED, or CANCELED cannot be cancelled.

Headers

X-Violet-Token
string
X-Violet-App-Secret
string
X-Violet-App-Id
integer

Path Parameters

order_id
integer
required
bag_id
integer
required

Body

application/json
reason
string

Custom message describing the reason for the cancellation.

Maximum length: 255
reason_code
enum<string>
default: OTHER

Code that best represents the reason for the cancellation.

Available options:
OTHER,
CUSTOMER,
INVENTORY,
FRAUD,
DECLINED
restock_items
boolean
default: true

Should the items be restocked. In most cases this should be true since only unfulfilled orders can be cancelled.

notify_customer
boolean
default: false

Should the customer be notified by the merchants system that a cancellation has occurred.

Response

200 - application/json

Order Refund

order_id
integer
required

ID of the Order being refunded

merchant_id
integer
required

ID of the merchant making the refund

app_id
integer
required

ID of the App that created the Order

transaction_id
integer
required

ID of the Transaction being refunded

gateway_transaction_id
string
required

ID of the Transaction in the Payment Gateway

amount
integer
required

Amount being refunded. In Cents

id
integer
bag_id
integer

ID of the Bag being refunded

merchant_transfer_reversal_amount_usd
integer

Amount being taken back from the associated transfer to the merchant. In Cents

developer_transfer_reversal_amount_usd
integer

Amount being taken back from the associated transfer to the developer. In Cents

reason
string

Reason for refund

reason_code
enum<string>

Reason code for refund

Available options:
OTHER,
CUSTOMER,
INVENTORY,
FRAUD,
DECLINED
refund_currency
string

Currency set for this refund by the external ecom platform

status
enum<string>

Status of the Refund

Available options:
PROCESSING,
COMPLETED,
CANCELED,
PARTIALLY_COMPLETED,
FAILED,
EXTERNAL
skus
object[]

SKUs the refund applies to

date_created
string

Date of creation

date_last_modified
string

Date of last update

external_id
string

ID of the refund on the external commerce platform. This value will only be populated if the external commerce platform supports refund ID's.

errors
object[]

List of errors associated to this refund during processing. This value will only be populated if there are errors during processing

shipping
object | null

Details of any refunded shipping amounts.

tax_amount
integer | null

Tax amount being refunded. In Cents.

Required range: x > 0