Downpay API Documentation

Downpay API Documentation

API Endpoints
https://downpay.hypehound.app/graphql
Headers
# Your API token from the dashboard. Must be included in all API calls.
Authorization: Token bdbe58cf10e952359dcd730956d20c94a4acf00ff6f00088117b10b9f51660db
Version

2024-01

Queries

purchaseOptionGroup

Description

A single purchase option group

Response

Returns a PurchaseOptionGroup

Arguments
Name Description
id - ID!

Example

Query
query purchaseOptionGroup($id: ID!) {
  purchaseOptionGroup(id: $id) {
    createdAt
    id
    lineItemDescriptor
    merchantCode
    orders {
      edges {
        ...OrderEdgeFragment
      }
      nodes {
        ...OrderFragment
      }
      pageInfo {
        ...PageInfoFragment
      }
    }
    productCount
    productVariantCount
    products {
      id
      imageUrl
      title
    }
    productsRequirePurchaseOption
    purchaseOptions {
      billingPolicy {
        ...PurchaseOptionBillingPolicyFragment
      }
      description
      id
    }
    resourceAssignmentType
    tags
    variants {
      id
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "purchaseOptionGroup": {
      "createdAt": ISO8601DateTime,
      "id": "4",
      "lineItemDescriptor": "xyz789",
      "merchantCode": "xyz789",
      "orders": OrderConnection,
      "productCount": 987,
      "productVariantCount": 123,
      "products": [Product],
      "productsRequirePurchaseOption": false,
      "purchaseOptions": [PurchaseOption],
      "resourceAssignmentType": "PRODUCTS",
      "tags": ["abc123"],
      "variants": [Variant]
    }
  }
}

purchaseOptionGroups

Description

A list of purchase option groups

Response

Returns a PurchaseOptionGroupConnection!

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query purchaseOptionGroups(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  purchaseOptionGroups(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      cursor
      node {
        ...PurchaseOptionGroupFragment
      }
    }
    nodes {
      createdAt
      id
      lineItemDescriptor
      merchantCode
      orders {
        ...OrderConnectionFragment
      }
      productCount
      productVariantCount
      products {
        ...ProductFragment
      }
      productsRequirePurchaseOption
      purchaseOptions {
        ...PurchaseOptionFragment
      }
      resourceAssignmentType
      tags
      variants {
        ...VariantFragment
      }
    }
    pageInfo {
      endCursor
      hasNextPage
      hasPreviousPage
      startCursor
    }
  }
}
Variables
{
  "after": "xyz789",
  "before": "xyz789",
  "first": 987,
  "last": 987
}
Response
{
  "data": {
    "purchaseOptionGroups": {
      "edges": [PurchaseOptionGroupEdge],
      "nodes": [PurchaseOptionGroup],
      "pageInfo": PageInfo
    }
  }
}

Mutations

createPurchaseOptionGroup

Description

Create a purchase option group

Arguments
Name Description
input - CreatePurchaseOptionGroupInput! Parameters for CreatePurchaseOptionGroup

Example

Query
mutation createPurchaseOptionGroup($input: CreatePurchaseOptionGroupInput!) {
  createPurchaseOptionGroup(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    purchaseOptionGroup {
      createdAt
      id
      lineItemDescriptor
      merchantCode
      orders {
        ...OrderConnectionFragment
      }
      productCount
      productVariantCount
      products {
        ...ProductFragment
      }
      productsRequirePurchaseOption
      purchaseOptions {
        ...PurchaseOptionFragment
      }
      resourceAssignmentType
      tags
      variants {
        ...VariantFragment
      }
    }
  }
}
Variables
{"input": CreatePurchaseOptionGroupInput}
Response
{
  "data": {
    "createPurchaseOptionGroup": {
      "clientMutationId": "abc123",
      "errors": [DisplayableError],
      "purchaseOptionGroup": PurchaseOptionGroup
    }
  }
}

deletePurchaseOptionGroup

Description

Delete a purchase option group

Arguments
Name Description
input - DeletePurchaseOptionGroupInput! Parameters for DeletePurchaseOptionGroup

Example

Query
mutation deletePurchaseOptionGroup($input: DeletePurchaseOptionGroupInput!) {
  deletePurchaseOptionGroup(input: $input) {
    clientMutationId
    deletedPurchaseOptionGroupId
    errors {
      field
      message
    }
  }
}
Variables
{"input": DeletePurchaseOptionGroupInput}
Response
{
  "data": {
    "deletePurchaseOptionGroup": {
      "clientMutationId": "abc123",
      "deletedPurchaseOptionGroupId": "4",
      "errors": [DisplayableError]
    }
  }
}

orderAuthorizePayment

Description

Authorize payment for an order

Response

Returns an OrderAuthorizePaymentPayload

Arguments
Name Description
input - OrderAuthorizePaymentInput! Parameters for OrderAuthorizePayment

Example

Query
mutation orderAuthorizePayment($input: OrderAuthorizePaymentInput!) {
  orderAuthorizePayment(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    orderPaymentStatus {
      createdAt
      orderId
      paymentReferenceId
      updatedAt
    }
  }
}
Variables
{"input": OrderAuthorizePaymentInput}
Response
{
  "data": {
    "orderAuthorizePayment": {
      "clientMutationId": "xyz789",
      "errors": [DisplayableError],
      "orderPaymentStatus": OrderPaymentStatus
    }
  }
}

