Skip to main content

CreateTransactionInput

Transaction creation data including operation type, amount, and processing details.

Contains all necessary information to create a transaction record including transaction type, amounts, currency, and processing status. All monetary amounts must be expressed in the smallest currency unit (cents) for precision.

input CreateTransactionInput {
transactionId: String!
paymentId: String
amount: Int!
currency: String!
description: String
timestamp: DateTime
type: TransactionTypes!
provider: String
status: TransactionStatuses!
}

Fields

CreateTransactionInput.transactionId ● String! non-null scalar

External transaction identifier provided by the payment service provider for tracking.

Unique transaction reference provided by the Payment Service Provider (PSP) for tracking and reconciliation. Used for transaction status updates and matching with external systems. Maximum length of 255 characters.

CreateTransactionInput.paymentId ● String scalar

External payment identifier provided by the payment service provider for correlation.

External payment identifier provided by the Payment Service Provider for correlation with parent payment. Used to link transactions to their originating payments in external systems. Maximum length of 255 characters.

CreateTransactionInput.amount ● Int! non-null scalar

Transaction amount in smallest currency unit (cents) for precise financial calculations.

The transaction amount expressed in the smallest denomination of the currency (e.g., cents for USD, pence for GBP). Must be a positive integer for precise financial calculations.

CreateTransactionInput.currency ● String! non-null scalar

ISO 4217 three-letter currency code for international financial transactions.

Three-letter currency code (e.g., USD, EUR, GBP) following ISO 4217 standard. Used for currency conversion and financial reporting. Must be exactly 3 uppercase letters.

CreateTransactionInput.description ● String scalar

Human-readable description of the transaction purpose or details.

Optional descriptive text explaining the transaction purpose or providing additional context for record keeping and audit trails. Maximum length of 500 characters.

CreateTransactionInput.timestamp ● DateTime scalar

Timestamp when the transaction was processed by the payment service provider.

ISO 8601 formatted timestamp indicating when the transaction was processed by the external payment service provider. Used for transaction sequencing and audit trails.

CreateTransactionInput.type ● TransactionTypes! non-null enum

Type of transaction operation to be performed.

Specifies the specific payment operation to execute (authorization, capture, refund, etc.). Each type has distinct business logic and financial implications for the payment workflow.

CreateTransactionInput.provider ● String scalar

Name of the payment service provider processing the transaction.

Identifies the external payment service provider handling the transaction processing. Used for provider-specific logic and reporting. Maximum length of 100 characters.

CreateTransactionInput.status ● TransactionStatuses! non-null enum

Initial processing status for the new transaction.

Sets the starting status for the transaction processing workflow. Determines the initial state and available actions for the transaction lifecycle management.

Member Of

CreatePaymentInput input ● UpdatePaymentInput input