MerchantOrderReturn

Order return. Production access (all methods) requires the order manager role. Sandbox access does not.

JSON representation
{
  "orderReturnId": string,
  "orderId": string,
  "merchantOrderId": string,
  "creationDate": string,
  "returnShipments": [
    {
      object (ReturnShipment)
    }
  ],
  "returnItems": [
    {
      object (MerchantOrderReturnItem)
    }
  ],
  "returnPricingInfo": {
    object (ReturnPricingInfo)
  }
}
Fields
orderReturnId

string

Order return ID generated by Google.

orderId

string

Google order ID.

merchantOrderId

string

Merchant defined order ID.

creationDate

string

The date of creation of the return, in ISO 8601 format.

returnShipments[]

object (ReturnShipment)

Shipments of the return.

returnItems[]

object (MerchantOrderReturnItem)

Items of the return.

returnPricingInfo

object (ReturnPricingInfo)

Information about shipping costs.

ReturnShipment

JSON representation
{
  "shipmentId": string,
  "state": string,
  "creationDate": string,
  "shippingDate": string,
  "deliveryDate": string,
  "shipmentTrackingInfos": [
    {
      object (ShipmentTrackingInfo)
    }
  ],
  "returnMethodType": string
}
Fields
shipmentId

string

Shipment ID generated by Google.

state

string

State of the shipment.

Acceptable values are:

  • "completed"
  • "new"
  • "shipped"
  • "undeliverable"
  • "pending"

creationDate

string

The date of creation of the shipment, in ISO 8601 format.

shippingDate

string

The date of shipping of the shipment, in ISO 8601 format.

deliveryDate

string

The date of delivery of the shipment, in ISO 8601 format.

shipmentTrackingInfos[]

object (ShipmentTrackingInfo)

Tracking information of the shipment. One return shipment might be handled by several shipping carriers sequentially.

returnMethodType

string

Type of the return method.

Acceptable values are:

  • "byMail"
  • "contactCustomerSupport"
  • "returnless"
  • "inStore"

ShipmentTrackingInfo

JSON representation
{
  "carrier": string,
  "trackingNumber": string
}
Fields
carrier

string

The shipping carrier that handles the package.

Acceptable values are:

  • "boxtal"
  • "bpost"
  • "chronopost"
  • "colisPrive"
  • "colissimo"
  • "cxt"
  • "deliv"
  • "dhl"
  • "dpd"
  • "dynamex"
  • "eCourier"
  • "easypost"
  • "efw"
  • "fedex"
  • "fedexSmartpost"
  • "geodis"
  • "gls"
  • "googleCourier"
  • "gsx"
  • "jdLogistics"
  • "laPoste"
  • "lasership"
  • "manual"
  • "mpx"
  • "onTrac"
  • "other"
  • "tnt"
  • "uds"
  • "ups"
  • "usps"

trackingNumber

string

The tracking number for the package.

MerchantOrderReturnItem

JSON representation
{
  "itemId": string,
  "returnShipmentIds": [
    string
  ],
  "product": {
    object (OrderLineItemProduct)
  },
  "state": string,
  "customerReturnReason": {
    object (CustomerReturnReason)
  },
  "merchantReturnReason": {
    object (RefundReason)
  },
  "merchantRejectionReason": {
    object (MerchantRejectionReason)
  },
  "shipmentGroupId": string,
  "shipmentUnitId": string,
  "refundableAmount": {
    object (MonetaryAmount)
  },
  "returnItemId": string
}
Fields
itemId

string

Product level item ID. If the returned items are of the same product, they will have the same ID.

returnShipmentIds[]

string

IDs of the return shipments that this return item belongs to.

product

object (OrderLineItemProduct)

Product data from the time of the order placement.

state

string

State of the item.

Acceptable values are:

  • "canceled"
  • "new"
  • "received"
  • "refunded"
  • "rejected"

customerReturnReason

object (CustomerReturnReason)

The reason that the customer chooses to return an item.

merchantReturnReason

object (RefundReason)

The reason that merchant chooses to accept a return item.

merchantRejectionReason

object (MerchantRejectionReason)

The reason that the merchant chose to reject an item return.