orderCollectPartialPayment

Description

Collect a partial payment for an order

Response

Returns an OrderCollectPartialPaymentPayload

Arguments
Name Description
input - OrderCollectPartialPaymentInput! Parameters for OrderCollectPartialPayment

Example

Query
mutation orderCollectPartialPayment($input: OrderCollectPartialPaymentInput!) {
  orderCollectPartialPayment(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    orderPaymentStatus {
      createdAt
      orderId
      paymentReferenceId
      updatedAt
    }
  }
}
Variables
{"input": OrderCollectPartialPaymentInput}
Response
{
  "data": {
    "orderCollectPartialPayment": {
      "clientMutationId": "xyz789",
      "errors": [DisplayableError],
      "orderPaymentStatus": OrderPaymentStatus
    }
  }
}

orderCollectPayment

Description

Collect payment for an order

Response

Returns an OrderCollectPaymentPayload

Arguments
Name Description
input - OrderCollectPaymentInput! Parameters for OrderCollectPayment

Example

Query
mutation orderCollectPayment($input: OrderCollectPaymentInput!) {
  orderCollectPayment(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    orderPaymentStatus {
      createdAt
      orderId
      paymentReferenceId
      updatedAt
    }
  }
}
Variables
{"input": OrderCollectPaymentInput}
Response
{
  "data": {
    "orderCollectPayment": {
      "clientMutationId": "abc123",
      "errors": [DisplayableError],
      "orderPaymentStatus": OrderPaymentStatus
    }
  }
}

orderRemovePaymentMethod

Description

Remove the stored payment method from an order

Response

Returns an OrderRemovePaymentMethodPayload

Arguments
Name Description
input - OrderRemovePaymentMethodInput! Parameters for OrderRemovePaymentMethod

Example

Query
mutation orderRemovePaymentMethod($input: OrderRemovePaymentMethodInput!) {
  orderRemovePaymentMethod(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    orderId
  }
}
Variables
{"input": OrderRemovePaymentMethodInput}
Response
{
  "data": {
    "orderRemovePaymentMethod": {
      "clientMutationId": "xyz789",
      "errors": [DisplayableError],
      "orderId": "4"
    }
  }
}

orderUpdateDueDate

Description

Update the payment due date for an order

Response

Returns an OrderUpdateDueDatePayload

Arguments
Name Description
input - OrderUpdateDueDateInput! Parameters for OrderUpdateDueDate

Example

Query
mutation orderUpdateDueDate($input: OrderUpdateDueDateInput!) {
  orderUpdateDueDate(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    orderId
    paymentDueDate
  }
}
Variables
{"input": OrderUpdateDueDateInput}
Response
{
  "data": {
    "orderUpdateDueDate": {
      "clientMutationId": "abc123",
      "errors": [DisplayableError],
      "orderId": 4,
      "paymentDueDate": ISO8601DateTime
    }
  }
}

orderVoidAuthorization

Description

Void an active authorization from an order

Response

Returns an OrderVoidAuthorizationPayload

Arguments
Name Description
input - OrderVoidAuthorizationInput! Parameters for OrderVoidAuthorization

Example

Query
mutation orderVoidAuthorization($input: OrderVoidAuthorizationInput!) {
  orderVoidAuthorization(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    orderId
  }
}
Variables
{"input": OrderVoidAuthorizationInput}
Response
{
  "data": {
    "orderVoidAuthorization": {
      "clientMutationId": "xyz789",
      "errors": [DisplayableError],
      "orderId": 4
    }
  }
}

purchaseOptionGroupAddProductVariants

Description

Add product variants to a purchase option group

Arguments
Name Description
input - PurchaseOptionGroupAddProductVariantsInput! Parameters for PurchaseOptionGroupAddProductVariants

Example

Query
mutation purchaseOptionGroupAddProductVariants($input: PurchaseOptionGroupAddProductVariantsInput!) {
  purchaseOptionGroupAddProductVariants(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    purchaseOptionGroup {
      createdAt
      id
      lineItemDescriptor
      merchantCode
      orders {
        ...OrderConnectionFragment
      }
      productCount
      productVariantCount
      products {
        ...ProductFragment
      }
      productsRequirePurchaseOption
      purchaseOptions {
        ...PurchaseOptionFragment
      }
      resourceAssignmentType
      tags
      variants {
        ...VariantFragment
      }
    }
  }
}
Variables
{"input": PurchaseOptionGroupAddProductVariantsInput}
Response
{
  "data": {
    "purchaseOptionGroupAddProductVariants": {
      "clientMutationId": "abc123",
      "errors": [DisplayableError],
      "purchaseOptionGroup": PurchaseOptionGroup
    }
  }
}

purchaseOptionGroupAddProducts

Description

Add products to a purchase option group

Arguments
Name Description
input - PurchaseOptionGroupAddProductsInput! Parameters for PurchaseOptionGroupAddProducts

Example

Query
mutation purchaseOptionGroupAddProducts($input: PurchaseOptionGroupAddProductsInput!) {
  purchaseOptionGroupAddProducts(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    purchaseOptionGroupId
  }
}
Variables
{"input": PurchaseOptionGroupAddProductsInput}
Response
{
  "data": {
    "purchaseOptionGroupAddProducts": {
      "clientMutationId": "xyz789",
      "errors": [DisplayableError],
      "purchaseOptionGroupId": 4
    }
  }
}

