Voucher
Vouchers allow giving discounts to particular customers on categories, collections or specific products. They can be used during checkout by providing valid voucher codes.
type Voucher implements Node, ObjectWithMetadata {
id: ID!
privateMetadata: [MetadataItem!]!
privateMetafield(key: String!): String
privateMetafields(keys: [String!]): Metadata
metadata: [MetadataItem!]!
metafield(key: String!): String
metafields(keys: [String!]): Metadata
name: String
code: String!
usageLimit: Int
used: Int!
startDate: DateTime!
endDate: DateTime
applyOncePerOrder: Boolean!
applyOncePerCustomer: Boolean!
onlyForStaff: Boolean!
minCheckoutItemsQuantity: Int
categories(
before: String
after: String
first: Int
last: Int
): CategoryCountableConnection
collections(
before: String
after: String
first: Int
last: Int
): CollectionCountableConnection
products(
before: String
after: String
first: Int
last: Int
): ProductCountableConnection
variants(
before: String
after: String
first: Int
last: Int
): ProductVariantCountableConnection
countries: [CountryDisplay!]
translation(languageCode: LanguageCodeEnum!): VoucherTranslation
discountValueType: DiscountValueTypeEnum!
discountValue: Float
currency: String
minSpent: Money
type: VoucherTypeEnum!
channelListings: [VoucherChannelListing!]
}
Fields
Voucher.id ● ID! non-null scalar
Voucher.privateMetadata ● [MetadataItem!]! non-null object
List of private metadata items. Requires staff permissions to access.
Voucher.privateMetafield ● String scalar
A single key from private metadata. Requires staff permissions to access.
Tip: Use GraphQL aliases to fetch multiple keys.
Added in Saleor 3.3This API is currently in Feature Preview and can be subject to changes at later point.
Voucher.privateMetafield.key●String!non-null scalar
Voucher.privateMetafields ● Metadata scalar
Private metadata. Requires staff permissions to access. Use
Added in Saleor 3.3keysto control which fields you want to include. The default is to include everything.This API is currently in Feature Preview and can be subject to changes at later point.
Voucher.privateMetafields.keys●[String!]list scalar
Voucher.metadata ● [MetadataItem!]! non-null object
List of public metadata items. Can be accessed without permissions.
Voucher.metafield ● String scalar
A single key from public metadata.
Tip: Use GraphQL aliases to fetch multiple keys.
Added in Saleor 3.3This API is currently in Feature Preview and can be subject to changes at later point.
Voucher.metafield.key●String!non-null scalar
Voucher.metafields ● Metadata scalar
Public metadata. Use
Added in Saleor 3.3keysto control which fields you want to include. The default is to include everything.This API is currently in Feature Preview and can be subject to changes at later point.
Voucher.metafields.keys●[String!]list scalar
Voucher.name ● String scalar
Voucher.code ● String! non-null scalar
Voucher.usageLimit ● Int scalar
Voucher.used ● Int! non-null scalar
Voucher.startDate ● DateTime! non-null scalar
Voucher.endDate ● DateTime scalar
Voucher.applyOncePerOrder ● Boolean! non-null scalar
Voucher.applyOncePerCustomer ● Boolean! non-null scalar
Voucher.onlyForStaff ● Boolean! non-null scalar
Voucher.minCheckoutItemsQuantity ● Int scalar
Voucher.categories ● CategoryCountableConnection object
List of categories this voucher applies to.
Voucher.categories.before●StringscalarReturn the elements in the list that come before the specified cursor.
Voucher.categories.after ● String scalar
Return the elements in the list that come after the specified cursor.
Voucher.categories.first ● Int scalar
Retrieve the first n elements from the list. Note that the system only allows fetching a maximum of 100 objects in a single query.
Voucher.categories.last ● Int scalar
Retrieve the last n elements from the list. Note that the system only allows fetching a maximum of 100 objects in a single query.
Voucher.collections ● CollectionCountableConnection object
List of collections this voucher applies to.
Voucher.collections.before●StringscalarReturn the elements in the list that come before the specified cursor.
Voucher.collections.after ● String scalar
Return the elements in the list that come after the specified cursor.
Voucher.collections.first ● Int scalar
Retrieve the first n elements from the list. Note that the system only allows fetching a maximum of 100 objects in a single query.
Voucher.collections.last ● Int scalar
Retrieve the last n elements from the list. Note that the system only allows fetching a maximum of 100 objects in a single query.
Voucher.products ● ProductCountableConnection object
List of products this voucher applies to.
Voucher.products.before●StringscalarReturn the elements in the list that come before the specified cursor.
Voucher.products.after ● String scalar
Return the elements in the list that come after the specified cursor.
Voucher.products.first ● Int scalar
Retrieve the first n elements from the list. Note that the system only allows fetching a maximum of 100 objects in a single query.
Voucher.products.last ● Int scalar
Retrieve the last n elements from the list. Note that the system only allows fetching a maximum of 100 objects in a single query.
Voucher.variants ● ProductVariantCountableConnection object
List of product variants this voucher applies to.
Added in Saleor 3.1
Voucher.variants.before●StringscalarReturn the elements in the list that come before the specified cursor.
Voucher.variants.after ● String scalar
Return the elements in the list that come after the specified cursor.
Voucher.variants.first ● Int scalar
Retrieve the first n elements from the list. Note that the system only allows fetching a maximum of 100 objects in a single query.
Voucher.variants.last ● Int scalar
Retrieve the last n elements from the list. Note that the system only allows fetching a maximum of 100 objects in a single query.
Voucher.countries ● [CountryDisplay!] list object
List of countries available for the shipping voucher.
Voucher.translation ● VoucherTranslation object
Returns translated voucher fields for the given language code.
Voucher.translation.languageCode●LanguageCodeEnum!non-null enumA language code to return the translation for voucher.
Voucher.discountValueType ● DiscountValueTypeEnum! non-null enum
Determines a type of discount for voucher - value or percentage
Voucher.discountValue ● Float scalar
Voucher value.
Voucher.currency ● String scalar
Currency code for voucher.
Voucher.minSpent ● Money object
Minimum order value to apply voucher.
Voucher.type ● VoucherTypeEnum! non-null enum
Determines a type of voucher.
Voucher.channelListings ● [VoucherChannelListing!] list object
List of availability in channels for the voucher.
Interfaces
Node interface
An object with an ID
ObjectWithMetadata interface
Returned by
voucher query
Member of
Order object ● VoucherAddCatalogues object ● VoucherChannelListingUpdate object ● VoucherCountableEdge object ● VoucherCreate object ● VoucherCreated object ● VoucherDelete object ● VoucherDeleted object ● VoucherMetadataUpdated object ● VoucherRemoveCatalogues object ● VoucherTranslatableContent object ● VoucherTranslate object ● VoucherUpdate object ● VoucherUpdated object