components:
headers:
xFabricRequestIdResponseHeader:
description: Unique request ID
example: 263e731c-45c8-11ed-b878-0242ac120002
required: false
schema:
type: string
parameters:
xFabricChannelId:
description: >-
x-fabric-channel-id identifies the sales channel where the API request
is being made; primarily for multichannel use cases. The channel ids are
12 corresponding to US and 13 corresponding to Canada. The default
channel id is 12. This field is required.
example: '12'
in: header
name: x-fabric-channel-id
required: true
schema:
type: string
xFabricChannelIdOptional:
description: >-
x-fabric-channel-id identifies the sales channel through which the API
request is being made; primarily for multichannel use cases. It is an
optional field. The default US channel is 12 while the default Canada
channel is 13.
example: '12'
in: header
name: x-fabric-channel-id
required: false
schema:
type: string
xFabricChannelIds:
description: >-
x-fabric-channel-id identifies the sales channel where the API request
is being made; primarily for multichannel use cases. The channel ids are
12 corresponding to US and 13 corresponding to Canada. The default
channel id is 12. This field is required. A comma separated list of
sales channel IDs. This comma separated list of sales channel IDs are
required when using multiple channels.
example: 12, 13, 16
in: header
name: x-fabric-channel-ids
required: false
schema:
type: string
xFabricChannelIdsOptional:
description: >-
x-fabric-channel-id identifies the sales channel through which the API
request is being made; primarily for multichannel use cases. It is an
optional field. The default US channel is 12 while the default Canada
channel is 13. This field is optional. **Note:** Use `xFabricChannelIds`
for multiple channels, and `xFabricChannelId` for a single channel.
example: 12, 13, 16
in: header
name: x-fabric-channel-ids
required: false
schema:
type: string
xFabricRequestId:
description: Unique request ID
example: 263e731c-45c8-11ed-b878-0242ac120002
in: header
name: x-fabric-request-id
required: false
schema:
type: string
xFabricTenantId:
description: >-
A header used by fabric to identify the tenant making the request. You
must include tenant id in the authentication header for an API request
to access any of fabric’s endpoints. You can retrieve the tenant id ,
which is also called account id, from
[Copilot](/v3/platform/settings/account-details/getting-the-account-id).
This header is required.
example: 5f328bf0b5f328bf0b5f328b
in: header
name: x-fabric-tenant-id
required: true
schema:
type: string
schemas:
acknowledgePackageTrackingRequest:
description: Acknowledgement for package tracking
properties:
attributes:
additionalProperties:
description: Additional custom attribute mappings.
type: object
description: Custom attribute mappings.
type: object
eventType:
description: Event type for which acknowledgement is received
enum:
- ORDER_CREATE_IN_PTS
- ORDER_CANCELLED_IN_PTS
- SHIPMENT_CREATE_IN_PTS
- SHIPMENT_CANCELLED_IN_PTS
- TRANSFER_CREATE_IN_PTS
- TRANSFER_CANCELLED_IN_PTS
- TRANSFER_SHIPMENT_CREATE_IN_PTS
- TRANSFER_SHIPMENT_CANCELLED_IN_PTS
example: ORDER_CREATE_IN_PTS
type: string
required:
- eventType
type: object
addPaymentLogRequest:
type: object
description: Request to add a payment log entry for a specific payment in an order
properties:
type:
type: string
description: Transaction type such as CAPTURE, VOID, REFUND, AUTH, REAUTH, etc.
example: CAPTURE
amount:
type: number
description: Transaction amount for the payment operation
example: 60
amountInCurrencies:
type: array
items:
$ref: '#/components/schemas/amountInCurrencyResource'
paymentId:
type: string
description: >-
Merchant-provided unique identifier for a payment based on payment
connector
example: 820180910982102800
paymentLogId:
type: string
description: ID generated to uniquely identify the payment log
example: 671faad5-c530-4361-94a8-6b81614dfe30
status:
type: string
description: Payment status such as 200, 400, etc.
example: 200
data:
$ref: '#/components/schemas/paymentDetails'
description: Payment details object containing response information
attributes:
type: object
description: Merchant-defined custom attributes
example:
key: value
address:
description: Address details
properties:
addressLine1:
description: Address line 1
example: 123 Main St.
type: string
addressLine2:
description: Address line 2
example: Suite 100
type: string
addressLine3:
description: Address line 3
example: Seventh floor
type: string
addressLine4:
description: Address line 4
example: 'Attention: Pat E. Kake'
type: string
city:
description: City name
example: Seattle
type: string
countryCode:
description: ISO 3166-1 alpha-2 based country code
example: US
type: string
email:
description: Contact person's email
example: test@example.com
type: string
latitude:
description: >-
Address latitude, used with `longitude` to specify the address
location. Decimal degrees format; negative is degrees
South.**Note:**Value must be between -90 and 90, both inclusive.
example: 47.6205
format: double
type: number
longitude:
description: >-
Address longitude, used with `latitude` to specify the address
location. Decimal degrees format; negative is degrees South.
**Note:**Value must be between -180 and 180, both inclusive.
example: -122.3493
format: double
type: number
name:
$ref: '#/components/schemas/orderContactName'
phone:
$ref: '#/components/schemas/orderContactPhone'
postalCode:
description: Postal or ZIP code
example: '98121'
type: string
region:
description: Region or state
example: WA
type: string
type:
description: Address type
example: Home
type: string
required:
- addressLine1
- city
- countryCode
- latitude
- longitude
- postalCode
- region
- type
type: object
adjustmentDetail:
description: Price adjustment details object.
properties:
adjustmentCounter:
description: Sequential or incremental counter for price adjustment
example: 1
format: int32
type: integer
amount:
description: Adjustment amount
example: 2.4
format: double
type: number
amountInCurrencies:
description: >-
The adjustment amount, itemized by each currency used within the
order.
items:
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info in key-value pairs.
example:
number: XlQZTmFDFtPFGMxJP6oiAqN3vo+qKZ
type: object
cancelQuantity:
description: Cancel quantity
example: 2
format: int32
type: integer
invoiceQuantity:
description: Total quantity invoiced
example: 10
format: int32
type: integer
notes:
description: Placeholder for additional info, if any.
example: Any additional info
type: string
quantity:
description: Adjustment quantity
example: 2
format: int32
type: integer
reasonCode:
description: Reason code
example: RFC
type: string
returnQuantity:
default: 0
description: Returned quantity of given item
example: 1
format: int32
type: integer
subReasonCode:
description: Subreason code
example: Late shipping
type: string
type: object
amountInCurrency:
description: Amount in currency object details.
properties:
amount:
description: The amount displayed in the primary currency.
example: 123.45
format: double
type: number
currency:
description: Currency in ISO-4217
example: USD
type: string
group:
description: >-
A unique identifier for currencies. All calculations and invoicing
are based on this identifier. For example, the `Shopper` group uses
USD, while the `Retailer` group uses EUR.
example: SHOPPER
type: string
required:
- currency
- group
type: object
amountInCurrencyResource:
description: Amount in currency object details.
properties:
amount:
description: The amount displayed in the primary currency.
example: 123.45
format: double
type: number
currency:
description: Currency in ISO-4217
example: USD
type: string
group:
description: >-
A unique identifier for currencies. All calculations and invoicing
are based on this identifier. For example, the `Shopper` group uses
USD, while the `Retailer` group uses EUR.
example: SHOPPER
type: string
required:
- currency
- group
type: object
apiResponse:
description: Response message
properties:
message:
description: Response message
example: OK
type: string
type: object
appeasementEligibilityItemResource:
description: >-
An object that contains properties and information on an item's
eligibility for appeasement.
properties:
lineItemId:
description: The system generated item sequence ID.
example: 6f25bf01-ae4e-4e7f-96b9-0579a40a1a7d
type: string
quantity:
description: The eligible quantity for appeasement.
example: 2
format: int32
type: integer
refundAmount:
description: The maximum eligible refund amount for an appeasement item.
example: 20.5
type: number
sku:
description: The unique identifier of item. Stock Keeping Unit (SKU).
example: P1234
type: string
refundAmountInCurrencies:
type: array
description: >
A list of refund amounts, each represented in a specific currency.
Each item includes the monetary value and its associated currency
code,
following the structure defined in the `amountInCurrencyResource`
schema.
This allows multi-currency refunds to be accurately represented and
processed.
items:
$ref: '#/components/schemas/amountInCurrencyResource'
type: object
appeasementEligibilityResponse:
description: >-
A response object that contains properties and information on an item's
eligibility for appeasement.
properties:
eligibleItems:
description: >-
An array of containing an item's eligibility for returns,
cancellations, or exchanges.
items:
$ref: '#/components/schemas/appeasementEligibilityItemResource'
type: array
eligibleReasonCodes:
description: An array containing the reason codes for the returns.
items:
$ref: '#/components/schemas/reasonCodeAndDescription'
type: array
orderId:
description: The fabric system generated 24-character order ID.
example: 62f3982438bcab1951be0a19
type: string
orderNumber:
description: A unique order number.
example: '309019176'
type: string
period:
description: >-
The return, exchange, or cancellation time window set in your
policy.
example: 30D00H00M
type: string
policyType:
description: >-
The policy type that determines the eligibility of an exchange,
return, appeasement or cancellation. If omitted, the default policy
is used.
example: Company Policy 2023
type: string
remainingRefundableAmount:
description: The order's remaining refundable amount excluding items refunds.
example: 30.5
type: number
remainingRefundableAmountInCurrencies:
items:
$ref: '#/components/schemas/amountInCurrency'
type: array
totalRefundableAmount:
description: The total refundable amount for the order.
example: 130.7
type: number
totalRefundableAmountInCurrencies:
items:
$ref: '#/components/schemas/amountInCurrency'
type: array
type: object
appeasementResponse:
description: Appeasement info
properties:
orderNumber:
description: >-
Merchant-defined order identifier. If omitted, this is generated by
fabric's sequence generator using Configuration service
example: '12'
type: string
totalAmountRefunded:
description: Total refunded amount
example: 25.5
format: double
type: number
totalAmountRefundedInCurrencies:
description: >
The total amount that has been refunded, represented in one or more
currencies.
Each entry provides the total refunded value and its corresponding
currency code,
using the structure defined in the `amountInCurrency` schema.
This field enables tracking of cumulative refunds across multiple
currencies.
items:
$ref: '#/components/schemas/amountInCurrency'
type: array
type: object
auditLog:
description: Audit log to capture change history
properties:
amount:
description: Amount for which audit is done
example: 2.4
format: double
type: number
attributes:
description: Custom attributes
example:
key: value
type: object
auditId:
description: System-generated audit ID (UUID format)
example: a05b72dc-78d8-4ea4-90fc-2fe6a1fe1111
type: string
auditType:
description: Audit type such as cancel, return, etc.
example: CANCEL
type: string
auditedAt:
description: Audit time (UTC)
example: '2023-03-12T09:24:54.804Z'
format: date-time
type: string
employeeId:
description: Employee (ID or name) who made the last update
example: '6227'
type: string
isSuccess:
default: false
description: >-
true: Update operation (any update to the service) is successful
false: Update operation has failed
example: true
type: boolean
lineItemId:
description: >-
Merchant-defined unique identifier for each item in an order. When
omitted, fabric will generate it during order creation, in UUID
format.
example: b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569
type: string
lineItemNumber:
description: Item identifier
example: 1
format: int32
type: integer
note:
description: Additional info, if any
example: Note
type: string
paymentToken:
$ref: '#/components/schemas/orderPaymentToken'
policyCode:
description: >-
Configurable in Copilot as per requirement. If omitted, default
policy is used.
example: POS
type: string
quantity:
description: Ordered quantity of given item
example: 1
format: int32
type: integer
reasonCode:
description: Merchant-defined reason code, varies from merchant to merchant
example: Scratched item
type: string
sku:
description: Stock keeping unit (SKU), unique item identifier
example: SKU0023
type: string
source:
description: >-
Merchant-defined source from where the update was initiated. There
are no predefined values; possible values could be Customer Service
Representative (CSR), Point-of-Sale (POS), etc.
example: POS
type: string
subReasonCode:
description: >-
Merchant-defined sub reason code; provides more clarity to audit
reason
example: Scratched item
type: string
updatedFields:
description: Audit log for change history
items:
$ref: '#/components/schemas/orderAuditLogUpdatedField'
type: array
type: object
cancellationItemResource:
description: >-
A resource used to capture detailed cancellation information at the item
level.
properties:
amount:
description: Amount
example: '-20.'
format: double
type: number
amountInCurrencies:
description: >-
The amount associated with the cancellation, itemized by each
currency used within the original order.
items:
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
attributes:
description: Custom attributes
type: object
cancellationCounter:
description: An identifier used for cancellations.
example: 1
type: string
invoicedAmount:
description: Invoiced amount
example: '-20.'
format: double
type: number
invoicedAmountInCurrencies:
items:
description: >-
The invoiced amount, itemized by each currency used within a
specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
payments:
items:
$ref: '#/components/schemas/paymentReference'
type: array
quantity:
description: The total quantity of an item for this cancellation request.
example: 10
format: int32
type: integer
reasonCode:
description: Reason code
example: Order line cancel
type: string
refunds:
items:
$ref: '#/components/schemas/refundDetailResource'
type: array
source:
description: >-
An optional field used to determine the source that initiated the
API request.
example: CSR
type: string
status:
description: Cancellation status
enum:
- PROCESSING
- COMPLETED
- REJECTED
example: PROCESSING
type: string
subReasonCode:
description: Sub reason code
example: Late shipping
type: string
type: object
cancellationResource:
description: Cancellation resource
properties:
amount:
description: Amount
example: '-20.'
format: double
type: number
amountInCurrencies:
items:
description: >-
The total amount, itemized by each currency used within a specific
order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
attributes:
description: Custom attributes
example:
number: XlQZTmFDFtPFGMxJP6oiAqN3vo+qKZ
type: object
cancellationCounter:
description: An identifier used for cancellations.
example: 1
type: string
invoicedAmount:
description: Invoiced amount
example: '-20.'
format: double
type: number
invoicedAmountInCurrencies:
items:
description: >-
The invoiced amount will be displayed in all currencies used for
the order. If only a single currency was used, then only that
currency will be shown.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
payments:
items:
$ref: '#/components/schemas/paymentReference'
type: array
reasonCode:
description: Reason code
example: Order Line Cancel
type: string
refunds:
items:
$ref: '#/components/schemas/refundDetailResource'
type: array
source:
description: >-
An optional field used to determine the source that initiated the
API request.
example: CSR
type: string
status:
description: Cancellation Status
enum:
- PROCESSING
- COMPLETED
- REJECTED
example: PROCESSING
type: string
subReasonCode:
description: Sub reason code
example: Late shipping
type: string
type: object
createOrderRequest:
description: The object containing details related to order creation.
properties:
adjustmentTotal:
description: Total price adjustments for all items of the order.
example: 123.45
format: double
type: number
adjustmentTotalInCurrencies:
items:
description: >-
The total adjustments made to the prices of all items in an order,
itemized by each currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
adjustments:
description: >-
Price adjustments are made to modify product prices during order
creation, aiming to incentivize shoppers by offering discounts and
promotions based on specified criteria. Price adjustments are also
made to apply coupons that the shopper has used.
items:
$ref: '#/components/schemas/adjustmentDetail'
type: array
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
example:
fraudCheckStatus: UPDATED
fraudStatus: FRAUD_PASS
type: object
cartId:
description: >-
Unique identifier of a cart, either from fabric Cart or an external
cart service. It is used for linking an order to a specific cart. If
available, it is also used for inventory reservation from cart
workflow.
example: b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569
type: string
currencies:
$ref: '#/components/schemas/currencies'
description: The supported currency groups you defined.
currency:
description: Three-letter currency code as defined by ISO-4217
example: USD
type: string
customer:
$ref: '#/components/schemas/invoiceCustomer'
discounts:
description: Discounts
items:
$ref: '#/components/schemas/orderDiscountRequest'
type: array
employeeId:
description: Employee (ID or name) who initiated the order creation request
example: 62272e917b12209e68751d94
type: string
feeTotal:
description: Total item fee = `orderedQuantity` * Item Fee Total
example: 12.34
format: double
type: number
feeTotalInCurrencies:
items:
description: >-
The total fee for an item, calculated as the `orderedQuantity`
multiplied by the `Item Fee Total`, itemized by each currency used
within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
fees:
description: Fees
items:
$ref: '#/components/schemas/orderFeeDetail'
type: array
items:
description: Items
items:
$ref: '#/components/schemas/orderItemRequest'
maxItems: 2147483647
minItems: 1
type: array
notes:
description: >-
Additional info, if any. To be used by customer service
representative (CSR) only
items:
$ref: '#/components/schemas/orderNote'
type: array
orderDiscount:
description: Order discount = `summationOfAll(itemDiscountTotal)`
example: 1.23
format: double
type: number
orderDiscountInCurrencies:
items:
description: >-
The total discount applied to the order, calculated as the sum of
all `itemDiscountTotal` values, itemized by each currency used
within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
orderNumber:
description: >-
Merchant-defined order identifier. If omitted, this is generated by
fabric's sequence generator using Configuration service.
example: '309019176'
type: string
orderExternalId:
type: string
description: >
A merchant-defined external order identifier.
This field is optional and can be used to reference the order in
external
systems such as an ERP, OMS, or CRM.
example: 191763090_O1231
orderSubtotal:
description: Recalculated order subtotal = `summationOfAll(itemSubTotal)`
example: 123.45
format: double
type: number
orderSubtotalInCurrencies:
items:
description: >-
The updated subtotal for the entire order, calculated as the sum
of all `itemSubTotal` values, itemized by each currency used
within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
orderTotal:
description: >-
Total amount to be charged for the order = `orderSubTotal` -
`orderDiscountTotal` + `orderFeeTotal` + `orderTaxTotal`.
example: 146.9
format: double
type: number
orderTotalInCurrencies:
items:
description: >-
The total amount to be charged for an order, calculated as
`orderSubTotal` - `orderDiscountTotal` + `orderFeeTotal` +
`orderTaxTotal`, itemized by each currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
orderedAt:
description: >-
Merchant-defined order creation time in UTC. It is mandatory in the
request body of Create Order endpoint - `POST /orders`.
example: '2022-05-12T09:30:31.198Z'
format: date-time
type: string
payments:
description: Payments
items:
$ref: '#/components/schemas/orderPaymentRequest'
type: array
retail:
$ref: '#/components/schemas/orderRetail'
shipInfo:
description: Shipping info
items:
$ref: '#/components/schemas/orderShipInfo'
maxItems: 2147483647
minItems: 1
type: array
statusCode:
description: Status code. Primarily used for Point-of-Sale (POS) orders.
example: ORDER_CREATED
type: string
statusDescription:
description: Description corresponding to `statusCode`
example: Order Created
type: string
subtype:
description: Order subtype, for additional classification
enum:
- IOS
- ANDROID
- INTERNATIONAL
example: INTERNATIONAL
type: string
taxTotal:
description: >-
Total tax on order =
`summationOfAll(itemTaxTotal)+summationOfAll(tax[].value)`
example: 12.34
format: double
type: number
taxTotalInCurrencies:
items:
description: >-
The total tax on an order, calculated as the sum of all
`itemTaxTotal` values and all `tax[].value` values, itemized by
each currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
type:
description: >-
Order type. It is critical for order life cycle as it indicates the
workflow that varies with the type. For example, Storefront orders
have different workflows than Call Center orders. fabric Orders
service offers standard configurations for Storefront, Call Center,
Point of Sale, iOS, Android, and International.
enum:
- WEB
- CSC
- MOBILE_APP
- POS
example: WEB
type: string
requestContext:
$ref: '#/components/schemas/requestReferenceContextResource'
description: Request reference context information
required:
- items
- orderNumber
- statusCode
type: object
creditsEligibilityResponse:
description: Credits eligibility model
properties:
description:
description: Description provided while requesting credits (for reference)
example: Policy used to add credits
type: string
eligibleReasonCodes:
description: Reason codes to support credits request
items:
$ref: '#/components/schemas/reasonCodeAndDescription'
type: array
orderId:
description: 24-character system-generated order ID
example: 62f3982438bcab1951be0a19
type: string
policyName:
description: Merchant-given policy name.
example: Credits policy
type: string
policyType:
description: Policy type used to check credits eligibility
example: credits
type: string
type: object
creditsRequest:
description: Request for credits
properties:
amount:
description: Credits amount
example: 21.5
format: double
type: number
amountInCurrencies:
description: >
A list of amounts represented in different currencies.
Each item includes a monetary value and its corresponding currency
code,
following the structure defined in the `amountInCurrency` schema.
This field is used to represent multi-currency totals or balances.
items:
$ref: '#/components/schemas/amountInCurrency'
type: array
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info in key-value pairs.
example:
giftCardNumber: XlQZTmFDFtPFGMxJP6oiAqN3vo+qKZ
type: object
currency:
description: Three-letter currency code as defined by ISO-4217
example: USD
type: string
employeeId:
description: Employee (ID or name) who initiated a the credits request
example: '12312232'
type: string
note:
description: Note
example: Credit request initiated
type: string
paymentCounter:
description: >-
A sequential or incremental counter associated with a payment for an
order. Applicable in refund scenarios to identify the specific
payment for refund.
example: 1
format: int32
type: integer
policyCode:
description: >-
Merchant-defined policy code, varies from merchant to merchant. If
omitted, the default policy is used.
example: RC1
type: string
reasonCode:
description: Reason code
example: EC
type: string
source:
description: Source of credits request
example: CSR
type: string
subReasonCode:
description: Subreason code
example: ACC
type: string
type:
description: Credit type. Currently, supports only Gift Card
enum:
- GIFT_CARD
example: GIFT_CARD
type: string
required:
- amount
- currency
- reasonCode
- source
- type
type: object
creditsResponse:
description: Credit response
properties:
amount:
description: Credits amount
example: 21.5
format: double
type: number
amountInCurrencies:
description: >
A list of amounts represented in different currencies.
Each item includes a monetary value and its corresponding currency
code,
following the structure defined in the `amountInCurrency` schema.
This field is used to represent multi-currency totals or balances.
items:
$ref: '#/components/schemas/amountInCurrency'
type: array
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info in key-value pairs.
example:
giftCardNumber: XlQZTmFDFtPFGMxJP6oiAqN3vo+qKZ
type: object
createdAt:
description: Credits creation time, in UTC format
example: '2022-07-11T15:03:14.642Z'
format: date-time
type: string
creditId:
description: Unique UUID of credit
example: a05b72dc-78d8-4ea4-90fc-2fe6a1fe1111
type: string
currency:
description: Three-letter currency code as defined by ISO-4217
example: USD
type: string
employeeId:
description: Employee (ID or name) who initiated a the credits request
example: '12312232'
type: string
note:
description: Note
example: Credit request initiated
type: string
paymentCounter:
description: >-
A sequential or incremental counter associated with a payment for an
order. Applicable in refund scenarios to identify the specific
payment for refund.
example: 1
format: int32
type: integer
policyCode:
description: >-
Merchant-defined policy code, varies from merchant to merchant. If
omitted, the default policy is used.
example: RC1
type: string
reasonCode:
description: Reason code
example: EC
type: string
source:
description: Source of credits request
example: CSR
type: string
statusCode:
description: Credit status
enum:
- PENDING
- CONFIRMED
- FAILED
- CANCELED
example: PENDING
type: string
subReasonCode:
description: Subreason code
example: ACC
type: string
type:
description: Credit type. Currently, supports only Gift Card
enum:
- GIFT_CARD
example: GIFT_CARD
type: string
updatedAt:
description: Time of last update to credits, in UTC format.
example: '2022-07-11T15:03:14.642Z'
format: date-time
type: string
required:
- amount
- currency
- reasonCode
- source
- type
type: object
currencies:
description: currencies
properties:
groups:
items:
$ref: '#/components/schemas/currencyGroup'
type: array
primaryCurrency:
description: Primary currency for order
example: SHOPPER
type: string
type: object
currencyGroup:
description: CurrencyGroup object details.
properties:
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
example:
fxId: ID123
type: object
conversionRate:
description: conversion rate
example: 1
format: double
type: number
currency:
description: Currency in ISO-4217
example: USD
type: string
group:
description: >-
A unique identifier for currencies. All calculations and invoicing
are based on this identifier. For example, the `Shopper` group uses
USD, while the `Retailer` group uses EUR.
example: SHOPPER
type: string
required:
- currency
- group
type: object
customerResponse:
description: Response for customer update request
properties:
failedCount:
description: Failed count
example: 2
format: int32
type: integer
failedOrderIds:
description: OrderIds of orders for which update failed
example:
- 123k4h123k
- 123k4h124k
items:
description: OrderIds of orders for which update failed
example: '["123k4h123k","123k4h124k"]'
type: string
type: array
successCount:
description: Success count
example: 18
format: int32
type: integer
totalRecordCount:
description: Total record count
example: 10
format: int32
type: integer
type: object
eligibilityResponse:
description: Eligibility details object.
properties:
eligibleReasonCodes:
description: Reason codes for returns
items:
$ref: '#/components/schemas/reasonCodeAndDescription'
type: array
fees:
description: Fee details
items:
$ref: '#/components/schemas/policyFeeResource'
type: array
items:
description: Item's eligibility for return, cancellation, or exchange
items:
$ref: '#/components/schemas/itemEligibilityResource'
type: array
orderId:
description: 24-character system-generated order ID
example: 62f3982438bcab1951be0a19
type: string
period:
description: Return, exchange or cancellation window as per merchant policy
example: 30D00H00M
type: string
policyType:
description: >-
Policy type that determines eligibility of exchange, return, or
cancellation. If omitted, the default policy is considered.
example: Company Policy 2023
type: string
type: object
errorResponse:
description: Error response
properties:
errors:
description: Errors
items:
$ref: '#/components/schemas/errorResponse'
type: array
message:
description: Error message
example: Bad request
type: string
type:
description: Error type
example: CLIENT_ERROR
type: string
type: object
erroredField:
description: >-
An object containing information on error fields, error messages, and
the amended status.
properties:
amended:
description: A boolean that signifies if the error has been amended.
example: false
type: boolean
errorMessage:
description: The reason the error occurred.
example: Invalid email address
type: string
fieldName:
description: The name of the field where the error occurred.
example: shipInfo.shipToAddress.email
type: string
required:
- amended
- errorMessage
- fieldName
type: object
fraudCancelRequest:
description: Fraud cancellation
properties:
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
example:
salesRepId: '123456789'
type: object
employeeId:
description: >-
Employee (ID or name) who initiated the request of fraud
cancellation
example: '12312232'
type: string
note:
description: Additional info, if any
example: Fraud cancellation
type: string
reasonCode:
description: Merchant-defined reason code for fraud cancellation
example: Fraudulent order
type: string
subReasonCode:
description: >-
Subreason code for fraud cancellation, for another layer of
classification
example: Impersonation
type: string
required:
- reasonCode
type: object
invoiceCustomer:
description: Invoice customer
properties:
accountId:
description: >-
Customer's loyalty account ID or external identifier that is used to
track their loyalty program activity and rewards earned.
example: 62272e917b12209e68751d94
type: string
company:
description: Shopper's company name. This may be used for company discounts.
example: Demo Inc
type: string
email:
description: Contact person's email
example: test@example.com
type: string
employeeId:
description: Employee (ID or name) who initiated an update request
example: 62272e917b12209e68751d94
type: string
name:
$ref: '#/components/schemas/orderContactName'
phone:
$ref: '#/components/schemas/orderContactPhone'
userId:
description: >-
Identifier of the logged in user who initiated the request. This
could be from either fabric Identity service or an external Identity
service.
example: 62272e917b12209e68751d94
type: string
type: object
itemEligibilityResource:
description: Item's eligibility for return, cancellation, or exchange
properties:
eligibleQuantity:
description: >-
Quantity of the given item eligible for return, cancellation, or
exchange
example: 10
format: int32
type: integer
isEligible:
description: >-
true: Item is eligible for return or exchange false: Item is not
eligible for return or exchange
example: true
type: boolean
lineItemId:
description: >-
Merchant-defined unique identifier for each item in an order. When
omitted, fabric will generate it during order creation, in UUID
format.
example: 62f3dfc438bcab1951be0a19
type: string
sku:
description: Stock keeping unit (SKU), unique identifier of item
example: P1234
type: string
type: object
itemFeeDetails:
description: Item fees object containing item fee details.
properties:
amount:
description: Tax amount
example: 34.56
format: double
type: number
amountInCurrencies:
items:
description: >-
The total tax amount, itemized by each currency used within the
order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
attributes:
additionalProperties:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
type: object
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
type: object
currency:
default: USD
description: Three-letter currency code as defined by ISO-4217
example: USD
type: string
invoiceQuantity:
description: >-
Total quantity invoiced. If customer placed order for 10 quantity of
an item and only 2 got shipped then 2 is the `invoiceQuantity`
example: 10
format: int32
type: integer
name:
description: Applied tax name
example: STATE
type: string
quantity:
description: Total number of items in the order
example: 12
format: int32
type: integer
refundAmount:
description: Total refund amount
example: 21.5
format: double
type: number
refundAmountInCurrencies:
type: array
items:
$ref: '#/components/schemas/amountInCurrencyResource'
taxCode:
description: Tax code applied
example: FR01
type: string
type: object
itemFulfillmentResource:
type: object
description: Item fulfillment model
properties:
isFulfillable:
type: boolean
default: 'true'
description: >-
Indicates whether the item can be fulfilled based on its current
state and configuration.
example: true
isInventoryManaged:
type: boolean
default: 'true'
description: >-
To identify if an inventory is managed or not for the respective
item
example: true
locationNumber:
type: string
description: Location number
example: 123
shipFromAddress:
$ref: '#/components/schemas/address'
trackingDetails:
$ref: '#/components/schemas/trackingDetailsResource'
description: Tracking details for the shipment
attributes:
type: object
additionalProperties:
type: object
description: Custom attributes for this item
example:
attribute1: value
markItemsAsShippedRequest:
type: object
description: Request to mark items as shipped directly on an order
properties:
shippingDetails:
$ref: >-
#/components/schemas/markItemsAsShippedRequestShippingDetailsResource
description: Details for the shipment
items:
type: array
items:
$ref: '#/components/schemas/markItemsAsShippedRequestShippedItemResource'
required:
- items
markItemsAsShippedRequestShippedItemResource:
type: object
description: Item to be marked as shipped
properties:
lineItemId:
type: string
description: Line item ID
example: 18b09fca-9374-4250-ab7a-8153ec723089
attributes:
type: object
additionalProperties:
type: object
description: Custom attributes for this item
example:
attribute1: value
required:
- lineItemId
markItemsAsShippedRequestShippingDetailsResource:
type: object
description: Shipping details
properties:
locationNumber:
type: string
description: Location number for the shipment
example: 123A
shipFromAddress:
$ref: '#/components/schemas/address'
description: Ship from address information
trackingDetails:
$ref: '#/components/schemas/trackingDetailsResource'
description: Tracking details for the shipment
orderAppeasementDetail:
description: The order appeasement details object containing appeasement details.
properties:
amount:
description: >-
Merchant-defined appeasement amount, which should not exceed
(`charged amount` - `already refunded amount`).
example: 34.56
format: double
type: number
amountInCurrencies:
items:
description: >-
The appeasement amount specified by the merchant, which must not
be greater than the difference between the charged amount and any
amounts already refunded, itemized by each currency used within
the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
appeasementCounter:
description: >-
Sequential or incremental counter for appeasement. Used for keeping
track of duplicates in the request. If omitted in the request, it is
automatically generated and will not be used to check duplicates.
Multiple appeasement calls for the same order can cause repetition
of appeasement counter and may cause the request to be rejected
completely.
example: 1
format: int32
type: integer
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info in key: value pairs
example:
number: XlQZTmFDFtPFGMxJP6oiAqN3vo+qKZ
type: object
invoicedAmount:
description: >-
System-generated amount from Invoice service based on requested
`amount`
example: 34.56
format: double
type: number
invoicedAmountInCurrencies:
items:
description: >-
System-generated amount from Invoice service based on requested
`amount` in all currencies used by an order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
payments:
items:
$ref: '#/components/schemas/orderAppeasementPaymentInfo'
type: array
reasonCode:
description: >-
Merchant-defined appeasement reason code; varies from merchant to
merchant.
example: Incorrect Item
type: string
refunds:
items:
$ref: '#/components/schemas/refundDetailResource'
type: array
source:
description: >-
An optional field used to determine the source that initiated the
API request.
example: CSR
type: string
subReasonCode:
description: Subreason code for appeasement, for another layer of classification
example: Late shipping
type: string
type: object
orderAppeasementPaymentInfo:
description: Order appeasement payment info
properties:
paymentCounter:
description: Payment counter to identify which payment to refund.
example: 1
format: int32
type: integer
refundAmount:
description: Refund amount for appeasements.
example: 34.56
format: double
type: number
refundAmountInCurrencies:
items:
description: >-
The refund amount specifically for appeasements, itemized by each
currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
type: object
orderAttributesUpdateRequest:
description: An object containing order attributes update request details.
properties:
attributes:
additionalProperties:
description: An object containing your custom attributes.
example:
fraudCheckStatus: UPDATED
loyaltyStatus: 'N'
type: object
description: An object containing your custom attributes.
example:
fraudCheckStatus: UPDATED
loyaltyStatus: 'N'
type: object
keysToRemove:
description: A list of keys to be removed.
items:
type: string
type: array
required:
- attributes
type: object
orderAuditLogUpdatedField:
description: Audit log for change history
properties:
fieldName:
description: Field or property name that was updated
example: UOM
type: string
fieldOriginalValue:
description: Original value of `fieldName` before it was updated
example: PK
type: string
type: object
orderCancelLineItem:
description: An object containing the cancellation details of an item.
properties:
attributes:
description: Custom attributes
example:
number: XlQZTmFDFtPFGMxJP6oiAqN3vo+qKZ
type: object
itemUnitNumber:
description: Item unit number cancelled.
example: 1
format: int32
type: integer
lineItemId:
description: >-
Merchant-defined unique identifier for each item in an order. When
omitted, fabric will generate it (in UUID format) during order
creation.
example: '12'
type: string
quantity:
description: Quantity of given item to be cancelled
example: 1
format: int32
minimum: 1
type: integer
reasonCode:
description: >-
Merchant-defined reason code for item cancellation; varies from
merchant to merchant
example: Incorrect item
type: string
subReasonCode:
description: >-
Subreason code for item cancellation, for another layer of
classification.
example: Not the right color
type: string
required:
- itemUnitNumber
- lineItemId
- quantity
type: object
orderCancellationRequest:
description: Order cancellation request
properties:
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
example:
isPerishable: 'false'
type: object
employeeId:
description: Employee (ID or name) who initiated the order cancellation request
example: '12312232'
type: string
items:
description: Cancellation request
items:
$ref: '#/components/schemas/orderCancelLineItem'
type: array
note:
description: Additional notes, if any
example: This is a note
type: string
policyCode:
description: >-
Merchant-defined policy code, varies from merchant to merchant. If
omitted, the default policy is used.
example: RC1
type: string
reasonCode:
description: Reason code for cancellation, varies from merchant to merchant
example: Incorrect order
type: string
releaseSoftReservation:
type: boolean
source:
description: >-
Merchant-defined source from where the cancellation request was
initiated. There are no pre-defined values; possible values could be
Customer Service Representative (CSR), point-of-sale (POS), etc.
example: CSR
type: string
subReasonCode:
description: >-
Subreason code for order cancellation, for another layer of
classification
example: Incorrect specification
type: string
requestContext:
$ref: '#/components/schemas/requestReferenceContextResource'
description: Request reference context information
required:
- reasonCode
type: object
orderContactName:
description: Contact person's name
properties:
firstName:
description: Contact person's first name
example: Alex
type: string
lastName:
description: Contact person's last name
example: Doe
type: string
middleName:
description: Contact person's middle name or initial
example: E
type: string
type: object
orderContactPhone:
description: Contact person's phone details.
properties:
number:
description: Contact person's phone number
example: 123-456-7890
type: string
type:
description: Contact number type
enum:
- MOBILE
- HOME
- BUSINESS
example: MOBILE
type: string
type: object
orderCreateAppeasementRequest:
description: Appeasement request
properties:
appeasements:
description: >-
Order-level appeasement details. At least one order-level or
item-level appeasement must be added.
items:
$ref: '#/components/schemas/orderAppeasementDetail'
type: array
customer:
$ref: '#/components/schemas/invoiceCustomer'
items:
description: >-
Item-level appeasements. At least one order-level or item-level
appeasement must be added.
items:
$ref: '#/components/schemas/orderLineItemAppeasement'
type: array
orderExternalId:
type: string
description: >
A merchant-defined external order identifier.
This field is optional and can be used to reference the order in
external
systems such as an ERP, OMS, or CRM.
example: 191763090_O1231
source:
description: >-
Merchant-defined source from where the appeasement request was
initiated. There are no pre-defined values; possible values are
Customer Service Representative (CSR), point-of-sale (POS), etc.
example: Storefront
type: string
userId:
description: >-
Identifier of the logged in user who initiated the request. This
could be from either fabric Identity service or an external Identity
service.
example: '12'
type: string
requestContext:
$ref: '#/components/schemas/requestReferenceContextResource'
description: Request reference context information
required:
- source
- userId
type: object
orderCreditUpdateRequest:
description: >-
An object containing update credits details. This is only triggered on
request.
properties:
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
example:
giftCardNumber: XlQZTmFDFtPFGMxJP6oiAqN3vo+qKZ
type: object
creditId:
description: Unique UUID of credit
example: a05b72dc-78d8-4ea4-90fc-2fe6a1fe1111
type: string
note:
description: Placeholder for additional information, if any.
example: Credit request initiated
type: string
statusCode:
description: Credit status
enum:
- PENDING
- CONFIRMED
- FAILED
- CANCELED
example: PENDING
type: string
required:
- creditId
- statusCode
type: object
orderCreditsRequest:
description: Credits request
properties:
credits:
items:
$ref: '#/components/schemas/creditsRequest'
type: array
required:
- credits
type: object
orderCreditsResponse:
description: Credits response
properties:
credits:
items:
$ref: '#/components/schemas/creditsResponse'
type: array
type: object
orderDiscount:
description: An object containing all the discount details for an order.
properties:
amount:
description: Discounted amount for the given `quantity` within an order.
example: 2.99
format: double
type: number
amountInCurrencies:
items:
description: >-
Discounted amount for the given `quantity`, itemized by each
currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
invoiceQuantity:
description: >-
Total quantity invoiced. If customer placed order for 10 quantity of
an item and only 2 got shipped, then 2 is the `invoiceQuantity`.
example: 10
format: int32
type: integer
promotionCode:
description: >-
Promotion code used by shoppers to take advantage of an ongoing
promotion.
example: HNY2022
type: string
promotionId:
description: >-
Unique promotion ID either from fabric Offers service or external
Offers service. When fabric Offers service is used, this is the
24-character system-generated promotion ID returned in the response
of create promotion endpoint.
example: HNY2022
type: string
promotionName:
description: Promotion name
example: New Year
type: string
quantity:
description: >-
Number of discounted items in an order such as buy 2 get 1 free. In
this case 1 is the discounted quantity.
example: 1
format: int32
type: integer
unit:
description: Indicates whether the discount is in amount or percentage
example: AMOUNT_OFF
type: string
value:
description: Value corresponding to `unit`
example: 10
format: int32
type: integer
type: object
orderDiscountRequest:
description: Order discount
properties:
amount:
description: The discount amount applied to a specific quantity of items.
example: 2.4
format: double
type: number
amountInCurrencies:
items:
description: >-
The discount amount applied to a specific quantity of items,
itemized by each currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
promotionCode:
description: >-
Promotion code used by shoppers to take advantage of an ongoing
promotion.
example: HNY2022
type: string
promotionId:
description: >-
Unique promotion ID either from fabric Offers service or external
Offers service. When fabric Offers service is used, this is the
24-character system-generated promotion ID returned in the response
of Create promotion endpoint.
example: HNY2022
type: string
promotionName:
description: Promotion name
example: New Year
type: string
quantity:
description: Discounted quantity of given item
example: 2
format: int32
type: integer
type:
description: Promotion type. There are no pre-defined values.
example: promotion
type: string
unit:
description: Discount offer - dollar value or percentage
example: AMOUNT_OFF
type: string
value:
description: Discount value in amount or percentage
example: 2
format: int32
type: integer
type: object
orderFeeDetail:
description: An object containing an orders fee details.
properties:
amount:
description: Tax amount
example: 34.56
format: double
type: number
amountInCurrencies:
items:
description: >-
The total tax amount, itemized by each currency used within the
order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
attributes:
additionalProperties:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
type: object
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
type: object
currency:
default: USD
description: Three-letter currency code as defined by ISO-4217
example: USD
type: string
invoicedAmount:
description: >-
System-generated amount from Invoice service based on requested
`amount`
example: 34.56
format: double
type: number
invoicedAmountInCurrencies:
items:
description: >-
A System-generated amount returned from the Invoice service based
on requested `amount` in all currencies used by an order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
name:
description: Applied tax name
example: STATE
type: string
rate:
description: Rate
example: 10
format: double
type: number
rateType:
description: Rate type
example: PERCENTAGE
type: string
taxCode:
description: Tax code applied
example: FR01
type: string
type: object
orderItem:
description: An object containing an orders item details.
properties:
adjustments:
description: >-
Price adjustments are made to modify product prices during order
creation, aiming to incentivize shoppers by offering discounts and
promotions based on specified criteria. Price adjustments are also
made to apply coupons that the shopper has used.
items:
$ref: '#/components/schemas/adjustmentDetail'
type: array
appeasementTotal:
description: >-
Appeasement total = `summationOfAll(appeasements[].amount and
items[].appeasements[].amount)`
example: 5.5
format: double
type: number
appeasementTotalInCurrencies:
items:
description: >-
The total appeasement amount, calculated as the sum of all
`appeasements[].amount` and `items[].appeasements[].amount`
values, expressed in all currencies used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
appeasements:
description: Appeasement info
items:
$ref: '#/components/schemas/orderAppeasementDetail'
type: array
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
example:
colorCode: '001'
isDonation: 'false'
style: '570223020'
type: object
backOrderedQuantity:
description: Backordered quantity of given item
example: 10
format: int32
type: integer
cancellations:
items:
$ref: '#/components/schemas/cancellationItemResource'
type: array
cancelledAmount:
description: >-
Cancelled amount is either voided (payment is only authorized but
not captured at checkout) or refunded (amount is authorized and
captured at checkout).
example: 12.4
format: double
type: number
cancelledAmountInCurrencies:
items:
description: >-
The total amount cancelled, itemized by each currency used within
the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
cancelledQuantity:
description: Cancelled quantity of an item
example: 10
format: int32
type: integer
channelId:
description: Sales channel ID
example: WHBM
type: string
currency:
description: Three-letter currency code as defined by ISO-4217
example: USD
type: string
deliveredQuantity:
description: Delivered quantity of an item
example: 10
format: int32
type: integer
discounts:
description: Discount details
items:
$ref: '#/components/schemas/orderDiscount'
type: array
employeeId:
description: Employee (ID or name) who initiated the request
example: 5345HJH
type: string
exchangeQuantity:
description: System-generated item quantity that are exchanged
example: 13
format: int32
type: integer
fees:
description: Fee details
items:
$ref: '#/components/schemas/itemFeeDetails'
type: array
fulfillment:
$ref: '#/components/schemas/itemFulfillmentResource'
hasInfiniteConsent:
description: >-
Applicable for backorder and preorder scenarios where customer
consents for further delay in delivery of preordered and backordered
items than the initial estimate. **true:** Customer consents for
delayed delivery. **false:** Customer does not consent for delayed
delivery.
example: true
type: boolean
invoiceTotal:
description: Invoice total is updated once invoice created
example: 800
format: double
type: number
invoiceTotalInCurrencies:
items:
description: >-
The total amount to be charged for the invoice, itemized by each
currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
invoicedQuantity:
description: Invoiced quantity of an item
example: 10
format: int32
type: integer
isBackorder:
description: >-
Merchant-defined value. **true:** Backordered item. **false:**
Ordered item.
example: true
type: boolean
isDonation:
description: '**true:** Item is a donation. **false:** Item is not a donation.'
example: true
type: boolean
isExchangeItem:
description: >-
Merchant-defined value for exchange scenarios. **true:** Item is an
exchange. **false:** Item is not an exchange.
example: true
type: boolean
isGifting:
description: '**true:** Item is a gift. **false:** Item is not a gift.'
example: true
type: boolean
isPreorder:
description: >-
Merchant-defined value. **true:** Pre-ordered item. **false:**
Ordered item.
example: true
type: boolean
isFulfillable:
type: boolean
description: >
Determines whether an **Allocation** document must be created before
fulfillment.
- If `false`, the allocation step is skipped and the process
continues directly to **Invoice & Payment Capture**.
- If omitted, the system defaults to `true`.
example: true
default: true
isInventoryManaged:
type: boolean
description: >
Indicates whether the **On-Hand / Available to Purchase** quantity
is managed in fabric OMS.
- If `false`, inventory management is bypassed and no inventory
document is created in OMS.
- If omitted, the system defaults to `true`.
example: true
default: true
itemAdjustmentTotal:
description: Total price adjustment made to the item.
example: 123.45
format: double
type: number
itemAdjustmentTotalInCurrencies:
items:
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
itemDiscountsTotal:
description: >-
Item's total discount = `summationOfAll(discounts[].amount)'. Refer
to `amount` in `orderDiscount`.
example: 80
format: double
type: number
itemDiscountsTotalInCurrencies:
items:
description: >-
The total discount applied to an item, calculated as the sum of
all `discounts[].amount` values, expressed in all currencies used
within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
itemFeeTotal:
description: >-
Recalculated item's fee = `summationOfAll(itemFeeTotal)`. Refer to
`amount` in `itemFeeDetails`
example: 200
format: double
type: number
itemFeeTotalInCurrencies:
items:
description: >-
The updated fee for an item, calculated as the sum of all
`itemFeeTotal` values, expressed in all currencies used within the
order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
itemId:
description: >-
System-generated unique identifier of item from fabric Products
(PIM) service
example: 1234
format: int32
type: integer
itemName:
description: Item name
example: Item
type: string
itemShippingTotal:
description: Merchant-defined item's shipping total
example: 10
format: double
type: number
itemShippingTotalInCurrencies:
items:
description: >-
The updated total shipping cost for an item, expressed in all
currencies used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
itemSubtotal:
description: >-
Recalculated item's subtotal = `itemUnitPrice x (orderedQuantity -
cancelledQuantity)`
example: 600
format: double
type: number
itemSubtotalInCurrencies:
items:
description: >-
The updated subtotal for an item, calculated as `itemUnitPrice x
(orderedQuantity - cancelledQuantity)`, itemized by each currency
used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
itemSubtype:
description: Subtype of `type`, for another layer of classification.
example: Borderfree
type: string
itemTaxTotal:
description: Recalculated total tax on item = `summationOfAll(itemTaxTotal)`
example: 80
format: double
type: number
itemTaxTotalInCurrencies:
items:
description: >-
The updated total tax on an item, calculated as the sum of all
`itemTaxTotal` values, itemized by each currency used within the
order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
itemTotal:
description: >-
Recalculated item's total cost = `itemSubTotal - itemDiscountTotal
+ itemTaxTotal + itemFeeTotal`.
example: 800
format: double
type: number
itemTotalInCurrencies:
items:
description: >-
The updated total cost of an item, calculated as `itemSubTotal -
itemDiscountTotal + itemTaxTotal + itemFeeTotal`, itemized by each
currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
itemUnitPrice:
description: Item's unit price
example: 10
format: double
type: number
itemUnitPriceInCurrencies:
items:
description: >-
The price of a single unit of an item, itemized by each currency
used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
lineItemId:
description: >-
Merchant-defined unique identifier for each item in an order. When
omitted, fabric will generate it (in UUID format) during order
creation.
example: d538b1f1-0e45-43c6-bfc6-9666fc1188ca
type: string
lineItemNumber:
description: Merchant-defined line item number to identify each item in an order
example: 1
format: int32
type: integer
lineOrderStatus:
description: >-
System-generated status for each item in the orders - SHIPPED,
RETURNED, CANCELLED, EXCHANGED, VALID, and the like
example: VALID
type: string
notes:
description: >-
For additional information, to be used by Customer Service
Representative (CSR) only
items:
$ref: '#/components/schemas/orderNote'
type: array
orderedQuantity:
description: Ordered quantity of given item
example: 60
format: int32
type: integer
orderedQuantityToShip:
description: >-
Quantity of given item that is yet to ship, out of the initially
allocated quantity. For example, if a customer orders four units of
an item, inventory will reserve four units of the item. If only two
units are currently available and are shipped, the remaining two
units will be considered as the `pendingShippedQuantity`.
example: 10
format: int32
type: integer
originalDiscounts:
description: >-
System-generated total discount, auto-filled by Orders service when
the order is placed.
example: 50
format: double
type: number
originalDiscountsInCurrencies:
items:
description: >-
The initial discounts applied, itemized by each currency used
within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
originalFeeTotal:
description: >-
System-generated fee total, auto-filled by fabric Orders when the
order is placed. This is saved for reference in case the value
changes later.
example: 300
format: double
type: number
originalFeeTotalInCurrencies:
items:
description: >-
The initial total fee amount, itemized by each currency used
within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
originalItemAdjustmentTotalInCurrencies:
items:
description: >-
The initial total value of item adjustments, itemized by each
currency used within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
originalItemSubtotal:
description: >-
System-generated total discount, auto-filled by Orders service when
the order is placed.
example: 800
format: double
type: number
originalItemSubtotalInCurrencies:
items:
description: >-
The initial subtotal for an item, itemized by each currency used
within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
originalItemTotal:
description: >-
System-generated item total cost, auto-filled by Orders service when
the order is placed
example: 500
format: double
type: number
originalItemTotalInCurrencies:
items:
description: >-
The initial total cost of an item, itemized by each currency used
within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
originalOutstandingItemTotalInCurrencies:
items:
description: >-
The initial outstanding total cost of items that had not yet been
paid for, itemized by each currency used within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
originalShippingTotal:
description: >-
System-generated total shipping cost, auto-filled by Orders service
when the order is placed.
example: 80
format: double
type: number
originalShippingTotalInCurrencies:
items:
description: >-
The initial total shipping cost, itemized by each currency used
within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
originalTaxTotal:
description: >-
System-generated total tax, auto-filled by Orders service when the
order is placed.
example: 90
format: double
type: number
originalTaxTotalInCurrencies:
items:
description: >-
The initial total tax amount, itemized by each currency used
within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
outstandingItemTotalInCurrencies:
items:
description: >-
The remaining total cost of items that have not yet been paid for,
itemized by each currency used within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
parentLineItemNumber:
description: >-
Applicable in exchange scenarios. Item being returned is the
`parentLineItemNumber`.
example: 12
format: int32
type: integer
pendingExchangeQuantity:
description: System-generated item quantity pending for exchange
example: 12
format: int32
type: integer
pendingReturnQuantity:
description: >-
Quantity of an item awaiting approval for return. For example, when
customer initiates return request for 2 units of an item, the
request will be initially in a pending status because they are
awaiting approval from merchant. They are referred to as
`pendingReturnQuantity`.
example: 10
format: int32
type: integer
pendingShippedBackOrderQuantity:
description: >-
Backordered quantity that is yet to be shipped. For example, If a
customer places a backorder for four units of an item, inventory
will reserve four units of the item to ship when they become
available. If only two units are available and are shipped, the
remaining two backordered units will be considered as the
`pendingShippedBackOrderQuantity`.
example: 10
format: int32
type: integer
processingReturnQuantity:
description: >-
Quantity of an item currently being processed for return. For
example, when merchant approves return of 1 out of 2 units of an
item, then 1 is the `processingReturnQuantity`
example: 10
format: int32
type: integer
quantityInStatus:
$ref: '#/components/schemas/quantityInStatus'
refundAmount:
description: Merchant-defined total refund amount
example: 21.5
format: double
type: number
refundAmountInCurrencies:
items:
description: >-
The total refund amount, itemized by each currency used within a
specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
rejectedReturnQuantity:
description: >-
Quantity of an item rejected in return request. For example, For
example, when merchant rejects return of 1 out of 2 units of an
item, then 1 is the `rejectedReturnQuantity`.
example: 10
format: int32
type: integer
reshippedQuantity:
description: Reshipped quantity of given item (in case of lost shipment)
example: 10
format: int32
type: integer
returnedQuantity:
description: Returned quantity of given item
example: 10
format: int32
type: integer
returns:
description: Order return details
items:
$ref: '#/components/schemas/orderReturns'
type: array
shipToId:
description: >-
System-generated ship-to ID (UUID) associated with `shipInfo`,
generated from CnC service. **Note**: An order can have multiple
ship-to (delivery) locations and items going to the one location
will have the same `shipToId`.
example: b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569
type: string
shippedQuantity:
description: Shipped quantity of an item
example: 10
format: int32
type: integer
sku:
description: Stock keeping unit (SKU), unique identifier of item
example: P1234
type: string
taxCode:
description: Applicable tax code, varies from state to state
example: FR01
type: string
taxDetails:
description: Tax details
items:
$ref: '#/components/schemas/taxDetail'
type: array
type:
description: >-
Order type. Critical in order life cycle as it indicates the
workflow that varies with the type. For example, Storefront orders
have a different workflow than Call Center orders. fabric Orders
service offers default configurations for Storefront, Call Center,
Point of Sale, iOS, Android, and International.
example: WEB_SHIP
type: string
uom:
description: >-
Unit in which a product is sold or measured. It is important to
accurately fulfill orders and ensure customers receive the correct
quantity of products they have ordered. The possible values are EA
(Each) or GAL (Gallon), DZ (Dozen), etc.
example: EA
type: string
vendorId:
description: >-
Vendor ID. Applicable in drop shipping to indicate vendor
responsible for given item.
example: P1234
type: string
required:
- itemId
- lineItemId
- lineItemNumber
- shipToId
- sku
type: object
orderItemRequest:
description: Order item model
properties:
adjustments:
description: >-
Price adjustments are made to modify product prices during order
creation, aiming to incentivize shoppers by offering discounts and
promotions based on specified criteria. Price adjustments are also
made to apply coupons that the shopper has used.
items:
$ref: '#/components/schemas/adjustmentDetail'
type: array
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info in key: value pairs
example:
colorCode: '001'
isDonation: 'false'
style: '570223020'
type: object
currency:
description: Three-letter currency code as defined by ISO-4217
example: USD
type: string
discounts:
items:
$ref: '#/components/schemas/orderDiscountRequest'
type: array
employeeId:
description: Employee (ID or name) who initiated the request
example: 62272e917b12209e68751d94
type: string
fees:
items:
$ref: '#/components/schemas/taxDetail'
type: array
fulfillment:
$ref: '#/components/schemas/itemFulfillmentResource'
isBackorder:
description: '**true:** Backordered item. **false:** Ordered item.'
example: true
type: boolean
isDonation:
description: 'true: Item is a donation
false: Item is not a donation'
example: true
type: boolean
isPreorder:
description: '**true:** Preordered item. **false:** Ordered item.'
example: true
type: boolean
itemAdjustmentTotalInCurrencies:
items:
description: >-
The total value of item adjustments, itemized by each currency
used within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
itemDiscountsTotal:
description: >-
Item's total discount = `summationOfAll(discounts[].amount)'. Refer
to `amount` in `orderDiscount`.
example: 10
format: double
type: number
itemDiscountsTotalInCurrencies:
items:
description: >-
The total discount applied to items, itemized by each currency
used within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
itemFeeTotal:
description: >-
Recalculated item's fee = `summationOfAll(fees[].amount)`. Refer to
`amount` in `itemFeeDetails`.
example: 10
format: double
type: number
itemFeeTotalInCurrencies:
items:
description: >-
The updated fee for an item, itemized by each currency used within
a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
itemId:
description: Unique identifier of item from fabric Products (PIM) service.
example: 1234
format: int32
type: integer
itemName:
description: Item name
example: Item
type: string
itemSubtotal:
description: >-
Recalculated item's subtotal - `Item unit price x (orderedQuantity -
cancelledQuantity)`
example: 600
format: double
type: number
itemSubtotalInCurrencies:
items:
description: >-
The updated subtotal for an item, itemized by each currency used
within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
itemSubtype:
description: Subtype of `type`, for another layer of classification.
example: Borderfree
type: string
itemTaxTotal:
description: Recalculated total tax on item = `summationOfAll(itemTaxTotal)`
example: 10
format: double
type: number
itemTaxTotalInCurrencies:
items:
description: >-
The updated total tax applied to an item, itemized by each
currency used within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
itemTotal:
description: >-
Recalculated item's total cost = `itemSubTotal - itemDiscountTotal
+ itemTaxTotal + itemFeeTotal`.
example: 10
format: double
type: number
itemTotalInCurrencies:
items:
description: >-
The updated total cost of an item, itemized by each currency used
within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
itemUnitPrice:
description: Item's unit price
example: 10
format: double
type: number
itemUnitPriceInCurrencies:
items:
description: >-
The price of a single unit of an item, itemized by each currency
used within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
lineItemId:
description: >-
Merchant-defined unique identifier for each item in an order. When
omitted, fabric auto-generates this value during order creation, in
UUID format.
example: b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569
type: string
lineItemNumber:
description: Merchant-defined line item number to identify each item in an order.
example: 1
format: int32
type: integer
notes:
description: >-
Notes section to be used by customer service representative (CSR)
only
items:
$ref: '#/components/schemas/orderNote'
type: array
orderedQuantity:
description: Ordered quantity of given item
example: 60
format: int32
type: integer
segment:
description: Segment
example: P1234
type: string
shipToId:
description: >-
System-generated UUID associated with `shipInfo`, generated from CnC
service. **Note**: An order can have multiple ship-to (delivery)
locations and items going to the same location have one `shipToId`.
example: b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569
type: string
sku:
description: Stock keeping unit (SKU), unique identifier of item.
example: P1234
type: string
taxCode:
description: Applicable tax code, varies from state to state
example: FR01
type: string
taxDetails:
items:
$ref: '#/components/schemas/taxDetail'
type: array
type:
description: >-
Identify order type whether it's a pickup, web ship, or
international order.
example: WEB_SHIP
type: string
uom:
description: >-
Unit in which a product is sold or measured. It is important for
accurately fulfilling orders and ensuring customers receive the
correct quantity of products they have ordered. The possible values
are EA (Each) or GAL (Gallon), DZ (Dozen), etc.
example: EA
type: string
vendorId:
description: Vendor ID
example: P1234
type: string
required:
- itemId
- lineItemId
- lineItemNumber
- shipToId
- sku
type: object
orderLineItemAppeasement:
description: >-
An object broken down by the item-level containing appeasement details
for each item.
properties:
appeasements:
description: >-
Item-level appeasements. **Note**: If the same appeasement counter
is found twice at order level as well as item-level appeasement,
item-level appeasement request is considered as duplicate. However,
if the same appeasement counter is found under different items,
then, it is not considered as duplicates.
items:
$ref: '#/components/schemas/orderAppeasementDetail'
type: array
lineItemId:
description: >-
Merchant-defined unique identifier for each item in an order. When
omitted, fabric will generate it (in UUID format) during order
creation.
example: d538b1f1-0e45-43c6-bfc6-9666fc1188ca
type: string
required:
- appeasements
- lineItemId
type: object
orderNote:
description: Note for attention
properties:
createdAt:
description: Time note was created (UTC)
example: '2022-05-12T09:30:31.198Z'
type: string
notes:
description: Additional info about the order, if any
example: Fragile - handle with care
type: string
user:
description: >-
Customer Service Representative or Employee (ID or name) who created
the note
example: 62272e917b12209e68751d94
type: string
type: object
orderPayment:
description: An object containing an orders payment details.
properties:
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
example:
captureCurrencyCode: USD
payerId: M7AWTK3YK3B46
referenceId: 4DY41894J2904533S
type: object
authorizationAttempts:
description: >-
An integer representing the number of payment authorization
attempts.
example: 0
format: int64
type: integer
authorizedAmount:
description: Amount authorized to be debited from the given `paymentMethod`
example: 123.2
format: double
type: number
authorizedAmountInCurrencies:
items:
description: >-
The amount authorized for debit from the specified payment method,
itemized by each currency used within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
billToAddress:
$ref: '#/components/schemas/address'
chargedAmount:
description: Amount charged to the given `paymentMethod`
example: 60
format: double
type: number
chargedAmountInCurrencies:
items:
description: >-
The amount charged to the specified payment method, itemized by
each currency used within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
currency:
description: Three-letter currency code as defined by ISO-4217
example: USD
type: string
isFinalCapture:
description: >-
**true:** Payment is final capture. **false:** Payment is not a
final capture.
example: false
type: boolean
isPartialCapture:
description: >-
**true:** Payment is partial capture. **false:** Payment is full
capture.
example: false
type: boolean
paidAt:
description: >-
System-generated time when payment was captured at shipment. In case
of payment captured at checkout, this is a merchant-defined value
given during order creation.
example: '2022-01-27T16:15:58-05:00'
format: date-time
type: string
paymentCounter:
description: >-
A sequential or incremental counter associated with a payment for an
order. Applicable in refund scenarios to identify the specific
payment for refund.
example: 1
format: int32
type: integer
paymentIdentifier:
$ref: '#/components/schemas/orderPaymentIdentifier'
paymentLogs:
description: Payment details
items:
$ref: '#/components/schemas/paymentResponse'
type: array
paymentMethod:
description: Payment method such as PayPal or credit card
example: CREDIT_CARD
type: string
paymentProvider:
description: Payment provider
example: stripe
type: string
paymentStatus:
description: >-
Payment status. There are no pre-defined values; possible values are
Paid, Partially Paid, Authorized, and Error.
example: Paid
type: string
paymentToken:
$ref: '#/components/schemas/orderPaymentToken'
reauthorizationAttempts:
description: >-
An integer representing the number of payment reauthorization
attempts.
example: 0
format: int64
type: integer
refundAmount:
description: Merchant-defined refund amount
example: 21.5
format: double
type: number
refundAmountInCurrencies:
items:
description: >-
The merchant specified refund amount, itemized by each currency
used within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
type: object
orderPaymentAuthorizationResource:
description: The Order Payment Authorization request object.
properties:
orderNumber:
description: The merchant-defined order identifier.
example: '309019176'
type: string
payments:
description: An array containing the payments object.
items:
$ref: '#/components/schemas/paymentAuthorizationResource'
type: array
required:
- orderNumber
type: object
orderPaymentIdentifier:
description: >-
An object containing the details of payment modes and payment
identifiers.
properties:
cardIdentifier:
description: Last 4 digits of the card
example: '3456'
type: string
expirationMonth:
description: Card expiration month
example: '12'
type: string
expirationYear:
description: Card expiration year
example: '2029'
type: string
fabricPaymentReference:
description: >-
System-generated UUID referenced internally for Invoice and Orders
services.
example: f886c96c-5f65-11ed-9b6a-0242ac120002
type: string
paymentId:
description: >-
Merchant provided unique identifier for a payment based on payment
connector. When omitted, it is a fabric-generated UUID.
example: 62272e917b12209e68751d94
type: string
type: object
orderPaymentRequest:
description: An object containing the payment details for an order.
properties:
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
example:
captureCurrencyCode: USD
payerId: M7AWTK3YK3B46
referenceId: 4DY41894J2904533S
type: object
authorizationExpirationDate:
description: Expiration time for authorization
example: '2022-01-27T16:15:58-05:00'
format: date-time
type: string
authorizedAmount:
description: Amount authorized to be debited from the given `paymentMethod`
example: 123.2
format: double
type: number
authorizedAmountInCurrencies:
items:
description: >-
The authorized debit amount from the specified payment method,
broken down by each currency used in the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
billToAddress:
$ref: '#/components/schemas/address'
chargedAmount:
description: Charged amount
example: 60
format: double
type: number
chargedAmountInCurrencies:
items:
description: >-
The total amount charged, itemized by each currency used within a
specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
currency:
description: Three-letter currency code as defined by ISO-4217
example: USD
type: string
paidAt:
description: >-
System-generated time of payment capture at shipment. When payment
is captured at checkout, this is a merchant-defined value during
order creation.
example: '2022-01-27T16:15:58-05:00'
format: date-time
type: string
paymentCounter:
description: >-
A sequential or incremental counter associated with a payment for an
order. Applicable in refund scenarios to identify the specific
payment for refund.
example: 1
format: int32
type: integer
paymentIdentifier:
$ref: '#/components/schemas/orderPaymentIdentifier'
paymentMethod:
description: Payment method
example: CREDIT_CARD
type: string
paymentProvider:
description: Payment provider
example: stripe
type: string
paymentStatus:
description: >-
Payment status. There are no pre-defined values; possible values are
Paid, Partially Paid, Authorized, and Error.
example: Paid
type: string
paymentToken:
$ref: '#/components/schemas/orderPaymentToken'
type: object
orderPaymentToken:
description: An object containing the order payment token details.
properties:
paymentType:
description: >-
Payment type, for example, credit card payment providers can be
Visa, Mastercard, American express, etc.
example: VISA
type: string
token:
description: Payment token provided by payment provider
example: pi_34tr6787rt
type: string
type: object
orderPickup:
description: An object containing the order pickup details.
properties:
email:
description: Contact person's email
example: test@example.com
type: string
name:
$ref: '#/components/schemas/orderContactName'
phone:
$ref: '#/components/schemas/orderContactPhone'
pickupType:
description: Order pickup type
enum:
- PRIMARY
- ALTERNATE
example: PRIMARY
type: string
type: object
orderRefund:
description: Order refund
properties:
amount:
description: Merchant-defined refund amount
example: 34.56
format: double
type: number
amountInCurrencies:
items:
$ref: '#/components/schemas/amountInCurrency'
type: array
conversion:
description: Conversion required for currency
example: 1
format: double
type: number
currency:
description: Three-letter currency code as defined by ISO-4217
example: USD
type: string
required:
- amount
type: object
orderResponse:
description: An object containing order details.
properties:
adjustmentTotal:
description: The total amount of price adjustments for all items of the order.
example: 123.45
format: double
type: number
adjustmentTotalInCurrencies:
items:
description: >-
The total price adjustments applied to all items within an order,
itemized by each currency used in that order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
adjustments:
description: >-
Price adjustments refer to changes or modifications made to the
listed price of a product. A Customer Sales Representative (CSR)
makes the price adjustments to provide discounts, promotional
offers, or coupons that the shopper used.
items:
$ref: '#/components/schemas/adjustmentDetail'
type: array
allocatedAt:
description: >-
System-generated order allocation time (UTC) once the order is
allocated using Allocation service
example: '2022-05-12T09:30:31.198Z'
format: date-time
type: string
appeasementTotal:
description: Final appeasement amount
example: 12.34
format: double
type: number
appeasementTotalInCurrencies:
items:
description: >-
The final appeasement amount, itemized by each currency used
within a specific order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
appeasements:
items:
$ref: '#/components/schemas/orderAppeasementDetail'
type: array
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
example:
fraudCheckStatus: UPDATED
loyaltyStatus: 'N'
type: object
auditLogs:
items:
$ref: '#/components/schemas/auditLog'
type: array
cancelTotal:
description: >-
Amount to be returned after order cancellation, calculated as
`cancelledQuantity / orderedQuantity * itemTotal`
example: 12.34
format: double
type: number
cancelTotalInCurrencies:
items:
description: >-
The total amount to be returned to the customer following an order
cancellation, itemized by each currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
cancellations:
items:
$ref: '#/components/schemas/cancellationResource'
type: array
cancelledAt:
description: >-
System-generated order cancellation time in UTC. This is returned in
the response of Cancel order by ID - `POST
/orders/{orderId}/actions/cancel` or Cancel order by order number -
`POST /orders/order-number/{orderNumber}/actions/cancel` once the
order is successfully cancelled.
example: '2022-05-12T09:30:31.198Z'
format: date-time
type: string
cartId:
description: >-
Unique cart identifier, either from fabric Cart service or an
external Cart service. It is used for linking an order to a specific
cart. If available, it is also used for inventory reservation from
cart workflow.
example: b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569
type: string
channelId:
description: Sales channel ID
example: '12'
type: string
createdAt:
description: Order creation time (UTC)
example: '2022-05-12T09:30:31.198Z'
format: date-time
type: string
currencies:
$ref: '#/components/schemas/currencies'
description: The supported currency groups you defined.
currency:
description: Three-letter currency code as defined by ISO-4217
example: USD
type: string
customer:
$ref: '#/components/schemas/invoiceCustomer'
discounts:
items:
$ref: '#/components/schemas/orderDiscount'
type: array
employeeId:
description: Employee (ID or name) who initiated the request
example: '43278'
type: string
erroredFields:
items:
$ref: '#/components/schemas/erroredField'
type: array
feeTotal:
description: >-
Recalculated total fee, calculated as `orderedQuantity*
itemFeeTotal`
example: 12.34
format: double
type: number
feeTotalInCurrencies:
items:
description: >-
The updated total fee amount for an order, itemized by each
currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
fees:
items:
$ref: '#/components/schemas/orderFeeDetail'
type: array
invoiceTotal:
description: >-
Total payment captured by fabric Invoice service. If merchant is
using third-party service, then this amount will be null. For
partial payment scenarios, this value will be different from
`orderTotal`.
example: 12.34
format: double
type: number
invoiceTotalInCurrencies:
items:
description: >-
The total payment captured by fabric's Invoice service, itemized
by each currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
items:
description: Item details
items:
$ref: '#/components/schemas/orderItem'
maxItems: 2147483647
minItems: 1
type: array
notes:
items:
$ref: '#/components/schemas/orderNote'
type: array
orderDiscount:
description: Recalculated order discount
example: 1.23
format: double
type: number
orderDiscountInCurrencies:
items:
description: >-
The updated total discount applied to the order, itemized by each
currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
orderId:
description: 24-character system-generated order ID
example: 5349b4ddd2781d08c09890f4
type: string
orderNumber:
description: >-
Merchant-defined order identifier. If omitted, this is generated by
fabric's sequence generator using Configuration service
example: '309019176'
type: string
orderExternalId:
type: string
description: >
A merchant-defined external order identifier.
This field is optional and can be used to reference the order in
external
systems such as an ERP, OMS, or CRM.
example: 191763090_O1231
orderReleasedAt:
description: >-
Order released time (UTC). When an order is placed, its status is On
Hold by default and the duration of hold may vary from merchant to
merchant (~1 min). After the hold period, the order is released from
hold.
example: '2022-05-12T09:30:31.198Z'
format: date-time
type: string
orderSubtotal:
description: Recalculated `orderSubtotal` - `summationOfAll(itemSubTotal)`
example: 123.45
format: double
type: number
orderSubtotalInCurrencies:
items:
description: >-
The updated subtotal for the entire order, itemized by each
currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
orderTotal:
description: >-
Total amount to be charged for the order = `orderSubTotal` -
`orderDiscountTotal` + `orderFeeTotal` + `orderTaxTotal`
example: 146.9
format: double
type: number
orderTotalInCurrencies:
items:
description: >-
The total amount to be charged for the order, itemized by each
currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
orderedAt:
description: >-
Merchant-defined order creation time in UTC. It is mandatory in the
request body of Create Order endpoint - `POST /orders`.
example: '2022-05-12T09:30:31.198Z'
format: date-time
type: string
originalAdjustmentTotal:
description: Original adjustment total
example: 123.45
format: double
type: number
originalAdjustmentTotalInCurrencies:
items:
description: >-
The initial total value of adjustments made to an order, itemized
by each currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
originalDiscount:
description: >-
System-generated total discount, auto-filled by Orders service when
the order is placed. This is saved for reference in case the value
changes later.
example: 1.45
format: double
type: number
originalDiscountInCurrencies:
items:
description: >-
The initial discount applied to an order, itemized by each
currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
originalFeeTotal:
description: >-
System-generated total fees, auto-filled by Orders service when the
order is placed.
example: 12.34
format: double
type: number
originalFeeTotalInCurrencies:
items:
description: >-
The initial total fee amount, itemized by each currency used
within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
originalOrderTotal:
description: >-
System-generated order total, auto-filled by Orders service when the
order is placed. This is saved for reference in case the
`orderTotal` changes later.
example: 146.9
format: double
type: number
originalOrderTotalInCurrencies:
items:
description: >-
The initial total cost of the entire order, itemized by each
currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
originalSubtotal:
description: >-
System-generated order subtotal, auto-filled by Orders service when
the order is placed. This is saved for reference in case the value
changes later.
example: 113.45
format: double
type: number
originalSubtotalInCurrencies:
items:
description: >-
The initial subtotal of the entire order, itemized by each
currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
originalTaxTotal:
description: >-
System-generated total tax, auto-filled by Orders service when the
order is placed.
example: 12.34
format: double
type: number
originalTaxTotalInCurrencies:
items:
description: >-
The initial total tax amount for an order, itemized by each
currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
payments:
items:
$ref: '#/components/schemas/orderPayment'
type: array
retail:
$ref: '#/components/schemas/orderRetail'
returnTotal:
description: >-
Return total of order, for return scenarios, calculated as
`summationOfAll(itemReturnTotal)`
example: 12.34
format: double
type: number
returnTotalInCurrencies:
items:
description: >-
The total amount returned for an order, itemized by each currency
used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
returns:
items:
$ref: '#/components/schemas/orderReturnsInfo'
type: array
shipInfo:
items:
$ref: '#/components/schemas/orderShipInfo'
maxItems: 2147483647
minItems: 1
type: array
statusCode:
description: >-
Status code. There are no pre-defined values; possible values are -
ORDER_ALLOCATED ("Order Allocated"), ORDER_SHIPPED ("Order
Shipped"), ORDER_PARTIALLY_SHIPPED ("Order Partially Shipped"),
ORDER_PICKED_UP ("Order Picked Up"), ORDER_PARTIALLY_PICKED_UP
("Order Partially Picked Up"), ORDER_DELIVERED ("Order Delivered"),
ORDER_PARTIALLY_DELIVERED ("Order Partially Delivered"),
ORDER_RETURNED ("Order Returned"), ORDER_HOLD_EXTERNAL ("Order on
Hold") etc.
example: ORDER_CREATED
type: string
statusDescription:
description: Human-readable brief description based on `statusCode`
example: Order Created
type: string
subtype:
description: Order subtype, for further classification
enum:
- IOS
- ANDROID
- INTERNATIONAL
example: INTERNATIONAL
type: string
taxTotal:
description: >-
Recalculated total tax on order
`summationOfAll(itemTaxTotal)+summationOf(tax[].value)`
example: 12.34
format: double
type: number
taxTotalInCurrencies:
items:
description: >-
The updated total tax amount, itemized by each currency used
within that order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
type:
description: >-
Order type is critical for the order life cycle as it indicates the
workflow. For example, storefront orders have a different workflow
than call center orders. fabric Orders service offers standard
configurations for storefront, call center, point of sale, iOS,
Android, and international.
enum:
- WEB
- CSC
- MOBILE_APP
- POS
example: WEB
type: string
transactionLogs:
type: array
items:
$ref: '#/components/schemas/requestReferenceContextResource'
updatedAt:
description: Time of last update to order (UTC)
example: '2022-05-12T09:30:31.198Z'
format: date-time
type: string
version:
description: >-
Current version of order document. Indicates the number of times the
order is updated by any operation.
example: 2
format: int64
type: integer
required:
- channelId
- items
- orderNumber
- shipInfo
- statusCode
- version
type: object
orderRetail:
description: >-
Optionally used as reference, for orders created from Point-of-Sale
systems
properties:
cashierId:
description: Merchant-defined cashier ID during order creation
example: C-123
type: string
locationNumber:
description: >-
Unique value to identify ship-from or Buy Online Pickup from Store
location. This must be the locationNumber stored in the fabric
Location service.
example: WH334
type: string
registerId:
description: Merchant-defined register ID during order creation
example: '113'
type: string
transactionId:
description: >-
Transaction ID such as the Point-of-Sale system's version of the
`orderId`.
example: '328942333412'
type: string
type: object
orderReturnRequest:
description: Return request
properties:
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info in key: value pairs
example:
fraudCheckSessionId: 59f1d2b88de74aef96d3ec900ad548e0
fraudStatus: FRAUD_PASS
type: object
credits:
items:
$ref: '#/components/schemas/creditsRequest'
type: array
employeeId:
description: Employee (ID or name) who initiated the request
example: 62272e917b12209e68751d94
type: string
fees:
items:
$ref: '#/components/schemas/returnFeeDetail'
type: array
isExchange:
default: false
description: >-
**true:** Return includes one or more exchanges. **false:** Only
returns, no exchange.
example: false
type: boolean
items:
description: Item details
items:
$ref: '#/components/schemas/returnItem'
type: array
reasonCode:
description: Merchant-defined reason code for return
example: Incorrect item
type: string
refunds:
items:
$ref: '#/components/schemas/returnFeeDetail'
type: array
returnedAt:
description: Merchant-defined time for return (UTC)
example: '2022-07-11T15:03:14.642Z'
format: date-time
type: string
source:
description: >-
Merchant-defined source from where the return request was initiated.
There are no pre-defined values; possible values are Customer
Service Representative (CSR), point-of-sale (POS), etc.
example: CSR
type: string
totalRefundAmount:
description: Merchant-defined total refund amount
example: 21.5
format: double
type: number
requestContext:
$ref: '#/components/schemas/requestReferenceContextResource'
description: Request reference context information
required:
- items
- source
type: object
orderReturns:
description: An object containing the order return details.
properties:
attributes:
additionalProperties:
description: Attributes
example:
transactionId: 0R12TQ46
type: object
description: Attributes
example:
transactionId: 0R12TQ46
type: object
exchangeLineItemId:
description: Exchange line item ID
example: 62f3dfc438bcab1951be0a19
type: string
fees:
items:
$ref: '#/components/schemas/returnFeeDetail'
type: array
invoicedAmount:
description: >-
System-generated amount from Invoice service based on requested
`amount`
example: 11.29
format: double
type: number
isExchangeItemReturned:
default: false
description: >-
**true:** Item received for exchange is returned. **false:** Item
received for exchange is not returned.
example: true
type: boolean
reasonCode:
description: Merchant-defined reason code for return
example: Incorrect item
type: string
refundAmount:
description: Refund amount
example: 11.29
format: double
type: number
refunds:
items:
$ref: '#/components/schemas/returnFeeDetail'
type: array
returnRequestCounter:
description: Unique, sequential, or incremental counter for return request
example: 1
format: int32
type: integer
returnsReceivedAt:
description: >-
System-generated time of returned item that has come back to the
facility (UTC)
example: '2022-09-14T14:07:36.861Z'
format: date-time
type: string
shipmentId:
description: 24-character system-generated shipment ID
example: 62b37697c67b204dd18a7465
type: string
shipmentInvoice:
$ref: '#/components/schemas/shipmentInvoiceResource'
shipmentLineItemId:
description: Unique identifier for each item in the shipment
example: '234'
type: string
shipmentQuantity:
default: 0
description: Shipped quantity of given item
example: 1
format: int32
type: integer
source:
description: >-
An optional field used to determine the source that initiated the
API request.
example: CSR
type: string
type: object
orderReturnsInfo:
description: Order returns info
properties:
attributes:
additionalProperties:
description: Attributes
example:
transactionId: 0R12TQ46
type: object
description: Attributes
example:
transactionId: 0R12TQ46
type: object
fees:
items:
$ref: '#/components/schemas/returnFeeDetail'
type: array
invoicedAmount:
description: System-generated invoiced amount for the return request
example: 11.29
format: double
type: number
invoicedAmountInCurrencies:
items:
description: >-
The invoiced amount is displayed in all currencies used for the
order. If only a single currency was used, then only that currency
will be shown.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
paymentCounterRefundDetails:
items:
$ref: '#/components/schemas/paymentCounterRefundInfo'
type: array
refunds:
items:
$ref: '#/components/schemas/returnFeeDetail'
type: array
returnCounter:
description: Unique, sequential or incremental counter for return request
example: 1
format: int32
type: integer
totalRefundAmount:
description: Merchant-defined total refund amount for the return request
example: 11.29
format: double
type: number
totalRefundAmountInCurrencies:
items:
description: >-
The total amount refunded, itemized by each currency used within
the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
type: object
orderSearchFilter:
description: Search filter
discriminator:
mapping:
EQ: '#/components/schemas/valueSearchFilter'
GT: '#/components/schemas/valueSearchFilter'
GTE: '#/components/schemas/valueSearchFilter'
IN: '#/components/schemas/valuesSearchFilter'
LT: '#/components/schemas/valueSearchFilter'
LTE: '#/components/schemas/valueSearchFilter'
NEQ: '#/components/schemas/valueSearchFilter'
NIN: '#/components/schemas/valuesSearchFilter'
propertyName: condition
properties:
condition:
default: EQ
description: SearchCondition to apply filter
enum:
- EQ
- NEQ
- IN
- NIN
- LT
- GT
- LTE
- GTE
example: EQ
type: string
field:
description: Field name
example: order.orderId
pattern: ^order\.[a-zA-Z.\-_]*
type: string
group:
default: Default
description: The group name.
example: GroupA
type: string
required:
- condition
- field
type: object
orderSearchRequest:
description: Filter conditions with sort option
example:
filters:
- field: order.type
value: WEB
- condition: IN
field: order.items.type
values:
- WEB_SHIP
- WEB_PICKUP
- WEB_SDD
sort: '-order.createdAt'
properties:
filters:
items:
oneOf:
- $ref: '#/components/schemas/valueSearchFilter'
- $ref: '#/components/schemas/valuesSearchFilter'
maxItems: 50
minItems: 0
type: array
sort:
default: '-order.createdAt'
description: >-
Field or property name to sort the results. + represents ascending
and - represents descending order of sorting.
example: +order.createdAt
pattern: (^[+-]order\.[a-zA-Z.\-_]*)(,([+-]order\.[a-zA-Z.\-_]*)){0,}
type: string
required:
- filters
type: object
orderShipInfo:
description: An object containing an orders shipment details.
properties:
attributes:
description: >-
User defined custom attributes. This is a placeholder for additional
info (in key-value pairs).
example:
giftMessage: '[]'
type: object
discounts:
items:
$ref: '#/components/schemas/shippingDiscount'
type: array
estimatedDeliveryDate:
description: Estimated delivery time (UTC) provided by carrier
example: '2022-05-12T09:30:31.198Z'
format: date-time
type: string
estimatedShipDate:
description: Estimated shipping time (UTC) provided by merchant
example: '2022-05-12T09:30:31.198Z'
format: date-time
type: string
isInvoiced:
default: false
description: >-
**true:** At least one captured invoice is created by Invoice
service. **false:** Captured invoice is not created.
example: true
type: boolean
locationNumber:
description: >-
Unique value to identify ship-from or Buy Online Pickup from Store
location. This must be the locationNumber stored in the fabric
Location service.
example: WH334
type: string
pickups:
description: Order pickup details
items:
$ref: '#/components/schemas/orderPickup'
type: array
shipMethod:
description: Shipping method
example: Parcel post delivery
type: string
shipToAddress:
$ref: '#/components/schemas/address'
shipToDiscount:
description: Merchant-defined shipping discount amount
example: 12.6
format: double
type: number
shipToDiscountInCurrencies:
items:
description: >-
The shipping discount applied to an order, itemized by each
currency used within that order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
shipToId:
description: >-
System-generated UUID associated with `shipInfo`, generated from CnC
service. **Note**: An order can have multiple ship-to (delivery)
locations and items going to the same location have one `shipToId`.
example: b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569
type: string
shipToPrice:
description: Merchant-defined shipping cost
example: 20
format: double
type: number
shipToPriceInCurrencies:
items:
description: >-
The total shipping cost, itemized by each currency used within the
order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
shipToTaxTotal:
description: Total shipping tax
example: 12.6
format: double
type: number
shipToTaxTotalInCurrencies:
items:
description: >-
The total tax applied to shipping costs, itemized by each currency
used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
shipToType:
description: >-
Type of shipping address. There are no pre-defined values; the
possible values are SDD (same day delivery), point-of-sale (POS),
etc.
example: SHIP_TO_ADDRESS
type: string
shipToUnitPrice:
description: A number indicating the ship to unit price.
example: 20
format: double
type: number
shipToUnitPriceInCurrencies:
items:
description: >-
The unit price for shipping, itemized by each currency used within
the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
shipmentInstructions:
description: Shipment instructions
example: Handle with care
type: string
taxCode:
description: Applicable tax code, varies from state to state
example: FR01
type: string
taxDetails:
items:
$ref: '#/components/schemas/taxDetail'
type: array
required:
- shipToId
type: object
orderStatusUpdateRequest:
type: object
description: Request to update order status using state machine
properties:
statusCode:
type: string
description: Action code representing the next step in the flow
example: RELEASE_HOLD_EXTERNAL
statusDescription:
type: string
description: Optional description for the status update
example: Order created and ready for processing
required:
- statusCode
orderUpdatePaymentStatusConnectorInfo:
description: Order update payment status request connector info model
properties:
connectorName:
description: Connector name
example: checkout
type: string
eventId:
description: Event ID
example: abc12345
type: string
paymentMethodType:
description: Payment method type
example: Visa
type: string
type: object
orderUpdatePaymentStatusRequestBalances:
description: Order update payment status request balances model
properties:
authorized:
description: Authorized amount
example: 123.2
format: double
type: number
capturable:
description: Amount authorized but pending to be captured
example: 12.2
format: double
type: number
captured:
description: Captured amount
example: 13.2
format: double
type: number
refundable:
description: Refundable amount. That is, pending refund.
example: 23.22
format: double
type: number
refunded:
description: Refunded amount
example: 3.2
format: double
type: number
type: object
pagination:
description: Pagination response
properties:
count:
description: Total number of search results
example: 1000
format: int32
type: integer
limit:
default: 10
description: Maximum number of records per page
example: 10
format: int32
maximum: 100
minimum: 1
type: integer
offset:
default: 0
description: >-
Number of records to skip before returning all records. For example,
`offset=20, limit=10` returns records 21-30.
example: 1
format: int32
minimum: 0
type: integer
type: object
paymentAuthorizationRequest:
description: Payment Authorization request model
properties:
force:
default: false
description: >-
Ignore validation rules and force request to call the payment
authorization
example: false
type: boolean
orders:
description: orders object
items:
$ref: '#/components/schemas/orderPaymentAuthorizationResource'
type: array
sync:
default: false
description: Process request in synchronous mode
example: false
type: boolean
type: object
paymentAuthorizationResource:
description: Order payment authorization request model
properties:
paymentCounter:
description: Identify the specific payment for authorization.
example: 1
format: int32
type: integer
type: object
paymentAuthorizationResponse:
description: Response model for Payment Authorization request
properties:
orders:
description: orders object
items:
$ref: '#/components/schemas/orderPaymentAuthorizationResource'
type: array
type: object
paymentCounterRefundInfo:
description: An object containing payment counter refund details.
properties:
amount:
description: Final refunded amount
example: 34.56
format: double
type: number
amountInCurrencies:
items:
description: >-
the payment counter refund amount, itemized by each currency used
within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
paymentCounter:
description: Unique incremented number for this payment object.
example: 1
format: int32
type: integer
type: object
paymentDetails:
description: An object containing payment details.
properties:
body:
$ref: '#/components/schemas/paymentDetailsResponseBody'
paymentStatusCode:
description: >-
Status code for payment. There are no pre-defined values; possible
values are 200, 400, 402, etc.
example: '200'
type: string
type: object
paymentReference:
description: Payment details for order
properties:
paymentCounter:
description: >-
A sequential or incremental counter associated with a payment for an
order. Applicable in refund scenarios to identify the specific
payment for refund.
example: 1
format: int32
type: integer
amount:
description: Payment refund amount
example: 60
format: double
type: number
amountInCurrencies:
items:
description: Payment refund amount in currencies
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
paymentDetailsResponseBody:
description: Payment info
properties:
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
example:
key: value
type: object
errors:
description: Error details
items:
additionalProperties:
description: Error map
example:
key: value
type: object
description: Error map
example:
key: value
type: object
type: array
responseCode:
description: Response code such as success, OK, or failure
example: OK
type: string
status:
description: Payment status such as Authorized, Captured, etc.
example: Authorized
type: string
transactionId:
description: >-
Transaction ID such as the point-of-sale system's version of the
`orderId`.
example: '328942333412'
type: string
transactionTimestamp:
description: Transaction time (UTC) when the payment was successful
example: 2022-04-10T23:00:45:12.111Z
type: string
type: object
paymentResponse:
description: Payment information
properties:
amount:
description: Transaction amount for the payment operation
example: -12.4
type: number
amountInCurrencies:
description: >-
The details of the `CurrencyList`, itemized by each currency used
within the order.
items:
$ref: '#/components/schemas/amountInCurrency'
properties:
empty:
type: boolean
type: array
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
example:
key: value
type: object
data:
$ref: '#/components/schemas/paymentDetails'
id:
description: ID provided by payment gateway in response to payment operation
example: '328942333412'
type: string
paymentId:
description: >-
Merchant-provided unique identifier for a payment based on payment
connector. When omitted, this value will be generated by fabric in
UUID format.
example: '328942333412'
type: string
paymentLogId:
description: ID generated by fabric to uniquely identify the payment log
example: '328942333412'
type: string
paymentLogRefId:
description: Payment reference log ID with which this record is associated
example: '328942333412'
type: string
status:
description: Payment status such as Authorized, Captured, etc.
example: Authorized
type: string
type:
description: Transaction type such as VOID, CAPTURED, REDUND, etc.
example: REFUND
type: string
type: object
pickupRequest:
description: An object containing pickup details.
properties:
email:
description: Contact person's email
example: test@example.com
type: string
name:
$ref: '#/components/schemas/orderContactName'
phone:
$ref: '#/components/schemas/orderContactPhone'
pickupType:
description: Order pickup type
enum:
- PRIMARY
- ALTERNATE
example: PRIMARY
type: string
type: object
policyFeeResource:
description: Policy fee
properties:
amount:
description: Fee applicable for the policy
example: 33.9
format: double
type: number
amountInCurrencies:
items:
$ref: '#/components/schemas/amountInCurrency'
type: array
currency:
description: Three-letter currency code as defined by ISO-4217
example: USD
type: string
platinumFee:
description: >-
Fees applicable for return, cancellation, or exchange of an item as
per the policy
example: 33.9
format: double
type: number
type: object
quantityInStatus:
description: Item quantity for each status
properties:
cancelled:
description: Cancelled quantity of given item
example: 10
format: int32
type: integer
created:
description: Ordered quantity of given item
example: 10
format: int32
type: integer
delivered:
description: Delivered quantity of given item
example: 10
format: int32
type: integer
hold:
description: Held quantity of given item
example: 10
format: int32
type: integer
pendingShipped:
description: Pending quantity of given item
example: 10
format: int32
type: integer
returned:
description: Returned quantity of given item
example: 10
format: int32
type: integer
shipped:
description: Shipped quantity of given item
example: 10
format: int32
type: integer
type: object
reasonCodeAndDescription:
description: Return or exchange reason
properties:
code:
description: >-
Reason code for return, cancellation, or exchange. Values are
configurable as per requirement.
example: 1DMG
type: string
description:
description: Brief description for the return `code`
example: Damaged
type: string
type: object
refundDetailResource:
description: >-
Used for credit rules. This resource captures the split of fees and tax
refunds at the item and order level.
properties:
amount:
description: Refund Amount
example: '-10.'
format: double
type: number
amountInCurrencies:
items:
description: >-
The total refund amount, itemized by each currency used within the
order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
name:
description: The name of the fee or tax.
example: Name
type: string
type:
description: Type of refund
example: ITEM
type: string
type: object
returnFeeDetail:
description: An object containing return fee details.
properties:
amount:
description: Merchant-defined return amount
example: 34.56
format: double
type: number
amountInCurrencies:
items:
$ref: '#/components/schemas/amountInCurrency'
type: array
name:
description: Fee name
example: RETURN_FEE
type: string
reason:
description: Merchant-defined return reason
example: Return fee
type: string
type:
description: Return fee type
enum:
- TAX
- DISCOUNT
- FEE
- ITEM
- ADJUSTMENT
example: FEE
type: string
type: object
returnItem:
description: An object containing return details for an item.
properties:
attributes:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info in key-value pairs.
example:
fraudCheckSessionId: 59f1d2b88de74aef96d3ec900ad548e0
fraudStatus: FRAUD_PASS
type: object
exchange:
$ref: '#/components/schemas/returnsExchangeData'
fees:
items:
$ref: '#/components/schemas/returnFeeDetail'
type: array
isPolicyOverride:
description: '**true:** Disable policy check. **false:** Enable the policy check.'
example: true
type: boolean
orderLineItemId:
description: Unique identifier for each item in order
example: '1'
type: string
quantity:
description: Returned quantity of the given item
example: 1
format: int32
type: integer
reasonCode:
description: Reason code for return, varies from merchant to merchant.
example: Incorrect order
type: string
refundAmount:
description: Merchant-defined total refund amount
example: 21.5
format: double
type: number
refundAmountInCurrencies:
items:
$ref: '#/components/schemas/amountInCurrency'
type: array
refunds:
items:
$ref: '#/components/schemas/returnFeeDetail'
type: array
returnAmountInCurrencies:
items:
$ref: '#/components/schemas/amountInCurrency'
type: array
returnType:
description: Return type
enum:
- PENDING
- PROCESSING
- REJECTED
- RECEIVED
example: RECEIVED
type: string
scannedAt:
description: Scanned time of return (UTC)
example: '2022-07-11T15:03:14.642Z'
format: date-time
type: string
shipmentId:
description: 24-character system-generated shipment ID
example: 62b37697c67b204dd18a7465
type: string
shipmentLineId:
description: Unique identifier for each item in the shipment
example: '12'
type: string
subReasonCode:
description: Sub-reason code for return, for another layer of classification
example: Incorrect specification
type: string
required:
- orderLineItemId
- quantity
- returnType
- scannedAt
- shipmentId
- shipmentLineId
type: object
returnItemResponse:
description: Return details
properties:
lineItemId:
description: >-
Merchant-defined unique identifier for each item in an order. When
omitted, fabric will generate it (in UUID format) during order
creation.
example: 62f3dfc438bcab1951be0a19
type: string
policyCode:
description: >-
Merchant-defined policy code, varies from merchant to merchant. If
omitted, the default policy is used.
example: policyCode
type: string
refundAmount:
description: Merchant-defined total refund amount
example: 21.5
format: double
type: number
returnQuantity:
description: Returned quantity of given item
example: 2
format: int32
type: integer
returnStatus:
description: Return status
enum:
- VALID
- POLICY_VIOLATION
- PENDING
- PROCESSING
- REJECTED
example: VALID
type: string
type: object
returnOrderResponse:
description: An object containing the details of a returned order.
properties:
items:
description: Item details
items:
$ref: '#/components/schemas/returnItemResponse'
type: array
refundStatus:
description: Refund status
enum:
- REFUND_INITIATED
- REFUND_SUCCESS
- REFUND_FAILURE
- REFUND_PENDING
example: REFUND_INITIATED
type: string
totalRefundAmount:
description: Merchant-defined total refund amount
example: 21.5
format: double
type: number
totalRefundAmountInCurrencies:
items:
$ref: '#/components/schemas/amountInCurrency'
type: array
type: object
returnsExchangeData:
description: Item exchange and return details.
properties:
isRefundingDisabled:
description: '**true:** Refund is disabled. **false:** Refund is enabled.'
example: true
type: boolean
items:
description: Item to be shipped in exchange for returned item
items:
$ref: '#/components/schemas/returnsExchangeItem'
type: array
refund:
$ref: '#/components/schemas/orderRefund'
required:
- items
type: object
returnsExchangeItem:
description: Item details for return or exchange
properties:
initiateReshipment:
description: >-
**true:** Proceed with reshipment immediately, do not wait for
return. **false:** Proceed with the reshipment after return is
successful.
example: true
type: boolean
itemId:
description: Unique identifier of item from fabric Products (PIM) service
example: 1234
format: int32
type: integer
itemUnitPrice:
description: Item's unit price
example: 10
format: double
type: number
itemUnitPriceInCurrencies:
items:
$ref: '#/components/schemas/amountInCurrency'
type: array
quantity:
description: Number of items to be exchanged.
example: 10
format: int32
type: integer
sku:
description: Stock Keeping Unit (SKU), unique identifier of item
example: P1234
type: string
required:
- itemId
- quantity
- sku
type: object
requestReferenceContextResource:
type: object
description: Request reference context information
properties:
id:
type: string
description: System-generated unique identifier (UUID format)
example: a05b72dc-78d8-4ea4-90fc-2fe6a1fe1111
type:
type: string
requestId:
type: string
description: request id
readOnly: true
requestTime:
type: string
format: date-time
description: System-generated order creation time
example: '2022-04-12T09:30:31.198Z'
attributes:
type: object
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key: value pairs).
example:
attribute: 'N'
someFlag: true
searchResponse:
description: Search response
properties:
data:
items:
$ref: '#/components/schemas/orderResponse'
type: array
pagination:
$ref: '#/components/schemas/pagination'
type: object
shipmentInvoiceResource:
description: Shipment Invoice resource
properties:
invoiceId:
description: Unique Id of the invoice
example: 62ff5c0bec0aed3c86202c32
type: string
invoiceNumber:
description: Unique number of the invoice
example: '23940791'
type: string
invoicedAt:
description: Date when order invoiced
example: '2022-08-01T20:03:28.483971941Z'
format: date-time
type: string
required:
- invoiceId
type: object
shippingDiscount:
description: An object containing shipping discount details.
properties:
amount:
description: Discounted amount for the given `quantity`
example: 2.99
format: double
type: number
amountInCurrencies:
items:
description: >-
The discounted amount for the specified quantity, itemized by each
currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
promotionCode:
description: >-
Promotion code used by shoppers to take advantage of an ongoing
promotion.
example: SHIPFREE
type: string
promotionId:
description: >-
Unique promotion ID either from fabric Offers service or an external
Offers service. When fabric Offers service is used, this is the
24-character system-generated promotion ID returned in the response
of the create promotion endpoint.
example: SHIPFREE
type: string
promotionName:
description: Promotion name
example: Free Shipping
type: string
quantity:
description: >-
Number of discounted items in an order such as `buy 2 get 1 free`.
In this case `1` is the discounted quantity.
example: 1
format: int32
type: integer
unit:
description: Indicates whether the discount is in amount or percentage
example: AMOUNT_OFF
type: string
value:
description: Value corresponding to `unit`
example: 10
format: int32
type: integer
type: object
taxDetail:
description: An object containing tax information.
properties:
amount:
description: Tax amount
example: 34.56
format: double
type: number
amountInCurrencies:
items:
description: The tax amount, itemized by each currency used within the order.
$ref: '#/components/schemas/amountInCurrencyResource'
type: array
attributes:
additionalProperties:
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
type: object
description: >-
Merchant-defined custom attributes. This is a placeholder for
additional info (in key-value pairs).
type: object
currency:
default: USD
description: Three-letter currency code as defined by ISO-4217
example: USD
type: string
name:
description: Applied tax name
example: STATE
type: string
rate:
description: Rate
example: 10
format: double
type: number
rateType:
description: Rate type
example: PERCENTAGE
type: string
taxCode:
description: Tax code applied
example: FR01
type: string
type: object
trackingDetailsResource:
type: object
description: Tracking details
properties:
trackingNumber:
type: string
description: Tracking number
example: 1ZH4E331YW37690225
trackingURL:
type: string
description: Tracking URL
example: https://www.ups.com/track?tracknum=1ZH4E331YW37690225
updateShipToAddressRequest:
type: object
description: Request to update ship-to address for a specific shipToId
properties:
name:
$ref: '#/components/schemas/orderContactName'
email:
type: string
description: Contact person's email
example: test@example.com
phone:
$ref: '#/components/schemas/orderContactPhone'
type:
type: string
description: Address type
example: Home
addressLine1:
type: string
description: Address line 1
example: 123
addressLine2:
type: string
description: Address line 2
example: Suite 100
addressLine3:
type: string
description: Address line 3
example: Seventh floor
addressLine4:
type: string
description: Address line 4
example: 'Attention: Pat E. Kake'
city:
type: string
description: City name
example: Seattle
region:
type: string
description: Region or state
example: WA
countryCode:
type: string
description: ISO 3166-1 alpha-2 based country code
example: US
postalCode:
type: string
description: Postal or ZIP code
example: 98121
latitude:
type: number
format: double
description: >-
Address latitude, used with `longitude` to specify the address
location. Decimal degrees format; negative is degrees
South.
**Note:**Value must be between -90 and 90, both inclusive.
example: 47.6205
longitude:
type: number
format: double
description: >-
Address longitude, used with `latitude` to specify the address
location. Decimal degrees format; negative is degrees
South.
**Note:**Value must be between -180 and 180, both
inclusive.
example: -122.3493
attributes:
type: object
description: >-
User defined custom attributes. This is a placeholder for additional
info (in key: value pairs).
example:
giftMessage: '[]'
required:
- addressLine1
- city
- countryCode
- latitude
- longitude
- postalCode
- region
- type
updateCustomerRequest:
description: Update customer info request
properties:
accountId:
description: >-
Customer's loyalty account ID or external identifier that is used to
track their loyalty program activity and rewards earned.
example: 62272e917b12209e68751d94
type: string
company:
description: Shopper's company name. This may be used for company discounts.
example: Demo Inc
type: string
email:
description: Contact person's email
example: test@example.com
type: string
employeeId:
description: Employee (ID or name) who initiated an update request
example: 62272e917b12209e68751d94
type: string
name:
$ref: '#/components/schemas/orderContactName'
phone:
$ref: '#/components/schemas/orderContactPhone'
userId:
description: >-
Identifier of the logged in user who initiated the request. This
could be from either fabric Identity service or an external Identity
service.
example: 62272e917b12209e68751d94
type: string
type: object
updatePaymentBillToAddressRequest:
type: object
description: Request to update bill-to address for a specific payment in an order.
properties:
name:
$ref: '#/components/schemas/orderContactName'
email:
type: string
description: Contact person's email
example: test@example.com
phone:
$ref: '#/components/schemas/orderContactPhone'
type:
type: string
description: Address type
example: Home
addressLine1:
type: string
description: Address line 1
example: 123
addressLine2:
type: string
description: Address line 2
example: Suite 100
addressLine3:
type: string
description: Address line 3
example: Seventh floor
addressLine4:
type: string
description: Address line 4
example: 'Attention: Pat E. Kake'
city:
type: string
description: City name
example: Seattle
region:
type: string
description: Region or state
example: WA
countryCode:
type: string
description: ISO 3166-1 alpha-2 based country code
example: US
postalCode:
type: string
description: Postal or ZIP code
example: 98121
latitude:
type: number
format: double
description: >-
Address latitude, used with `longitude` to specify the address
location. Decimal degrees format; negative is degrees
South.
**Note:**Value must be between -90 and 90, both inclusive.
example: 47.6205
longitude:
type: number
format: double
description: >-
Address longitude, used with `latitude` to specify the address
location. Decimal degrees format; negative is degrees
South.
**Note:**Value must be between -180 and 180, both
inclusive.
example: -122.3493
attributes:
type: object
description: >-
User defined custom attributes. This is a placeholder for additional
info (in key: value pairs).
example:
giftMessage: '[]'
required:
- addressLine1
- city
- countryCode
- latitude
- longitude
- postalCode
- region
- type
updateOrderFeesAndTaxesRequest:
type: object
properties:
feeTotal:
type: number
feeTotalInCurrencies:
type: array
items:
$ref: '#/components/schemas/amountInCurrencyResource'
fees:
type: array
items:
$ref: '#/components/schemas/orderFeeDetail'
taxTotal:
type: number
taxTotalInCurrencies:
type: array
items:
$ref: '#/components/schemas/amountInCurrencyResource'
items:
type: array
items:
$ref: >-
#/components/schemas/updateOrderFeesAndTaxesRequestUpdateItemFeesAndTaxesResource
shipInfo:
type: array
items:
$ref: >-
#/components/schemas/updateOrderFeesAndTaxesRequestUpdateShipInfoFeesAndTaxesResource
updateOrderFeesAndTaxesRequestUpdateItemFeesAndTaxesResource:
type: object
properties:
lineItemId:
type: string
itemTaxTotal:
type: number
itemTaxTotalInCurrencies:
type: array
items:
$ref: '#/components/schemas/amountInCurrencyResource'
taxes:
type: array
items:
$ref: '#/components/schemas/taxDetail'
itemFeeTotal:
type: number
itemFeeTotalInCurrencies:
type: array
items:
$ref: '#/components/schemas/amountInCurrencyResource'
fees:
type: array
items:
$ref: '#/components/schemas/itemFeeDetails'
updateOrderFeesAndTaxesRequestUpdateShipInfoFeesAndTaxesResource:
type: object
properties:
shipToId:
type: string
shipToTaxTotal:
type: number
shipToTaxTotalInCurrencies:
type: array
items:
$ref: '#/components/schemas/amountInCurrencyResource'
taxes:
type: array
items:
$ref: '#/components/schemas/taxDetail'
updatePaymentRequest:
description: Update payment status model
properties:
balances:
$ref: '#/components/schemas/orderUpdatePaymentStatusRequestBalances'
connectorInfo:
$ref: '#/components/schemas/orderUpdatePaymentStatusConnectorInfo'
paymentIdentifier:
description: Payment identifier
example: '12321343223'
type: string
status:
description: Payment status such as Authorized, Captured, etc.
example: Authorized
type: string
required:
- paymentIdentifier
type: object
valueSearchFilter:
allOf:
- $ref: '#/components/schemas/orderSearchFilter'
- properties:
value:
description: Search criteria using a single value
example: ORDER_CREATE
oneOf:
- description: Target record's non-numeric identifier
example: ORDER_CREATE
type: string
- description: Target record's numeric identifier
example: 112233
format: int64
type: number
- description: Target record's numeric identifier
example: 1122.33
format: double
type: number
type: object
description: >-
Criteria to find orders by a single value. Condition between `field` and
`value` is anything except IN and NIN when `valueSearchFilter` is used.
required:
- condition
- field
type: object
valuesSearchFilter:
allOf:
- $ref: '#/components/schemas/orderSearchFilter'
- properties:
values:
items:
description: Search criteria using multiple values
example: ORDER_CREATE
oneOf:
- description: Target record's non-numeric identifier
example: ORDER_CREATE
type: string
- description: Target record's numeric identifier
example: 112233
format: int64
type: number
- description: Target record's numeric identifier
example: 1122.33
format: double
type: number
maxItems: 25
minItems: 1
type: array
type: object
description: >-
Criteria to find orders using multiple values. Condition between `field`
and `values` is either IN or NIN when `valuesSearchFilter` is used.
required:
- condition
- field
type: object
securitySchemes:
authorization:
bearerFormat: JWT
scheme: bearer
type: http
externalDocs:
description: Find out more about fabric Orders (also called OMS)
url: https://developer.fabric.inc/v3/docs/orders-overview
info:
contact:
email: support@fabric.inc
name: fabric Support Team
description: >-
fabric **Orders** API is a scalable multi-tenant service designed to
streamline your order management process. Orders API is a REST and JSON
driven interface enabling retailers to create orders directly from online
Storefronts and Point-of-Sale systems, and serve as records of purchase
transactions to permit retailers to operate against a standard schema with
varied purchase channels.
fabric Orders API creates orders real time in the orders database, unifying the order data for users to streamline order lifecycle orchestration and customer service operations. It offers a range of features including the ability to create orders, get orders, update pickup details, and track orders, as well as search for existing orders. Also, the Orders API makes it easy to check eligibility of return, cancel, and exchange requests as well process them, if eligible. In addition, you can flag fraudulent orders based on due diligence, and either release them from hold or cancel them altogether. The appeasement feature helps you resolve any issues that may arise with an order and keep your customers happy.
license: name: fabric API License url: https://fabric.inc/api-license termsOfService: https://fabric.inc/terms-of-use title: fabric Orders API version: 3.0.0 x-audience: external-public openapi: 3.0.1 x-mint: mcp: enabled: true paths: /orders: post: description: >- This endpoint creates a new order in the fabric Orders (OMS) system, regardless of whether it originates from fabric CnC service or an external system. The response includes an order ID, which is required for subsequent calls such as updating pickup information, getting order details, verifying eligibility for order cancellations, returns, exchanges, as well as creating appeasements, and processing order returns, cancellations, and exchanges. operationId: createOrder parameters: - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/createOrderRequest' required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/orderResponse' description: Created headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Create New Order tags: - Orders /orders/actions/authorize-payments: post: description: >- This endpoint is used synchronously or asynchronously for authorizing order payments pending for authorization. operationId: authorizeOrderPayments parameters: - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/paymentAuthorizationRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/paymentAuthorizationResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Authorize Order Payments tags: - Payments /orders/{orderIdentifierType}/{orderIdentifierValue}/actions/update-status: post: tags: - Orders summary: Update an Order’s Status with State Transition description: >- Performs a state transition on an order using the order state machine. The provided status code must correspond to a valid action available from the order’s current state. Orders that are already in or beyond the **ORDER_ALLOCATED** state cannot be updated using this endpoint. operationId: updateOrderStatus parameters: - name: orderIdentifierType in: path description: >- The type of identifier used to locate the order. Supported values are `order-id`, `order-number`, and `order-external-id`. required: true schema: type: string example: ORDER0001 - name: orderIdentifierValue in: path description: >- The value of the order identifier corresponding to the specified `orderIdentifierType`. required: true schema: type: string example: ORDER0001 - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderStatusUpdateRequest' required: true responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/orderResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '404': description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: message: Order not found type: CLIENT_ERROR '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/{orderIdentifierType}/{orderIdentifierValue}/actions/update-fees-and-taxes: post: tags: - Orders summary: Update Order Fees and Taxes description: >- Recalculates and updates fee and tax totals for an existing order. The request payload allows you to provide updated fee and tax values at the order, item, and ship-to levels. Only fields included in the payload are applied. Use `overrideAllArrayFields` to control whether array fields in the payload replace the existing arrays or are merged. operationId: updateFeesAndTaxes_1 parameters: - name: orderIdentifierType in: path description: >- The type of identifier used to locate the order. Supported values: `order-id`, `order-number`, `order-external-id`. required: true schema: type: string example: order-id - name: orderIdentifierValue in: path description: >- The value of the order identifier that corresponds to `orderIdentifierType`. required: true schema: type: string example: 5349b4ddd2781d08c09890f4 - name: overrideAllArrayFields in: query description: >- Controls how array fields in the request body are applied. When true, arrays provided in the payload replace the existing arrays on the order. When false, array updates are merged/partially applied based on the service's update behavior. required: false schema: type: boolean default: true example: true - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/updateOrderFeesAndTaxesRequest' responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/orderResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/{orderIdentifierType}/{orderIdentifierValue}/ship-info/{shipToId}/ship-to-address: put: tags: - Orders summary: Update a Ship-to Address for a Specific Shiptoid description: >- Updates the ship-to address for a specific `shipToId` on an order. Only the address fields present in the payload are updated. If address enrichment (for example Google Maps) is configured, address validation and automatic latitude/longitude enrichment may run. If you are using Geography and Zones, the fulfillment zone is updated and a soft reservation is triggered to move inventory to the correct network. operationId: updateShipToAddress parameters: - name: orderIdentifierType in: path description: >- The type of identifier used to locate the order. Supported values: `order-id`, `order-number`, `order-external-id`. required: true schema: type: string example: order-id - name: orderIdentifierValue in: path description: >- The value of the order identifier that corresponds to the `orderIdentifierType`. required: true schema: type: string example: ORDER0001 - name: shipToId in: path description: >- Unique identifier (UUID) of the ship-to location within the order (`shipInfo`). required: true schema: type: string example: b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569 - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/updateShipToAddressRequest' responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/orderResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '404': description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR message: Order or shipToId not found '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/{orderIdentifierType}/{orderIdentifierValue}/payments/{paymentCounter}/bill-to-address: put: tags: - Orders summary: Update Bill-to Address for a Specific Payment description: >- Updates the bill-to address for a specific payment on an order, identified by `paymentCounter`. Only address fields included in the payload are updated. operationId: updatePaymentBillToAddress parameters: - name: orderIdentifierType in: path description: >- The type of identifier used to locate the order. Supported values: `order-id`, `order-number`, `order-external-id`. required: true schema: type: string example: order-id - name: orderIdentifierValue in: path description: >- The value of the order identifier that corresponds to `orderIdentifierType`. required: true schema: type: string example: 5349b4ddd2781d08c09890f4 - name: paymentCounter in: path description: >- The sequential counter identifying the specific payment within the order (used to select which payment's bill-to address to update). required: true schema: type: integer format: int32 example: 1 - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/updatePaymentBillToAddressRequest' responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/orderResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '404': description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR message: Order or payment not found '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/{orderIdentifierType}/{orderIdentifierValue}/payments/{paymentCounter}/payment-logs: put: tags: - Orders summary: Add a Payment Log Entry for a Specific Payment description: >- Adds a new payment log entry to the logs for a specific payment on an order, identified by `paymentCounter`. Payment logs capture when a payment is charged or credited, and include provider response details and metadata. Only fields present in the payload are applied. operationId: addPaymentLog parameters: - name: orderIdentifierType in: path description: >- The type of identifier used to locate the order. Supported values: `order-id`, `order-number`, `order-external-id`. required: true schema: type: string example: order-id - name: orderIdentifierValue in: path description: >- The value of the order identifier that corresponds to `orderIdentifierType`. required: true schema: type: string example: 5349b4ddd2781d08c09890f4 - name: paymentCounter in: path description: >- The sequential counter identifying the specific payment within the order (used to select which payment to attach the log to). required: true schema: type: integer format: int32 example: 1 - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/addPaymentLogRequest' responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/orderResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '404': description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR message: Order or payment not found '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/{orderIdType}/{orderIdValue}/actions/update-attributes: post: tags: - Orders summary: Update Order Attributes by Order Identifier description: > Updates order attributes, typically used by the integration layer to modify or synchronize external system–related information. **Note:** - Use this endpoint if you have the order ID, order number, or external order ID. - If you only have an order number, set `orderIdType` to `order-number`. operationId: updateOrderAttributesByOrderIdentifier parameters: - name: orderIdType in: path description: | The type of order identifier used to locate the order. Supported values: - `order-id` - `order-number` - `order-external-id` required: true schema: type: string enum: - order-id - order-number - order-external-id example: order-id - name: orderIdValue in: path description: The value of the specified order identifier. required: true schema: type: string example: ORDER0001 - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderAttributesUpdateRequest' required: true responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/orderResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/actions/update-customer: post: description: >- In many scenarios, customer details may change over time. For example, a customer might change their email, phone, or company affiliation.By providing the order IDs and the updated customer details, this endpoint facilitates updating customer info for the given order IDs. This ensures order-related communication reaches the customer and they get timely customer service.
operationId: updateCustomerInfoInOrderList parameters: - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/updateCustomerRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/customerResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Update Customer Details for Given Order Ids tags: - Orders /orders/order-number/{orderNumber}: get: description: >- As a merchant, you may need to review or monitor an order to answer customer inquiries, resolve a complaint or for analytics and reporting. With this endpoint, you can get order details by order number.**Note**: If you do not have the order number, use the corresponding order ID-based endpoint - `GET /orders/{orderId}`.
operationId: getOrderByNumber parameters: - description: Merchant-defined order identifier example: Order-320000001 in: path name: orderNumber required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/orderResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Order with orderNumber is not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Get Order by Order Number tags: - Orders /orders/order-number/{orderNumber}/actions/cancel: post: description: > Cancels an order when a customer's cancellation request is determined to be eligible. This endpoint processes the cancellation based on the provided **order number**. **Note:** - Use this endpoint only if you have the order number. - If you have the order ID or external order ID instead, use the corresponding identifier-based endpoint: `POST /orders/{orderIdType}/{orderIdValue}/actions/cancel`. operationId: cancelOrderByOrderNumber parameters: - description: Merchant-defined order identifier example: 123k4h123k in: path name: orderNumber required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderCancellationRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/orderResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Order not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '412': content: application/json: example: message: >- Order can't be cancelled as there is no line item available for cancellation type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Precondition failed headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Cancel Order by Order Number tags: - Cancellations /orders/{orderIdType}/{orderIdValue}/actions/create-appeasement: post: tags: - Appeasements summary: Create an Appeasement by Order Identifier description: > Creates an appeasement (such as a partial refund or credit) when a customer is dissatisfied with their shopping experience. This endpoint allows you to initiate an appeasement request by providing an order identifier. **Note:** - Use this endpoint if you have the order ID, order number, or external order ID. - If you only have an order number, you can still use this endpoint by setting `orderIdType` to `order-number`. operationId: createAppeasementByOrderIdentifier parameters: - name: orderIdType in: path description: | The type of order identifier used to locate the order. Supported values: - `order-id` - `order-number` - `order-external-id` required: true schema: type: string enum: - order-id - order-number - order-external-id example: order-id - name: orderIdValue in: path description: The value of the specified order identifier. required: true schema: type: string example: ORDER0001 - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderCreateAppeasementRequest' required: true responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/appeasementResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '404': description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: message: Not found type: CLIENT_ERROR '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/{orderIdType}/{orderIdValue}/actions/check-appeasement-eligibility: post: tags: - Appeasements summary: Check Appeasement Eligibility by Order Identifier description: > Checks whether a given order is eligible for an appeasement (such as a partial refund or credit). This endpoint evaluates eligibility based on the provided order identifier. **Note:** - Use this endpoint if you have the order ID, order number, or external order ID. - If you only have an order number, set `orderIdType` to `order-number`. operationId: checkAppeasementEligibilityByOrderIdentifier parameters: - name: orderIdType in: path description: | The type of order identifier used to locate the order. Supported values: - `order-id` - `order-number` - `order-external-id` required: true schema: type: string enum: - order-id - order-number - order-external-id example: order-id - name: orderIdValue in: path description: The value of the specified order identifier. required: true schema: type: string example: ORDER0001 - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/appeasementEligibilityResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '404': description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: message: Order not found type: CLIENT_ERROR '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/order-number/{orderNumber}/actions/check-appeasement-eligibility: post: description: >- This endpoint checks for the appeasement eligibility of an order by order number. operationId: checkAppeasementEligibilityByOrderNumber parameters: - description: Merchant-defined order identifier example: ORDER0000111 in: path name: orderNumber required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/appeasementEligibilityResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Order not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Check Appeasement Eligibility by Order Number tags: - Appeasements /orders/order-number/{orderNumber}/actions/check-cancel-eligibility: post: description: >- Either customer may initiate cancellation due to an incorrect order placement or as a merchant, you may initiate cancellation due to product unavailability, pricing errors, payment failure, or shipping restrictions. Before processing cancellation, its crucial to determine the eligibility of the cancellation request.This endpoint gets the eligibility of the cancellation request by order number. You can additionally specify `lineItemIds` to get the eligibility of specific line items.
**Note**: If you do not have order number, use the corresponding order ID-based endpoint - `/orders/{orderId}/actions/check-cancel-eligibility`.
operationId: getCancelOrderEligibilityByOrderNumber parameters: - description: The merchant-defined order identifier. example: 123k4h123k in: path name: orderNumber required: true schema: type: string - description: >- The merchant-defined cancellation policy. When omitted, the default policy is used. in: query name: policyName required: false schema: type: string - description: >- The line item IDs. If specified, you'll get cancellation eligibility of the given line items. If omitted, you'll get cancellation eligibility of each item in the order. in: query name: lineItemIds required: false schema: items: type: string type: array - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/eligibilityResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Get Order Cancellation Eligibility by Order Number tags: - Cancellations /orders/{orderIdType}/{orderIdValue}/actions/create-credits: post: tags: - Credits summary: Create Credits by Order Identifier description: > Creates credits for an order when you want to issue compensation to a customer. This endpoint allows you to initiate a credit request using an order identifier. **Note:** - Use this endpoint if you have the order ID, order number, or external order ID. - If you only have an order number, set `orderIdType` to `order-number`. operationId: createCreditsByOrderIdentifier parameters: - name: orderIdType in: path description: | The type of order identifier used to locate the order. Supported values: - `order-id` - `order-number` - `order-external-id` required: true schema: type: string enum: - order-id - order-number - order-external-id example: order-id - name: orderIdValue in: path description: The value of the specified order identifier. required: true schema: type: string example: ORDER0001 - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderCreditsRequest' required: true responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/orderCreditsResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '404': description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: message: Not found type: CLIENT_ERROR '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/{orderIdType}/{orderIdValue}/actions/check-credits-eligibility: post: tags: - Credits summary: Check Credits Eligibility by Order Identifier description: > Checks whether an order is eligible for credits (for example, gift cards or store credits) in scenarios such as damaged products, late deliveries, or other qualifying conditions defined by your business policies. This endpoint allows you to verify eligibility using an order identifier, helping businesses manage credits effectively and provide appropriate compensation to customers. **Note:** - Use this endpoint if you have the order ID, order number, or external order ID. - If you only have an order number, set `orderIdType` to `order-number`. operationId: checkCreditsEligibilityByOrderIdentifier parameters: - name: orderIdType in: path description: | The type of order identifier used to locate the order. Supported values: - `order-id` - `order-number` - `order-external-id` required: true schema: type: string enum: - order-id - order-number - order-external-id example: order-id - name: orderIdValue in: path description: The value of the specified order identifier. required: true schema: type: string example: ORDER0001 - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/creditsEligibilityResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '404': description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: message: Not found type: CLIENT_ERROR '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/{orderIdType}/{orderIdValue}/actions/update-credit-status: post: tags: - Credits summary: Update Credit Status by Order Identifier description: > Updates the status of credits associated with an order. This endpoint can also be used to add notes or update additional attributes related to a credit. **Note:** - Use this endpoint if you have the order ID, order number, or external order ID. - If you only have an order number, set `orderIdType` to `order-number`. operationId: updateCreditStatusByOrderIdentifier parameters: - name: orderIdType in: path description: | The type of order identifier used to locate the order. Supported values: - `order-id` - `order-number` - `order-external-id` required: true schema: type: string enum: - order-id - order-number - order-external-id example: order-id - name: orderIdValue in: path description: The value of the specified order identifier. required: true schema: type: string example: ORDER0001 - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderCreditUpdateRequest' required: true responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/creditsResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '404': description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: message: Not found type: CLIENT_ERROR '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/order-number/{orderNumber}/actions/check-credits-eligibility: post: description: >- When processing refunds, credits such as a gift card may be offered to customers for various reasons such as damaged products, late deliveries, or other qualifying factors as per your policy.This endpoint checks the credits eligibility by order number, allowing you to manage credits effectively and provide appropriate compensation to eligible customers.
operationId: getCreditsEligibilityByOrderNumber parameters: - description: >- The merchant-defined order identifier provided by the Create Order - `POST /orders` endpoint. example: ORDER000001 in: path name: orderNumber required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/creditsEligibilityResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Check Credits Eligibility by Order Number tags: - Credits /orders/{orderIdType}/{orderIdValue}/actions/submit-return-request: post: tags: - Returns summary: Submit Return Request by Order Identifier description: > Submits a return request for an order once it has been determined that the customer's return request is eligible. This endpoint processes the return request using the specified order identifier. **Note:** - Use this endpoint if you have the order number or external order ID. - If you only have an order number, set `orderIdType` to `order-number`. - If you only have an external order ID, set `orderIdType` to `order-external-id`. operationId: submitReturnRequestByOrderIdentifier parameters: - name: orderIdType in: path description: | The type of order identifier used to locate the order. Supported values: - `order-number` - `order-external-id` required: true schema: type: string enum: - order-number - order-external-id example: order-external-id - name: orderIdValue in: path description: The value of the specified order identifier. required: true schema: type: string example: bef5680-u1245678 - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderReturnRequest' required: true responses: '201': description: Return request accepted headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/returnOrderResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '404': description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: '{"message": "Order not found, "type":"CLIENT_ERROR"" }' '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/{orderIdType}/{orderIdValue}/actions/check-exchange-eligibility: post: tags: - Returns summary: Check Order Exchange Eligibility by Order Identifier description: > Determines whether an item or order is eligible for exchange. Customers may request an exchange due to size, fit, color, or style preferences. This endpoint verifies eligibility according to your defined business policies. You can also specify a `lineItemId` to check exchange eligibility for a specific item. If omitted, eligibility is checked for each item in the order. **Note:** - Use this endpoint if you have the order number or external order ID. - If you only have an order number, set `orderIdType` to `order-number`. - If you only have an external order ID, set `orderIdType` to `order-external-id`. operationId: checkExchangeEligibilityByOrderIdentifier parameters: - name: orderIdType in: path description: | The type of order identifier used to locate the order. Supported values: - `order-number` - `order-external-id` required: true schema: type: string enum: - order-number - order-external-id example: order-external-id - name: orderIdValue in: path description: The value of the specified order identifier. required: true schema: type: string example: bef5680-u1245678 - name: policyName in: query description: | The merchant-defined exchange policy to apply. If omitted, the default policy is used. required: false schema: type: string example: RETURNS_POLICY_1 - name: lineItemId in: query description: | A single line item ID. - If specified, eligibility is checked only for that item. - If omitted, eligibility is checked for each item in the order. required: false schema: type: string example: 62f3dfc438bcab1951be0a19 - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/eligibilityResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '404': description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: message: Order withThis endpoint is used to create appeasement request by order number.
**Note**: If you do not have an order number, use the corresponding order ID-based endpoint - `POST /orders/{orderId}/actions/create-appeasement`
operationId: createAppeasementByOrderNumber parameters: - description: Merchant-defined order identifier example: 123k4h123k in: path name: orderNumber required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderCreateAppeasementRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/appeasementResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Create Appeasement by Order Number tags: - Appeasements /orders/order-number/{orderNumber}/actions/create-credits: post: description: The following endpoint is used to create credits using an order number. operationId: createCreditByOrderNumber parameters: - description: >- The merchant-defined order identifier provided during the Create Order - `POST /orders` endpoint. example: ORDER0001 in: path name: orderNumber required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderCreditsRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/orderCreditsResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Create Credits by Order Number tags: - Credits /orders/order-number/{orderNumber}/actions/fraud-cancel: post: description: >- If an order is suspected to be fraudulent, it is immediately placed on hold for verification. After verification, if its confirmed as fraudulent, this endpoint is used to cancel the order by order number.**Note**: If you do not have an order number, use the corresponding order ID-based endpoint - `POST /orders/{orderId}/actions/fraud-cancel`.
operationId: fraudOrderCancelbyOrderNumber parameters: - description: Merchant-defined order identifier example: 123k4h123k in: path name: orderNumber required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/fraudCancelRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/apiResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: An order with the orderNumber specified was not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Cancel Fraud Order by Order Number tags: - Frauds /orders/order-number/{orderNumber}/actions/fraud-release: post: description: >- If an order is suspected to be fraudulent, it is immediately placed on hold for verification. After verification, if it is confirmed as non-fraudulent, this endpoint is used to release the order from hold, by order number so that it can be processed.**Note**: When you do not have an order number, use the corresponding order ID-based endpoint - `POST /orders/{orderId}/actions/fraud-release`.
operationId: releaseFraudHoldByOrderNumber parameters: - description: Merchant-defined order identifier example: 123k4h123k in: path name: orderNumber required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/apiResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: An order with the orderNumber specified was not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Release Fraud Order tags: - Frauds /orders/order-number/{orderNumber}/actions/package-tracking-acknowledge: put: description: >- This endpoint gets acknowledgement of package tracking by order number.**Note**: If you do not have order number, use the corresponding order ID-based endpoint - `PUT /orders/{orderId}/actions/package-tracking-acknowledge`.
operationId: acknowledgeTrackingDetailsByOrderNumber parameters: - description: Merchant-defined order identifier example: 309019176 in: path name: orderNumber required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/acknowledgePackageTrackingRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/apiResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: An order with the specified orderNumber was not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Get Acknowledgement for Package Tracking by Order Number tags: - Tracking /orders/order-number/{orderNumber}/actions/submit-return-request: post: description: >- When the customers return request is determined to be eligible, this endpoint is used to process the return request.**Note**: If you do not have the order number, but have order ID, use Return order by order ID endpoint - `POST /orders/{orderId}/actions/submit-return-request`.
operationId: returnsOrderByOrderNumber parameters: - description: Merchant-defined order identifier example: Order-20000001 in: path name: orderNumber required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderReturnRequest' required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/returnOrderResponse' description: Return request accepted headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: '{"message": "Order not found, "type":"CLIENT_ERROR"" }' schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Order Return by Order Number tags: - Returns /orders/order-number/{orderNumber}/actions/update-attributes: post: description: The following endpoint is used to update attributes by order number. operationId: updateOrderAttributesByOrderNumber parameters: - description: >- The merchant-defined order identifier provided during the Create Order - `POST /orders` endpoint. example: Order-320000001 in: path name: orderNumber required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderAttributesUpdateRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/orderResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Update Shipping Information for an Existing Order by Order Number tags: - Orders /orders/order-number/{orderNumber}/actions/update-credit-status: post: description: >- The update credit status endpoint is used to update the credits status, notes, and additional credit attributes. operationId: updateCreditByOrderNumber parameters: - description: >- The merchant-defined order identifier provided during the Create Order - `POST /orders` endpoint. example: ORDER0001 in: path name: orderNumber required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderCreditUpdateRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/creditsResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Update Credit Status by Order Number tags: - Credits /orders/order-number/{orderNumber}/actions/update-payment-status: post: description: >- This endpoint is used sync order payments when transactions happen externally. Additionally, used for updating order payment status and the amount, whether it is captured, refunded or void amount.If you don't have order number, use the corresponding order ID-based endpoint - POST /orders/{orderId}/actions/update-payment-status.
operationId: updatePaymentStatusByOrderNumber parameters: - description: Merchant-defined order identifier example: 123k4h123k in: path name: orderNumber required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/updatePaymentRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/orderResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Update Status of Order Payment by Order Number tags: - Payments /orders/search: post: description: >- Search and retrieve orders using filter parameters such as order `type`, status, date range, and more. This endpoint allows customers and merchants to query past orders for review, analysis, or support.Filters must be provided in the request body. You can paginate results using `offset` and `limit`. If pagination parameters are not specified, the default response returns up to 10 orders.
operationId: getOrdersByQuery parameters: - description: >- Number of records to skip before returning records. For example, When `offset=20`, `limit=10` returns records 21-30. example: 0 in: query name: offset schema: default: 0 type: number - description: Maximum number of records per page example: 10 in: query name: limit schema: default: 10 example: 10 type: number - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderSearchRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/searchResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Search for Orders tags: - Orders /orders/{orderId}: get: description: >- As a merchant, you may need to review or monitor an order to answer customer inquiries, resolve a complaint, or for analytics and reporting. With this endpoint, you can get order details by order ID.**Note**: If you do not have the order ID, use the corresponding order number-based endpoint - `GET /orders/order-number/{orderNumber}`.
operationId: getOrder parameters: - description: >- 24-character system-generated order ID returned in the response of Create Order endpoint - `POST /orders`. example: 5349b4ddd2781d08c09890f4 in: path name: orderId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/orderResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Order with orderId is not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Get Order by Order ID tags: - Orders /orders/{orderIdType}/{orderIdValue}/actions/cancel: post: tags: - Cancellations summary: Cancel Order by Order Identifier description: > Cancels an order when a customer's cancellation request is determined to be eligible. This endpoint processes the cancellation based on the provided order identifier. **Note:** - Use this endpoint if you have the order ID, order number, or external order ID. - If you only have an order number, set `orderIdType` to `order-number`. operationId: cancelOrderByOrderIdentifier parameters: - name: orderIdType in: path description: | The type of order identifier used to locate the order. Supported values: - `order-id` - `order-number` - `order-external-id` required: true schema: type: string enum: - order-id - order-number - order-external-id example: order-id - name: orderIdValue in: path description: The value of the specified order identifier. required: true schema: type: string example: ORDER0001 - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderCancellationRequest' required: true responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/orderResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '404': description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: message: Order not found type: CLIENT_ERROR '412': description: Precondition failed headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: message: >- Order cannot be cancelled as there is no line item available for cancellation type: CLIENT_ERROR '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/{orderIdType}/{orderIdValue}/actions/check-cancel-eligibility: post: tags: - Cancellations summary: Check Order Cancellation Eligibility by Order Identifier description: > Determines whether an order is eligible for cancellation. - Customers may initiate cancellations due to incorrect order placement. - Merchants may initiate cancellations due to product unavailability, pricing errors, payment failures, or shipping restrictions. You can also specify `lineItemIds` to check cancellation eligibility for specific line items. If not provided, eligibility is checked for each item in the order. **Note:** - Use this endpoint if you have the order ID, order number, or external order ID. - If you only have an order number, set `orderIdType` to `order-number`. operationId: checkCancelEligibilityByOrderIdentifier parameters: - name: orderIdType in: path description: | The type of order identifier used to locate the order. Supported values: - `order-id` - `order-number` - `order-external-id` required: true schema: type: string enum: - order-id - order-number - order-external-id example: order-id - name: orderIdValue in: path description: The value of the specified order identifier. required: true schema: type: string example: ORDER0001 - name: policyName in: query description: > The merchant-defined cancellation policy to use when evaluating eligibility. If omitted, the default policy is applied. required: false schema: type: string - name: lineItemIds in: query description: > One or more line item IDs. - If specified, eligibility is checked only for the given line items. - If omitted, eligibility is checked for each item in the order. required: false schema: type: array items: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/eligibilityResponse' '400': description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4003 message: 'Mandatory param(s): `requiredField1` is/are missing' errors: - type: CLIENT_ERROR errorCode: SERVICE-4002 message: Invalid value(s) specified for 'requiredField.field3' errors: [] context: service: orders endpoint: POST /v3/orders '401': description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: CLIENT_ERROR errorCode: SERVICE-4001 message: Unauthorized request errors: [] context: service: orders endpoint: POST /v3/orders/OrderId_12345 '404': description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: message: Not found type: CLIENT_ERROR '500': description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' content: application/json: schema: $ref: '#/components/schemas/errorResponse' example: type: SERVER_ERROR errorCode: SERVICE-5000 message: Internal server error errors: [] context: service: inventories endpoint: POST /v3/inventories/actions/find-by-geography /orders/{orderId}/actions/cancel: post: description: >- When customers order cancellation request is determined to be eligible, this endpoint processes the cancellation by order ID.**Note**: If you do not have the order number, use the corresponding order number-based endpoint - `POST /orders/order-number/{orderNumber}/actions/cancel`.
operationId: cancelOrder parameters: - description: >- 24-character system-generated order ID returned in the response of Create Order - `POST /orders` endpoint. example: 5349b4ddd2781d08c09890f4 in: path name: orderId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderCancellationRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/orderResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Order not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '412': content: application/json: example: message: >- Order can't be cancelled as there is no line item available for cancellation type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Precondition failed headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Cancel Order by Order ID tags: - Cancellations /orders/{orderId}/actions/check-appeasement-eligibility: post: description: >- This endpoint checks for the appeasement eligibility of an order by orderId. operationId: checkAppeasementEligibilityByOrderId parameters: - description: >- The merchant-defined order identifier provided during the Create Order - `POST /orders` endpoint. example: ORDER0000111 in: path name: orderId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/appeasementEligibilityResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Order not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Check Appeasement Eligibility by Order ID tags: - Appeasements /orders/{orderId}/actions/check-cancel-eligibility: post: description: > Determines whether an order is eligible for cancellation. - Customers may initiate cancellation due to incorrect order placement. - Merchants may initiate cancellation due to product unavailability, pricing errors, payment failures, or shipping restrictions. This endpoint checks cancellation eligibility using the **order ID**. You can also specify `lineItemIds` to check eligibility for specific line items. If omitted, eligibility is checked for each item in the order. **Note:** - Use this endpoint only if you have the order ID. - If you have an order number instead, use the order number–based endpoint: `POST /orders/order-number/{orderNumber}/actions/check-cancel-eligibility`. operationId: getCancelOrderEligibility parameters: - description: >- 24-character system-generated order ID returned in the response of Create Order - `POST /orders` endpoint. example: 5349b4ddd2781d08c09890f4 in: path name: orderId required: true schema: type: string - description: >- Merchant-defined cancellation policy. When omitted, the default policy is considered. in: query name: policyName required: false schema: type: string - description: >- Line item IDs. If specified, gets eligibility of exchange for the given line items. If omitted, gets eligibility of exchange for each item in the order. in: query name: lineItemIds required: false schema: items: type: string type: array - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/eligibilityResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Get Order Cancellation Eligibility by Order ID tags: - Cancellations /orders/{orderId}/actions/check-credits-eligibility: post: description: >- In case of refund scenarios, credits such as gift card may be offered to customers for various reasons such as damaged products, later deliveries, or other qualifying factors as per your policy.This endpoint checks the credits eligibility by order ID, allowing businesses to manage credits effectively and provide appropriate compensation to eligible customers.
operationId: getCreditsEligibility parameters: - description: >- 24-character system-generated order ID returned in the response of Create Order - `POST /orders` endpoint. example: 5349b4ddd2781d08c09890f4 in: path name: orderId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/creditsEligibilityResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Check Credits Eligibility by Order ID tags: - Credits /orders/{orderId}/actions/check-exchange-eligibility: post: description: >- Customers may want exchange an item because of size, color, or style preferences. Before processing exchange, its crucial to verify whether the item is eligible for exchange as per your policy.This endpoint gets the eligibility of exchange request by order number. You can additionally specify `lineItemId` to get eligibility of a specific item.
**Note**: If you do not have the order ID, but have the order number, use the order number-based endpoint - `POST /orders/order-number/{orderNumber}/actions/check-exchange-eligibility`.
operationId: getOrderExchangeEligibilityByOrderId parameters: - description: >- 24-character system-generated order ID returned in the response of Create Order - `POST /orders` endpoint. example: 5349b4ddd2781d08c09890f4 in: path name: orderId required: true schema: type: string - description: >- Merchant-defined exchange policy. When omitted, the default policy is considered. example: RETURNS_POLICY_1 in: query name: policyName required: false schema: type: string - description: >- Line item ID. If specified, gets exchange eligibility of the given line item ID. If omitted, gets exchange eligibility of each item in the order. example: 62f3dfc438bcab1951be0a19 in: query name: lineItemId required: false schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/eligibilityResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Order with orderId is not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Get Order Exchange Eligibility by Order ID tags: - Returns /orders/{orderId}/actions/check-return-eligibility: post: description: > Determines whether one or more items in an order are eligible for return. Customers may request a return if items do not meet expectations or if they have simply changed their mind. This endpoint checks return eligibility using the **order ID**. You can also specify a `lineItemId` to check eligibility for a specific item. If omitted, eligibility is checked for each item in the order. **Note:** - Use this endpoint only if you have the order ID. - If you have an order number instead, use the order number–based endpoint: `POST /orders/order-number/{orderNumber}/actions/check-return-eligibility`. operationId: getOrderReturnsEligibilityByOrderId parameters: - description: >- 24-character system-generated order ID returned in the response of Create Order - `POST /orders` endpoint. example: 5349b4ddd2781d08c09890f4 in: path name: orderId required: true schema: type: string - description: >- Merchant-defined return policy. When omitted, the default policy is considered. example: RETURNS_POLICY_1 in: query name: policyName required: false schema: type: string - description: >- Line item ID. If specified, gets the return eligibility of the given line item ID. If omitted, gets the return eligibility of each item in the order. example: b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569 in: query name: lineItemId required: false schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/eligibilityResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Order not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Get Eligibility of Returns for Items in an Order by Order ID tags: - Returns /orders/{orderId}/actions/create-appeasement: post: description: >- When customer is dissatisfied with their shopping experience, you may want to offer an appeasements amount such as partial refund to keep them happy.This endpoint is used to create appeasement request by order ID
. **Note**: If you do not have an order ID, but have an order number, use the order number-based endpoint - `POST /orders/order-number/{orderNumber}/actions/create-appeasement`.
operationId: createAppeasement parameters: - description: >- 24-character system-generated ID. It is returned in the response of Create Order - `POST /orders` endpoint. example: 5349b4ddd2781d08c09890f4 in: path name: orderId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderCreateAppeasementRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/appeasementResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Create Appeasement by Order ID tags: - Appeasements /orders/{orderId}/actions/create-credits: post: description: Use this endpoint to create credits by order ID. operationId: createCredits parameters: - description: >- 24-character system-generated order ID returned in the response of Create Order - `POST /orders` endpoint. example: 5349b4ddd2781d08c09890f4 in: path name: orderId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderCreditsRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/orderCreditsResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Create Credits by Order ID tags: - Credits /orders/{orderId}/actions/fraud-cancel: post: description: >- If an order is suspected to be fraudulent, it is immediately placed on hold for verification. After verification, if it is confirmed as fraudulent, this endpoint is used to cancel the order.**Note**: If you do not have order ID, use the corresponding order number-based endpoint - `POST - /orders/order-number/{orderNumber}/actions/fraud-cancel`
operationId: fraudOrderCancelbyOrderId parameters: - description: >- 24-character system-generated order ID returned in the response of Create Order - `POST /orders` endpoint. example: 5349b4ddd2781d08c09890f4 in: path name: orderId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/fraudCancelRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/apiResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: An order with the orderNumber specified was not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Cancel Fraud Order by Order ID tags: - Frauds /orders/{orderId}/actions/fraud-release: post: description: >- If an order is suspected to be fraudulent, it is immediately placed on hold for verification. After verification, if it is confirmed as non-fraudulent, this endpoint is used to release the order from hold, by order ID, so that it can be processed.**Note**: When you do not have order ID, use the corresponding order number-based endpoint - `POST /orders/order-number/{orderNumber}/actions/fraud-release`.
operationId: releaseFraudHoldByOrderId parameters: - description: >- 24-character system-generated order ID returned in the response of Create Order - `POST /orders` endpoint example: 5349b4ddd2781d08c09890f4 in: path name: orderId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/apiResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: An order with the orderNumber specified was not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Release Fraud Order by Order ID tags: - Frauds /orders/{orderId}/actions/package-tracking-acknowledge: put: description: >- This endpoint gets acknowledgement of package tracking by order ID.**Note**: If you do not have order ID, use the corresponding order number-based endpoint - `PUT /orders/order-number/{orderNumber}/actions/package-tracking-acknowledge`.
operationId: acknowledgeTrackingDetailsByOrderId parameters: - description: >- 24-character system-generated ID. It is returned in the response of Create Order - `POST /orders` endpoint. example: as4refar4e309019176 in: path name: orderId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/acknowledgePackageTrackingRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/apiResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: An order with the specified order ID was not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Get Package Tracking Acknowledgement by Order ID tags: - Tracking /orders/{orderId}/actions/submit-return-request: post: description: >- When customers return request is found to be eligible, this endpoint submits the return request by order ID.**Note**: If you do not have order ID, use the corresponding order number-based endpoint- `POST /orders/order-number/{orderNumber}/actions/submit-return-request`.
operationId: returnsOrderByOrderId parameters: - description: >- 24-character system-generated order ID returned in the response of Create Order - `POST /orders` endpoint. in: path name: orderId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderReturnRequest' required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/returnOrderResponse' description: Return request accepted headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Order not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Order Return by Order ID tags: - Returns /orders/{orderId}/actions/update-attributes: post: description: >- The update attributes endpoint is used to update order attributes using the order ID. Attributes can be updated in the integration layer to modify external system related information. operationId: updateOrderAttributesByOrderId parameters: - description: >- The merchant-defined order identifier provided during the Create Order - `POST /orders` endpoint. example: 123k4h123k in: path name: orderId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderAttributesUpdateRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/orderResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Update Order Attributes tags: - Orders /orders/{orderId}/actions/update-credit-status: post: description: >- Use this endpoint to update the credit status, as well as to add any associated notes and additional attributes. operationId: updateCredit parameters: - description: >- 24-character system-generated order ID returned in the response of Create Order - `POST /orders` endpoint. example: 5349b4ddd2781d08c09890f4 in: path name: orderId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/orderCreditUpdateRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/creditsResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Update Credits by Order ID tags: - Credits /orders/{orderId}/actions/update-payment-status: post: description: >- This endpoint is used sync order payments when transactions happen externally. Additionally, used for updating order payment status and the amount, whether it is captured, refunded or void amount.If you don't have order ID, use the corresponding order number-based endpoint - POST /orders/order-number/{orderNumber}/actions/update-payment-status.
operationId: updatePaymentStatus parameters: - description: >- 24-character system-generated ID. It is returned in the response of Create Order - `POST /orders` endpoint. example: 5349b4ddd2781d08c09890f4 in: path name: orderId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/updatePaymentRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/orderResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Update Order Payment Status by Order ID tags: - Payments /orders/{orderId}/ship-info/{shipToId}/pickup: put: description: >- Customers can choose to either have their order delivered to them or opt to pick up from a store or warehouse. In a Buy Online Pickup in Store (BOPIS) scenario, there may be situations when the primary pickup person has changed.This endpoint allows for the updating pickup person details in BOPIS, ensuring that the most up-to-date information is available.
operationId: updatePickInfo parameters: - description: >- 24-character system-generated order ID returned in the response of Create Order - `POST /orders` endpoint. example: 5349b4ddd2781d08c09890f4 in: path name: orderId required: true schema: type: string - description: Unique ID for the given `shipInfo` example: b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569 in: path name: shipToId required: true schema: type: string - $ref: '#/components/parameters/xFabricTenantId' - $ref: '#/components/parameters/xFabricChannelId' - $ref: '#/components/parameters/xFabricRequestId' requestBody: content: application/json: schema: $ref: '#/components/schemas/pickupRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/orderResponse' description: OK headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '400': content: application/json: example: errors: - message: Invalid request type: CLIENT_ERROR message: Bad request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Bad request headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '401': content: application/json: example: message: Unauthorized request type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Unauthorized headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '404': content: application/json: example: message: Order not found type: CLIENT_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Not found headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' '500': content: application/json: example: message: Internal server error type: SERVER_ERROR schema: $ref: '#/components/schemas/errorResponse' description: Internal server error headers: x-fabric-request-id: $ref: '#/components/headers/xFabricRequestIdResponseHeader' summary: Updates Order Pick-up Details tags: - Orders security: - authorization: [] servers: - description: Production url: https://api.fabric.inc/v3 tags: - description: These endpoints authorize order payments. name: Payments - description: These endpoints help create appeasement requests. name: Appeasements - description: >- Credits are refunds to customers, often in the form of gift cards or credit notes, when customers have made payments with cash or a card that has subsequently expired. Credits are provided during order returns and appeasements. Use these endpoints to create and manage credits. name: Credits - description: >- These endpoints check eligibility of order cancellation requests and if eligible, processes order cancellation. name: Cancellations - description: These endpoints track orders. name: Tracking - description: >- These endpoints create orders, update pickup details (for BOPIS scenarios) and get order details. name: Orders - description: >- These endpoints check eligibility of order return or exchanges requests and, if eligible, processes order return or exchanges. name: Returns - description: These endpoints deal with potential fraud orders. name: Frauds