purchaseOptionGroupAddTags

Description

Add tags to a purchase option group

Arguments
Name Description
input - PurchaseOptionGroupAddTagsInput! Parameters for PurchaseOptionGroupAddTags

Example

Query
mutation purchaseOptionGroupAddTags($input: PurchaseOptionGroupAddTagsInput!) {
  purchaseOptionGroupAddTags(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    purchaseOptionGroupId
  }
}
Variables
{"input": PurchaseOptionGroupAddTagsInput}
Response
{
  "data": {
    "purchaseOptionGroupAddTags": {
      "clientMutationId": "abc123",
      "errors": [DisplayableError],
      "purchaseOptionGroupId": 4
    }
  }
}

purchaseOptionGroupRemoveProductVariants

Description

Remove product variants from a purchase option group

Arguments
Name Description
input - PurchaseOptionGroupRemoveProductVariantsInput! Parameters for PurchaseOptionGroupRemoveProductVariants

Example

Query
mutation purchaseOptionGroupRemoveProductVariants($input: PurchaseOptionGroupRemoveProductVariantsInput!) {
  purchaseOptionGroupRemoveProductVariants(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    removedProductVariantIds
  }
}
Variables
{"input": PurchaseOptionGroupRemoveProductVariantsInput}
Response
{
  "data": {
    "purchaseOptionGroupRemoveProductVariants": {
      "clientMutationId": "xyz789",
      "errors": [DisplayableError],
      "removedProductVariantIds": [4]
    }
  }
}

purchaseOptionGroupRemoveProducts

Description

Remove products from a purchase option group

Arguments
Name Description
input - PurchaseOptionGroupRemoveProductsInput! Parameters for PurchaseOptionGroupRemoveProducts

Example

Query
mutation purchaseOptionGroupRemoveProducts($input: PurchaseOptionGroupRemoveProductsInput!) {
  purchaseOptionGroupRemoveProducts(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    purchaseOptionGroupId
    removedProductIds
  }
}
Variables
{"input": PurchaseOptionGroupRemoveProductsInput}
Response
{
  "data": {
    "purchaseOptionGroupRemoveProducts": {
      "clientMutationId": "abc123",
      "errors": [DisplayableError],
      "purchaseOptionGroupId": 4,
      "removedProductIds": [4]
    }
  }
}

purchaseOptionGroupRemoveTags

Description

Remove tags from a purchase option group

Arguments
Name Description
input - PurchaseOptionGroupRemoveTagsInput! Parameters for PurchaseOptionGroupRemoveTags

Example

Query
mutation purchaseOptionGroupRemoveTags($input: PurchaseOptionGroupRemoveTagsInput!) {
  purchaseOptionGroupRemoveTags(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    purchaseOptionGroupId
    removedProductTags
  }
}
Variables
{"input": PurchaseOptionGroupRemoveTagsInput}
Response
{
  "data": {
    "purchaseOptionGroupRemoveTags": {
      "clientMutationId": "xyz789",
      "errors": [DisplayableError],
      "purchaseOptionGroupId": 4,
      "removedProductTags": ["abc123"]
    }
  }
}

updatePurchaseOptionGroup

Description

Update a purchase option group

Response

Returns an UpdatePurchaseOptionGroupPayload

Arguments
Name Description
input - UpdatePurchaseOptionGroupInput! Parameters for UpdatePurchaseOptionGroup

Example

Query
mutation updatePurchaseOptionGroup($input: UpdatePurchaseOptionGroupInput!) {
  updatePurchaseOptionGroup(input: $input) {
    clientMutationId
    errors {
      field
      message
    }
    purchaseOptionGroup {
      createdAt
      id
      lineItemDescriptor
      merchantCode
      orders {
        ...OrderConnectionFragment
      }
      productCount
      productVariantCount
      products {
        ...ProductFragment
      }
      productsRequirePurchaseOption
      purchaseOptions {
        ...PurchaseOptionFragment
      }
      resourceAssignmentType
      tags
      variants {
        ...VariantFragment
      }
    }
  }
}
Variables
{"input": UpdatePurchaseOptionGroupInput}
Response
{
  "data": {
    "updatePurchaseOptionGroup": {
      "clientMutationId": "xyz789",
      "errors": [DisplayableError],
      "purchaseOptionGroup": PurchaseOptionGroup
    }
  }
}

Types

Boolean

Description

Represents true or false values.

CreatePurchaseOptionGroupInput

Description

Autogenerated input type of CreatePurchaseOptionGroup

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
purchaseOptionGroupInput - PurchaseOptionGroupInput! Purchase option group input
resourceAssignmentType - ResourceAssignment! Determines how resources will be assigned to the purchase option group
resources - ResourceInput! Resources (products, variants, or tags) to associate with the purchase option group
Example
{
  "clientMutationId": "xyz789",
  "purchaseOptionGroupInput": PurchaseOptionGroupInput,
  "resourceAssignmentType": "PRODUCTS",
  "resources": ResourceInput
}

CreatePurchaseOptionGroupPayload

Description

Autogenerated return type of CreatePurchaseOptionGroup.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
purchaseOptionGroup - PurchaseOptionGroup Purchase option group describing the terms of the sale for a product or group of products
Example
{
  "clientMutationId": "abc123",
  "errors": [DisplayableError],
  "purchaseOptionGroup": PurchaseOptionGroup
}

