> Documentation index: [Saleor](/llms.txt) · [This section](/api-reference/payments/llms.txt)
> Source: https://docs.saleor.io/api-reference/payments/objects/payment

# Payment Object

Represents a payment of a given type.

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

```graphql
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
}
```

<a id="fields"></a>

### Fields

<a id="id"></a>

#### [`id`](#id) ● [`ID!`](/api-reference/miscellaneous/scalars/id.md)

ID of the payment.

<a id="private-metadata"></a>

#### [`privateMetadata`](#private-metadata) ● [`[MetadataItem!]!`](/api-reference/miscellaneous/objects/metadata-item.md)

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

<a id="private-metafield"></a>

#### [`privateMetafield`](#private-metafield) ● [`String`](/api-reference/miscellaneous/scalars/string.md)

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

Tip: Use GraphQL aliases to fetch multiple keys.

<a id="payment-private-metafield-key"></a>

##### [`key`](#payment-private-metafield-key) ● [`String!`](/api-reference/miscellaneous/scalars/string.md)

<a id="private-metafields"></a>

#### [`privateMetafields`](#private-metafields) ● [`Metadata`](/api-reference/miscellaneous/scalars/metadata.md)

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

<a id="payment-private-metafields-keys"></a>

##### [`keys`](#payment-private-metafields-keys) ● [`[String!]`](/api-reference/miscellaneous/scalars/string.md)

<a id="metadata"></a>

#### [`metadata`](#metadata) ● [`[MetadataItem!]!`](/api-reference/miscellaneous/objects/metadata-item.md)

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

<a id="metafield"></a>

#### [`metafield`](#metafield) ● [`String`](/api-reference/miscellaneous/scalars/string.md)

A single key from public metadata.

Tip: Use GraphQL aliases to fetch multiple keys.

<a id="payment-metafield-key"></a>

##### [`key`](#payment-metafield-key) ● [`String!`](/api-reference/miscellaneous/scalars/string.md)

<a id="metafields"></a>

#### [`metafields`](#metafields) ● [`Metadata`](/api-reference/miscellaneous/scalars/metadata.md)

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

<a id="payment-metafields-keys"></a>

##### [`keys`](#payment-metafields-keys) ● [`[String!]`](/api-reference/miscellaneous/scalars/string.md)

<a id="gateway"></a>

#### [`gateway`](#gateway) ● [`String!`](/api-reference/miscellaneous/scalars/string.md)

Payment gateway used for payment.

<a id="is-active"></a>

#### [`isActive`](#is-active) ● [`Boolean!`](/api-reference/miscellaneous/scalars/boolean.md)

Determines if the payment is active or not.

<a id="created"></a>

#### [`created`](#created) ● [`DateTime!`](/api-reference/miscellaneous/scalars/date-time.md)

Date and time at which payment was created.

<a id="modified"></a>

#### [`modified`](#modified) ● [`DateTime!`](/api-reference/miscellaneous/scalars/date-time.md)

Date and time at which payment was modified.

<a id="token"></a>

#### [`token`](#token) ● [`String!`](/api-reference/miscellaneous/scalars/string.md)

Unique token associated with a payment.

<a id="checkout"></a>

#### [`checkout`](#checkout) ● [`Checkout`](/api-reference/checkout/objects/checkout.md)

Checkout associated with a payment.

<a id="order"></a>

#### [`order`](#order) ● [`Order`](/api-reference/orders/objects/order.md)

Order associated with a payment.

<a id="payment-method-type"></a>

#### [`paymentMethodType`](#payment-method-type) ● [`String!`](/api-reference/miscellaneous/scalars/string.md)

Type of method used for payment.

<a id="customer-ip-address"></a>

#### [`customerIpAddress`](#customer-ip-address) ● [`String`](/api-reference/miscellaneous/scalars/string.md)

IP address of the user who created the payment.

Requires the MANAGE\_ORDERS permission.

<a id="charge-status"></a>

#### [`chargeStatus`](#charge-status) ● [`PaymentChargeStatusEnum!`](/api-reference/payments/enums/payment-charge-status-enum.md)

Internal payment status.

<a id="actions"></a>

#### [`actions`](#actions) ● [`[OrderAction!]!`](/api-reference/payments/enums/order-action.md)

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

Requires the MANAGE\_ORDERS permission.

<a id="total"></a>

#### [`total`](#total) ● [`Money`](/api-reference/miscellaneous/objects/money.md)

Total amount of the payment.

<a id="captured-amount"></a>

#### [`capturedAmount`](#captured-amount) ● [`Money`](/api-reference/miscellaneous/objects/money.md)

Total amount captured for this payment.

<a id="transactions"></a>

#### [`transactions`](#transactions) ● [`[Transaction!]`](/api-reference/payments/objects/transaction.md)

List of all transactions within this payment.

Requires the MANAGE\_ORDERS permission.

<a id="available-capture-amount"></a>

#### [`availableCaptureAmount`](#available-capture-amount) ● [`Money`](/api-reference/miscellaneous/objects/money.md)

Maximum amount of money that can be captured.

Requires the MANAGE\_ORDERS permission.

<a id="available-refund-amount"></a>

#### [`availableRefundAmount`](#available-refund-amount) ● [`Money`](/api-reference/miscellaneous/objects/money.md)

Maximum amount of money that can be refunded.

Requires the MANAGE\_ORDERS permission.

<a id="credit-card"></a>

#### [`creditCard`](#credit-card) ● [`CreditCard`](/api-reference/payments/objects/credit-card.md)

The details of the card used for this payment.

<a id="psp-reference"></a>

#### [`pspReference`](#psp-reference) ● [`String`](/api-reference/miscellaneous/scalars/string.md)

PSP reference of the payment.

<a id="interfaces"></a>

### Interfaces

<a id="node"></a>

#### [`Node`](/api-reference/miscellaneous/interfaces/node.md)

An object with an ID

<a id="objectwithmetadata"></a>

#### [`ObjectWithMetadata`](/api-reference/miscellaneous/interfaces/object-with-metadata.md)

<a id="returned-by"></a>

### Returned By

[`payment`](/api-reference/deprecated/payments/queries/payment.md) query

<a id="member-of"></a>

### Member Of

[`CheckoutPaymentCreate`](/api-reference/checkout/objects/checkout-payment-create.md) object  ● [`Order`](/api-reference/orders/objects/order.md) object  ● [`PaymentAuthorize`](/api-reference/payments/objects/payment-authorize.md) object  ● [`PaymentCapture`](/api-reference/payments/objects/payment-capture.md) object  ● [`PaymentCaptureEvent`](/api-reference/payments/objects/payment-capture-event.md) object  ● [`PaymentConfirmEvent`](/api-reference/payments/objects/payment-confirm-event.md) object  ● [`PaymentCountableEdge`](/api-reference/payments/objects/payment-countable-edge.md) object  ● [`PaymentProcessEvent`](/api-reference/payments/objects/payment-process-event.md) object  ● [`PaymentRefund`](/api-reference/payments/objects/payment-refund.md) object  ● [`PaymentRefundEvent`](/api-reference/payments/objects/payment-refund-event.md) object  ● [`PaymentVoid`](/api-reference/payments/objects/payment-void.md) object  ● [`PaymentVoidEvent`](/api-reference/payments/objects/payment-void-event.md) object  ● [`Transaction`](/api-reference/payments/objects/transaction.md) object