shipmentGroupId

string

ID of the original shipment group. Provided for shipments with invoice support.

shipmentUnitId

string

ID of the shipment unit assigned by the merchant. Provided for shipments with invoice support.

refundableAmount

object (MonetaryAmount)

Maximum amount that can be refunded for this return item.

returnItemId

string

Unit level ID for the return item. Different units of the same product will have different IDs.

CustomerReturnReason

JSON representation
{
  "reasonCode": string,
  "description": string
}
Fields
reasonCode

string

Code of the return reason.

Acceptable values are:

  • "betterPriceFound"
  • "changedMind"
  • "damagedOrDefectiveItem"
  • "didNotMatchDescription"
  • "doesNotFit"
  • "expiredItem"
  • "incorrectItemReceived"
  • "noLongerNeeded"
  • "notSpecified"
  • "orderedWrongItem"
  • "other"
  • "qualityNotExpected"
  • "receivedTooLate"
  • "undeliverable"

description

string

Description of the reason.

RefundReason

JSON representation
{
  "reasonCode": string,
  "description": string
}
Fields
reasonCode

string

Code of the refund reason.

Acceptable values are:

  • "adjustment"
  • "autoPostInternal"
  • "autoPostInvalidBillingAddress"
  • "autoPostNoInventory"
  • "autoPostPriceError"
  • "autoPostUndeliverableShippingAddress"
  • "couponAbuse"
  • "courtesyAdjustment"
  • "customerCanceled"
  • "customerDiscretionaryReturn"
  • "customerInitiatedMerchantCancel"
  • "customerSupportRequested"
  • "deliveredLateByCarrier"
  • "deliveredTooLate"
  • "expiredItem"
  • "failToPushOrderGoogleError"
  • "failToPushOrderMerchantError"
  • "failToPushOrderMerchantFulfillmentError"
  • "failToPushOrderToMerchant"
  • "failToPushOrderToMerchantOutOfStock"
  • "feeAdjustment"
  • "invalidCoupon"
  • "lateShipmentCredit"
  • "malformedShippingAddress"
  • "merchantDidNotShipOnTime"
  • "noInventory"
  • "orderTimeout"
  • "other"
  • "paymentAbuse"
  • "paymentDeclined"
  • "priceAdjustment"
  • "priceError"
  • "productArrivedDamaged"
  • "productNotAsDescribed"
  • "promoReallocation"
  • "qualityNotAsExpected"
  • "returnRefundAbuse"
  • "shippingCostAdjustment"
  • "shippingPriceError"
  • "taxAdjustment"
  • "taxError"
  • "undeliverableShippingAddress"
  • "unsupportedPoBoxAddress"
  • "wrongProductShipped"

description

string

Description of the reason.

MerchantRejectionReason

JSON representation
{
  "reasonCode": string,
  "description": string
}
Fields
reasonCode

string

Code of the rejection reason.

description

string

Description of the reason.

ReturnPricingInfo

JSON representation
{
  "refundableItemsTotalAmount": {
    object (MonetaryAmount)
  },
  "refundableShippingAmount": {
    object (MonetaryAmount)
  },
  "chargeReturnShippingFee": boolean,
  "maxReturnShippingFee": {
    object (MonetaryAmount)
  },
  "totalRefundedAmount": {
    object (MonetaryAmount)
  }
}
Fields
refundableItemsTotalAmount

object (MonetaryAmount)

Total amount that can be refunded for the items in this return. It represents the total amount received by the merchant for the items, after applying merchant coupons.

refundableShippingAmount

object (MonetaryAmount)

Maximum amount that can be refunded for the original shipping fee.

chargeReturnShippingFee

boolean

Default option for whether merchant should charge the customer for return shipping costs, based on customer selected return reason and merchant's return policy for the items being returned.

maxReturnShippingFee

object (MonetaryAmount)

Maximum return shipping costs that may be charged to the customer depending on merchant's assessment of the return reason and the merchant's return policy for the items being returned.

totalRefundedAmount

object (MonetaryAmount)

Total amount already refunded by the merchant. It includes all types of refunds (items, shipping, etc.) Not provided if no refund has been applied yet.