CurrencyCode

Description

Currency code enum

Values
Enum Value Description

USD

United States Dollars (USD).

EUR

Euro (EUR).

GBP

United Kingdom Pounds (GBP).

CAD

Canadian Dollars (CAD).

AFN

Afghan Afghani (AFN).

ALL

Albanian Lek (ALL).

DZD

Algerian Dinar (DZD).

AOA

Angolan Kwanza (AOA).

ARS

Argentine Pesos (ARS).

AMD

Armenian Dram (AMD).

AWG

Aruban Florin (AWG).

AUD

Australian Dollars (AUD).

BBD

Barbadian Dollar (BBD).

AZN

Azerbaijani Manat (AZN).

BDT

Bangladesh Taka (BDT).

BSD

Bahamian Dollar (BSD).

BHD

Bahraini Dinar (BHD).

BIF

Burundian Franc (BIF).

BZD

Belize Dollar (BZD).

BMD

Bermudian Dollar (BMD).

BTN

Bhutanese Ngultrum (BTN).

BAM

Bosnia and Herzegovina Convertible Mark (BAM).

BRL

Brazilian Real (BRL).

BOB

Bolivian Boliviano (BOB).

BWP

Botswana Pula (BWP).

BND

Brunei Dollar (BND).

BGN

Bulgarian Lev (BGN).

MMK

Burmese Kyat (MMK).

KHR

Cambodian Riel.

CVE

Cape Verdean escudo (CVE).

KYD

Cayman Dollars (KYD).

XAF

Central African CFA Franc (XAF).

CLP

Chilean Peso (CLP).

CNY

Chinese Yuan Renminbi (CNY).

COP

Colombian Peso (COP).

KMF

Comorian Franc (KMF).

CDF

Congolese franc (CDF).

CRC

Costa Rican Colones (CRC).

HRK

Croatian Kuna (HRK).

CZK

Czech Koruny (CZK).

DKK

Danish Kroner (DKK).

DOP

Dominican Peso (DOP).

XCD

East Caribbean Dollar (XCD).

EGP

Egyptian Pound (EGP).

ETB

Ethiopian Birr (ETB).

XPF

CFP Franc (XPF).

FJD

Fijian Dollars (FJD).

GMD

Gambian Dalasi (GMD).

GHS

Ghanaian Cedi (GHS).

GTQ

Guatemalan Quetzal (GTQ).

GYD

Guyanese Dollar (GYD).

GEL

Georgian Lari (GEL).

HTG

Haitian Gourde (HTG).

HNL

Honduran Lempira (HNL).

HKD

Hong Kong Dollars (HKD).

HUF

Hungarian Forint (HUF).

ISK

Icelandic Kronur (ISK).

INR

Indian Rupees (INR).

IDR

Indonesian Rupiah (IDR).

ILS

Israeli New Shekel (NIS).

IQD

Iraqi Dinar (IQD).

JMD

Jamaican Dollars (JMD).

JPY

Japanese Yen (JPY).

JEP

Jersey Pound.

JOD

Jordanian Dinar (JOD).

KZT

Kazakhstani Tenge (KZT).

KES

Kenyan Shilling (KES).

KWD

Kuwaiti Dinar (KWD).

KGS

Kyrgyzstani Som (KGS).

LAK

Laotian Kip (LAK).

LVL

Latvian Lati (LVL).

LBP

Lebanese Pounds (LBP).

LSL

Lesotho Loti (LSL).

LRD

Liberian Dollar (LRD).

LTL

Lithuanian Litai (LTL).

MGA

Malagasy Ariary (MGA).

MKD

Macedonia Denar (MKD).

MOP

Macanese Pataca (MOP).

MWK

Malawian Kwacha (MWK).

MVR

Maldivian Rufiyaa (MVR).

MXN

Mexican Pesos (MXN).

MYR

Malaysian Ringgits (MYR).

MUR

Mauritian Rupee (MUR).

MDL

Moldovan Leu (MDL).

MAD

Moroccan Dirham.

MNT

Mongolian Tugrik.

MZN

Mozambican Metical.

NAD

Namibian Dollar.

NPR

Nepalese Rupee (NPR).

ANG

Netherlands Antillean Guilder.

NZD

New Zealand Dollars (NZD).

NIO

Nicaraguan Córdoba (NIO).

NGN

Nigerian Naira (NGN).

NOK

Norwegian Kroner (NOK).

OMR

Omani Rial (OMR).

PAB

Panamian Balboa (PAB).

PKR

Pakistani Rupee (PKR).

PGK

Papua New Guinean Kina (PGK).

PYG

Paraguayan Guarani (PYG).

PEN

Peruvian Nuevo Sol (PEN).

PHP

Philippine Peso (PHP).

PLN

Polish Zlotych (PLN).

QAR

Qatari Rial (QAR).

RON

Romanian Lei (RON).

RUB

Russian Rubles (RUB).

RWF

Rwandan Franc (RWF).

WST

Samoan Tala (WST).

SAR

Saudi Riyal (SAR).

RSD

Serbian dinar (RSD).

SCR

Seychellois Rupee (SCR).

SGD

Singapore Dollars (SGD).

SDG

Sudanese Pound (SDG).

SYP

Syrian Pound (SYP).

ZAR

South African Rand (ZAR).

KRW

South Korean Won (KRW).

SSP

South Sudanese Pound (SSP).

