Skip to main content

Payment Object

Represents a payment of a given type.

The legacy Payments API is deprecated and will be removed. Use the Transactions API instead.

type Payment 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
gateway: String!
isActive: Boolean!
created: DateTime!
modified: DateTime!
token: String!
checkout: Checkout
order: Order
paymentMethodType: String!
customerIpAddress: String
chargeStatus: PaymentChargeStatusEnum!
actions: [OrderAction!]!
total: Money
capturedAmount: Money
transactions: [Transaction!]
availableCaptureAmount: Money
availableRefundAmount: Money
creditCard: CreditCard
pspReference: String
}

Fields​

id ● ID!​

ID of the payment.

privateMetadata ● [MetadataItem!]!​

List of private metadata items. Requires staff permissions to access.

privateMetafield ● String​

A single key from private metadata. Requires staff permissions to access.

Tip: Use GraphQL aliases to fetch multiple keys.

key ● String!​

privateMetafields ● Metadata​

Private metadata. Requires staff permissions to access. Use keys to control which fields you want to include. The default is to include everything.

keys ● [String!]​

metadata ● [MetadataItem!]!​

List of public metadata items. Can be accessed without permissions.

metafield ● String​

A single key from public metadata.

Tip: Use GraphQL aliases to fetch multiple keys.

key ● String!​

metafields ● Metadata​

Public metadata. Use keys to control which fields you want to include. The default is to include everything.

keys ● [String!]​

gateway ● String!​

Payment gateway used for payment.

isActive ● Boolean!​

Determines if the payment is active or not.

created ● DateTime!​

Date and time at which payment was created.

modified ● DateTime!​

Date and time at which payment was modified.

token ● String!​

Unique token associated with a payment.

checkout ● Checkout​

Checkout associated with a payment.

order ● Order​

Order associated with a payment.

paymentMethodType ● String!​

Type of method used for payment.

customerIpAddress ● String​

IP address of the user who created the payment.

Requires the MANAGE_ORDERSpermission.

chargeStatus ● PaymentChargeStatusEnum!​

Internal payment status.

actions ● [OrderAction!]!​

List of actions that can be performed in the current state of a payment.

Requires the MANAGE_ORDERSpermission.

total ● Money​

Total amount of the payment.

capturedAmount ● Money​

Total amount captured for this payment.

transactions ● [Transaction!]​

List of all transactions within this payment.

Requires the MANAGE_ORDERSpermission.

availableCaptureAmount ● Money​

Maximum amount of money that can be captured.

Requires the MANAGE_ORDERSpermission.

availableRefundAmount ● Money​

Maximum amount of money that can be refunded.

Requires the MANAGE_ORDERSpermission.

creditCard ● CreditCard​

The details of the card used for this payment.

pspReference ● String​

PSP reference of the payment.

Interfaces​

Node​

An object with an ID

ObjectWithMetadata​

Returned By​

payment query

Member Of​

CheckoutPaymentCreate object ● Order object ● PaymentAuthorize object ● PaymentCapture object ● PaymentCaptureEvent object ● PaymentConfirmEvent object ● PaymentCountableEdge object ● PaymentProcessEvent object ● PaymentRefund object ● PaymentRefundEvent object ● PaymentVoid object ● PaymentVoidEvent object ● Transaction object