ShopifyWebhookTransaction
Shopify webhook transaction from the new plugin-based architecture. Uses synchronous processing (no Celery queue bugs) and preserves all Shopify data for debugging and future field mapping updates.
type ShopifyWebhookTransaction implements Node, Job {
id: ID!
status: JobStatusEnum!
createdAt: DateTime!
updatedAt: DateTime!
message: String
eventType: String
shopifyDomain: String
shopifyWebhookId: String
rawPayload: JSONString
mappedData: JSONString
unmappedFields: JSONString
validationErrors: JSONString
fieldMappingVersion: String
processingMetadata: JSONString
entitiesCreated: [String!]
entitiesFailed: JSONString
isPartialSuccess: Boolean
marketplaceEntityLink: String
productId: Int
variantId: Int
warehouseId: Int
stockId: Int
seller: Seller!
tenant: Tenant
}
Fields
ShopifyWebhookTransaction.id ● ID! non-null scalar
The Globally Unique ID of this object
ShopifyWebhookTransaction.status ● JobStatusEnum! non-null enum
Job status.
ShopifyWebhookTransaction.createdAt ● DateTime! non-null scalar
Created date time of job in ISO 8601 format.
ShopifyWebhookTransaction.updatedAt ● DateTime! non-null scalar
Date time of job last update in ISO 8601 format.
ShopifyWebhookTransaction.message ● String scalar
Job message.
ShopifyWebhookTransaction.eventType ● String scalar
Shopify event type (e.g., 'products/create', 'inventory_levels/update')
ShopifyWebhookTransaction.shopifyDomain ● String scalar
Shop domain that sent the webhook (e.g., 'my-store.myshopify.com')
ShopifyWebhookTransaction.shopifyWebhookId ● String scalar
Shopify's webhook ID from X-Shopify-Webhook-Id header
ShopifyWebhookTransaction.rawPayload ● JSONString scalar
Complete unmodified Shopify webhook payload. Preserves ALL fields from Shopify, including unmapped ones.
ShopifyWebhookTransaction.mappedData ● JSONString scalar
Data after field mapping transformation applied. Shows what values were extracted from raw_payload.
ShopifyWebhookTransaction.unmappedFields ● JSONString scalar
Shopify fields that don't have Nautical field mappings.
ShopifyWebhookTransaction.validationErrors ● JSONString scalar
Per-field validation errors with severity levels. Format: {field_name: {message, severity, value}}.
ShopifyWebhookTransaction.fieldMappingVersion ● String scalar
Version of Shopify field mapping configuration used (e.g., '1.0.0').
ShopifyWebhookTransaction.processingMetadata ● JSONString scalar
Shopify-specific processing context (API version, timing, retries).
ShopifyWebhookTransaction.entitiesCreated ● [String!] list scalar
List of successfully created entities. Format: ['product:uuid-123', 'variant:uuid-456', 'stock:uuid-789'].
ShopifyWebhookTransaction.entitiesFailed ● JSONString scalar
List of entities that failed creation with error details.
ShopifyWebhookTransaction.isPartialSuccess ● Boolean scalar
True if webhook processing succeeded for some but not all entities.
ShopifyWebhookTransaction.marketplaceEntityLink ● String scalar
Link to primary created marketplace entity (e.g., '/products/123').
ShopifyWebhookTransaction.productId ● Int scalar
Product ID if this webhook created/updated a product
ShopifyWebhookTransaction.variantId ● Int scalar
ProductVariant ID if this webhook created/updated a variant
ShopifyWebhookTransaction.warehouseId ● Int scalar
Warehouse ID if this webhook created/updated a warehouse (location)
ShopifyWebhookTransaction.stockId ● Int scalar
Stock ID if this webhook created/updated inventory levels
ShopifyWebhookTransaction.seller ● Seller! non-null object
Seller associated with this Shopify webhook
ShopifyWebhookTransaction.tenant ● Tenant object
Tenant this webhook belongs to
Interfaces
Node interface
An object with a Globally Unique ID
Job interface
An async job that tracks status and progress.