SBD

Solomon Islands Dollar (SBD).

LKR

Sri Lankan Rupees (LKR).

SRD

Surinamese Dollar (SRD).

SZL

Swazi Lilangeni (SZL).

SEK

Swedish Kronor (SEK).

CHF

Swiss Francs (CHF).

TWD

Taiwan Dollars (TWD).

THB

Thai baht (THB).

TZS

Tanzanian Shilling (TZS).

TTD

Trinidad and Tobago Dollars (TTD).

TND

Tunisian Dinar (TND).

TRY

Turkish Lira (TRY).

TMT

Turkmenistani Manat (TMT).

UGX

Ugandan Shilling (UGX).

UAH

Ukrainian Hryvnia (UAH).

AED

United Arab Emirates Dirham (AED).

UYU

Uruguayan Pesos (UYU).

UZS

Uzbekistan som (UZS).

VUV

Vanuatu Vatu (VUV).

VND

Vietnamese đồng (VND).

XOF

West African CFA franc (XOF).

YER

Yemeni Rial (YER).

ZMW

Zambian Kwacha (ZMW).

BYN

Belarusian Ruble (BYN).

BYR

Belarusian Ruble (BYR). BYR is deprecated. Use BYN available from version 2021-01 onwards instead.

DJF

Djiboutian Franc (DJF).

ERN

Eritrean Nakfa (ERN).

FKP

Falkland Islands Pounds (FKP).

GIP

Gibraltar Pounds (GIP).

GNF

Guinean Franc (GNF).

IRR

Iranian Rial (IRR).

KID

Kiribati Dollar (KID).

LYD

Libyan Dinar (LYD).

MRU

Mauritanian Ouguiya (MRU).

SLL

Sierra Leonean Leone (SLL).

SHP

Saint Helena Pounds (SHP).

SOS

Somali Shilling (SOS).

STD

Sao Tome And Principe Dobra (STD). STD is deprecated. Use STN available from version 2022-07 onwards instead.

STN

Sao Tome And Principe Dobra (STN).

TJS

Tajikistani Somoni (TJS).

TOP

Tongan Pa'anga (TOP).

VED

Venezuelan Bolivares (VED).

VEF

Venezuelan Bolivares (VEF). VEF is deprecated. Use VES available from version 2020-10 onwards instead.

VES

Venezuelan Bolivares (VES).

XXX

Unrecognized currency.
Example
"USD"

DeletePurchaseOptionGroupInput

Description

Autogenerated input type of DeletePurchaseOptionGroup

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
id - ID! ID of the purchase option group to delete
Example
{
  "clientMutationId": "xyz789",
  "id": "4"
}

DeletePurchaseOptionGroupPayload

Description

Autogenerated return type of DeletePurchaseOptionGroup.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
deletedPurchaseOptionGroupId - ID ID of the deleted purchase option group
errors - [DisplayableError!]
Example
{
  "clientMutationId": "abc123",
  "deletedPurchaseOptionGroupId": 4,
  "errors": [DisplayableError]
}

DisplayableError

Fields
Field Name Description
field - [String!] The field that the error is associated with
message - String! The error message
Example
{
  "field": ["abc123"],
  "message": "abc123"
}

Float

Description

Represents signed double-precision fractional values as specified by IEEE 754.

Example
123.45

ID

Description

Represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "VXNlci0xMA==") or integer (such as 4) input value will be accepted as an ID.

Example
4

ISO8601DateTime

Description

An ISO 8601-encoded datetime

Example
ISO8601DateTime

Int

Description

Represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
123

MoneyInput

Fields
Input Field Description
amount - String!
currencyCode - CurrencyCode!
Example
{"amount": "xyz789", "currencyCode": "USD"}

Order

Fields
Field Name Description
createdAt - ISO8601DateTime!
id - ID! The ID of the order. Same as the Shopify Order ID.
updatedAt - ISO8601DateTime!
Example
{
  "createdAt": ISO8601DateTime,
  "id": 4,
  "updatedAt": ISO8601DateTime
}

OrderAuthorizePaymentInput

Description

Autogenerated input type of OrderAuthorizePayment

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
id - ID! ID of the order to authorize payment for
amount - MoneyInput (PLUS ONLY) Amount to authorize
Example
{
  "clientMutationId": "xyz789",
  "id": 4,
  "amount": MoneyInput
}

OrderAuthorizePaymentPayload

Description

Autogenerated return type of OrderAuthorizePayment.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
orderPaymentStatus - OrderPaymentStatus! The payment status of the order
Example
{
  "clientMutationId": "abc123",
  "errors": [DisplayableError],
  "orderPaymentStatus": OrderPaymentStatus
}

OrderCollectPartialPaymentInput

Description

Autogenerated input type of OrderCollectPartialPayment

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
id - ID! ID of the order to collect payment for
amount - MoneyInput! Amount to collect
Example
{
  "clientMutationId": "xyz789",
  "id": "4",
  "amount": MoneyInput
}

OrderCollectPartialPaymentPayload

Description

Autogenerated return type of OrderCollectPartialPayment.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
orderPaymentStatus - OrderPaymentStatus! The payment status of the order
Example
{
  "clientMutationId": "xyz789",
  "errors": [DisplayableError],
  "orderPaymentStatus": OrderPaymentStatus
}

OrderCollectPaymentInput

Description

Autogenerated input type of OrderCollectPayment

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
id - ID! ID of the order to collect payment for
Example
{"clientMutationId": "abc123", "id": 4}

OrderCollectPaymentPayload

Description

Autogenerated return type of OrderCollectPayment.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
orderPaymentStatus - OrderPaymentStatus! The payment status of the order
Example
{
  "clientMutationId": "xyz789",
  "errors": [DisplayableError],
  "orderPaymentStatus": OrderPaymentStatus
}

OrderConnection

Description

The connection type for Order.

Fields
Field Name Description
edges - [OrderEdge] A list of edges.
nodes - [Order] A list of nodes.
pageInfo - PageInfo! Information to aid in pagination.
Example
{
  "edges": [OrderEdge],
  "nodes": [Order],
  "pageInfo": PageInfo
}

OrderEdge

Description

An edge in a connection.

Fields
Field Name Description
cursor - String! A cursor for use in pagination.
node - Order The item at the end of the edge.
Example
{
  "cursor": "abc123",
  "node": Order
}

OrderPaymentStatus

Fields
Field Name Description
createdAt - ISO8601DateTime!
orderId - ID! The ID of the order
paymentReferenceId - String! The payment reference ID
updatedAt - ISO8601DateTime!
Example
{
  "createdAt": ISO8601DateTime,
  "orderId": 4,
  "paymentReferenceId": "xyz789",
  "updatedAt": ISO8601DateTime
}

OrderRemovePaymentMethodInput

Description

Autogenerated input type of OrderRemovePaymentMethod

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
id - ID! ID of the order from which to remove the stored payment method
Example
{"clientMutationId": "abc123", "id": 4}

OrderRemovePaymentMethodPayload

Description

Autogenerated return type of OrderRemovePaymentMethod.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
orderId - ID
Example
{
  "clientMutationId": "abc123",
  "errors": [DisplayableError],
  "orderId": "4"
}

OrderUpdateDueDateInput

Description

Autogenerated input type of OrderUpdateDueDate

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
id - ID! ID of the order for which to update the payment method
date - ISO8601DateTime! The new order due date
Example
{
  "clientMutationId": "abc123",
  "id": 4,
  "date": ISO8601DateTime
}

OrderUpdateDueDatePayload

Description

Autogenerated return type of OrderUpdateDueDate.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
orderId - ID
paymentDueDate - ISO8601DateTime
Example
{
  "clientMutationId": "abc123",
  "errors": [DisplayableError],
  "orderId": "4",
  "paymentDueDate": ISO8601DateTime
}

OrderVoidAuthorizationInput

Description

Autogenerated input type of OrderVoidAuthorization

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
id - ID! ID of the order to authorize payment for
Example
{"clientMutationId": "xyz789", "id": 4}

OrderVoidAuthorizationPayload

Description

Autogenerated return type of OrderVoidAuthorization.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
orderId - ID
Example
{
  "clientMutationId": "xyz789",
  "errors": [DisplayableError],
  "orderId": 4
}

PageInfo

Description

Information about pagination in a connection.

Fields
Field Name Description
endCursor - String When paginating forwards, the cursor to continue.
hasNextPage - Boolean! When paginating forwards, are there more items?
hasPreviousPage - Boolean! When paginating backwards, are there more items?
startCursor - String When paginating backwards, the cursor to continue.
Example
{
  "endCursor": "abc123",
  "hasNextPage": false,
  "hasPreviousPage": false,
  "startCursor": "xyz789"
}

Percentage

Fields
Field Name Description
percentage - Float!
Example
{"percentage": 123.45}

Price

Fields
Field Name Description
amount - String!
currencyCode - CurrencyCode!
Example
{"amount": "abc123", "currencyCode": "USD"}

Product

Fields
Field Name Description
id - ID! The ID of the product. Same as the Shopify Product ID.
imageUrl - String
title - String
Example
{
  "id": 4,
  "imageUrl": "xyz789",
  "title": "xyz789"
}

PurchaseOption

Fields
Field Name Description
billingPolicy - PurchaseOptionBillingPolicy!
description - String!
id - ID!
Example
{
  "billingPolicy": PurchaseOptionBillingPolicy,
  "description": "abc123",
  "id": "4"
}

PurchaseOptionBillingPolicy

Fields
Field Name Description
checkoutCharge - PurchaseOptionCheckoutCharge!
remainingBalanceChargeExactTime - ISO8601DateTime
remainingBalanceChargeTimeAfterCheckout - String
remainingBalanceChargeTrigger - PurchaseOptionRemainingBalanceChargeTrigger!
Example
{
  "checkoutCharge": PurchaseOptionCheckoutCharge,
  "remainingBalanceChargeExactTime": ISO8601DateTime,
  "remainingBalanceChargeTimeAfterCheckout": "xyz789",
  "remainingBalanceChargeTrigger": "ExactTime"
}

PurchaseOptionBillingPolicyInput

Fields
Input Field Description
checkoutCharge - PurchaseOptionCheckoutChargeInput!
remainingBalanceChargeExactTime - ISO8601DateTime
remainingBalanceChargeTimeAfterCheckout - String
remainingBalanceChargeTrigger - PurchaseOptionRemainingBalanceChargeTrigger
Example
{
  "checkoutCharge": PurchaseOptionCheckoutChargeInput,
  "remainingBalanceChargeExactTime": ISO8601DateTime,
  "remainingBalanceChargeTimeAfterCheckout": "abc123",
  "remainingBalanceChargeTrigger": "ExactTime"
}

PurchaseOptionCheckoutCharge

Fields
Field Name Description
type - PurchaseOptionCheckoutChargeType!
value - PurchaseOptionCheckoutChargeValue!
Example
{"type": "PERCENTAGE", "value": Percentage}

PurchaseOptionCheckoutChargeInput

Fields
Input Field Description
type - PurchaseOptionCheckoutChargeType!
value - PurchaseOptionCheckoutChargeValueInput!
Example
{
  "type": "PERCENTAGE",
  "value": PurchaseOptionCheckoutChargeValueInput
}

PurchaseOptionCheckoutChargeType

Description

Purchase option checkout charge enum

Values
Enum Value Description

PERCENTAGE

The checkout charge is a percentage of the product or variant price.

PRICE

The checkout charge is a fixed price amount.
Example
"PERCENTAGE"

PurchaseOptionCheckoutChargeValue

Description

The portion of the price to be charged at checkout.

Types
Union Types

Percentage

Price

Example
Percentage

PurchaseOptionCheckoutChargeValueInput

Fields
Input Field Description
fixedValue - String
percentage - Float
Example
{
  "fixedValue": "xyz789",
  "percentage": 123.45
}

PurchaseOptionGroup

Fields
Field Name Description
createdAt - ISO8601DateTime!
id - ID!
lineItemDescriptor - String! The description of the purchase option group that will be displayed to the customer in the cart and checkout.
merchantCode - String! The merchant-facing code for the purchase option group.
orders - OrderConnection!
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

productCount - Int!
productVariantCount - Int!
products - [Product!]! The products in the purchase option group. Note that this only returns the first 250 products in the group.
productsRequirePurchaseOption - Boolean! Whether or not products in the purchase option group require a purchase option to be purchased.
purchaseOptions - [PurchaseOption!]!
resourceAssignmentType - ResourceAssignment!
tags - [String!]!
variants - [Variant!]!
Example
{
  "createdAt": ISO8601DateTime,
  "id": "4",
  "lineItemDescriptor": "xyz789",
  "merchantCode": "abc123",
  "orders": OrderConnection,
  "productCount": 123,
  "productVariantCount": 123,
  "products": [Product],
  "productsRequirePurchaseOption": false,
  "purchaseOptions": [PurchaseOption],
  "resourceAssignmentType": "PRODUCTS",
  "tags": ["abc123"],
  "variants": [Variant]
}

PurchaseOptionGroupAddProductVariantsInput

Description

Autogenerated input type of PurchaseOptionGroupAddProductVariants

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
id - ID! ID of the purchase option group to add product variants to
productVariantIds - [ID!]! IDs of the product variants to add to the purchase option group
Example
{
  "clientMutationId": "abc123",
  "id": 4,
  "productVariantIds": ["4"]
}

PurchaseOptionGroupAddProductVariantsPayload

Description

Autogenerated return type of PurchaseOptionGroupAddProductVariants.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
purchaseOptionGroup - PurchaseOptionGroup Purchase option group describing the terms of the sale for a product or gruop of products
Example
{
  "clientMutationId": "xyz789",
  "errors": [DisplayableError],
  "purchaseOptionGroup": PurchaseOptionGroup
}

PurchaseOptionGroupAddProductsInput

Description

Autogenerated input type of PurchaseOptionGroupAddProducts

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
id - ID! ID of the purchase option group to add products to
productIds - [ID!]! IDs of the products to add to the purchase option group
Example
{
  "clientMutationId": "xyz789",
  "id": "4",
  "productIds": [4]
}

PurchaseOptionGroupAddProductsPayload

Description

Autogenerated return type of PurchaseOptionGroupAddProducts.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
purchaseOptionGroupId - ID ID of the purchase option group
Example
{
  "clientMutationId": "abc123",
  "errors": [DisplayableError],
  "purchaseOptionGroupId": 4
}

PurchaseOptionGroupAddTagsInput

Description

Autogenerated input type of PurchaseOptionGroupAddTags

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
id - ID! ID of the purchase option group to add products with specified tags to
productTags - [String!]! List of product tags to add to the purchase option group
Example
{
  "clientMutationId": "abc123",
  "id": "4",
  "productTags": ["xyz789"]
}

PurchaseOptionGroupAddTagsPayload

Description

Autogenerated return type of PurchaseOptionGroupAddTags.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
purchaseOptionGroupId - ID ID of the purchase option group
Example
{
  "clientMutationId": "xyz789",
  "errors": [DisplayableError],
  "purchaseOptionGroupId": 4
}

PurchaseOptionGroupConnection

Description

The connection type for PurchaseOptionGroup.

Fields
Field Name Description
edges - [PurchaseOptionGroupEdge] A list of edges.
nodes - [PurchaseOptionGroup] A list of nodes.
pageInfo - PageInfo! Information to aid in pagination.
Example
{
  "edges": [PurchaseOptionGroupEdge],
  "nodes": [PurchaseOptionGroup],
  "pageInfo": PageInfo
}

PurchaseOptionGroupEdge

Description

An edge in a connection.

Fields
Field Name Description
cursor - String! A cursor for use in pagination.
node - PurchaseOptionGroup The item at the end of the edge.
Example
{
  "cursor": "xyz789",
  "node": PurchaseOptionGroup
}

PurchaseOptionGroupInput

Fields
Input Field Description
id - ID
merchantCode - String
lineItemDescriptor - String
productsRequirePurchaseOption - Boolean
purchaseOptionsToCreate - [PurchaseOptionInput!]
purchaseOptionsToUpdate - [PurchaseOptionInput!]
purchaseOptionsToDelete - [ID!]
Example
{
  "id": "4",
  "merchantCode": "abc123",
  "lineItemDescriptor": "xyz789",
  "productsRequirePurchaseOption": false,
  "purchaseOptionsToCreate": [PurchaseOptionInput],
  "purchaseOptionsToUpdate": [PurchaseOptionInput],
  "purchaseOptionsToDelete": [4]
}

PurchaseOptionGroupRemoveProductVariantsInput

Description

Autogenerated input type of PurchaseOptionGroupRemoveProductVariants

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
id - ID! ID of the purchase option group to remove products from
productVariantIds - [ID!]! IDs of the product variants to remove from the purchase option group
Example
{
  "clientMutationId": "abc123",
  "id": "4",
  "productVariantIds": ["4"]
}

PurchaseOptionGroupRemoveProductVariantsPayload

Description

Autogenerated return type of PurchaseOptionGroupRemoveProductVariants.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
removedProductVariantIds - [ID!] IDs of the product variants that were removed from the purchase option group
Example
{
  "clientMutationId": "xyz789",
  "errors": [DisplayableError],
  "removedProductVariantIds": [4]
}

PurchaseOptionGroupRemoveProductsInput

Description

Autogenerated input type of PurchaseOptionGroupRemoveProducts

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
id - ID! ID of the purchase option group to remove products from
productIds - [ID!]! IDs of the products to remove from the purchase option group
Example
{
  "clientMutationId": "abc123",
  "id": 4,
  "productIds": ["4"]
}

PurchaseOptionGroupRemoveProductsPayload

Description

Autogenerated return type of PurchaseOptionGroupRemoveProducts.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
purchaseOptionGroupId - ID ID of the purchase option group
removedProductIds - [ID!] IDs of the products that were removed from the purchase option group
Example
{
  "clientMutationId": "xyz789",
  "errors": [DisplayableError],
  "purchaseOptionGroupId": 4,
  "removedProductIds": ["4"]
}

PurchaseOptionGroupRemoveTagsInput

Description

Autogenerated input type of PurchaseOptionGroupRemoveTags

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
id - ID! ID of the purchase option group to remove products with the associated tags from
productTags - [String!]! List of product tags to remove from the purchase option group
Example
{
  "clientMutationId": "abc123",
  "id": 4,
  "productTags": ["abc123"]
}

PurchaseOptionGroupRemoveTagsPayload

Description

Autogenerated return type of PurchaseOptionGroupRemoveTags.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
purchaseOptionGroupId - ID ID of the purchase option group
removedProductTags - [String!] List of products tags that were removed from the purchase option group
Example
{
  "clientMutationId": "abc123",
  "errors": [DisplayableError],
  "purchaseOptionGroupId": "4",
  "removedProductTags": ["abc123"]
}

PurchaseOptionInput

Fields
Input Field Description
id - ID
description - String
billingPolicy - PurchaseOptionBillingPolicyInput
Example
{
  "id": "4",
  "description": "xyz789",
  "billingPolicy": PurchaseOptionBillingPolicyInput
}

PurchaseOptionRemainingBalanceChargeTrigger

Description

Purchase option remaining balance charge trigger enum

Values
Enum Value Description

ExactTime

At an exact time defined by the remaining_balance_charge_exact_time field.

NoRemainingBalance

When there's no remaining balance to be charged after checkout.

TimeAfterCheckout

After the duration defined by the remaining_balance_charge_time_after_checkout field.
Example
"ExactTime"

ResourceAssignment

Values
Enum Value Description

PRODUCTS

Products will be manually assigned to the purchase option group

VARIANTS

Variants will be manually assigned to the purchase option group

TAGS

Products with the specified tags will be automatically assigned to the purchase option group
Example
"PRODUCTS"

ResourceInput

Fields
Input Field Description
productIds - [ID!]
productVariantIds - [ID!]
productTags - [String!]
Example
{
  "productIds": ["4"],
  "productVariantIds": [4],
  "productTags": ["xyz789"]
}

String

Description

Represents textual data as UTF-8 character sequences. This type is most often used by GraphQL to represent free-form human-readable text.

Example
"xyz789"

UpdatePurchaseOptionGroupInput

Description

Autogenerated input type of UpdatePurchaseOptionGroup

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation.
purchaseOptionGroupInput - PurchaseOptionGroupInput! Input for the purchase option group to update
Example
{
  "clientMutationId": "xyz789",
  "purchaseOptionGroupInput": PurchaseOptionGroupInput
}

UpdatePurchaseOptionGroupPayload

Description

Autogenerated return type of UpdatePurchaseOptionGroup.

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation.
errors - [DisplayableError!]
purchaseOptionGroup - PurchaseOptionGroup The updated purchase option group
Example
{
  "clientMutationId": "abc123",
  "errors": [DisplayableError],
  "purchaseOptionGroup": PurchaseOptionGroup
}

Variant

Fields
Field Name Description
id - ID! The ID of the variant. Same as the Shopify Variant ID.
Example
{"id": 4}