Skip to main content

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!
message: String
createdAt: DateTime!
updatedAt: DateTime!
tenant: Tenant!
seller: Seller!
eventType: String
shopifyDomain: String
shopifyWebhookId: String
rawPayload: JSONString
mappedData: JSONString
unmappedFields: JSONString
fieldMappingVersion: String
processingMetadata: JSONString
validationErrors: JSONString
entitiesCreated: [String]
entitiesFailed: JSONString
isPartialSuccess: Boolean
marketplaceEntityLink: String
productId: Int
variantId: Int
warehouseId: Int
stockId: Int
}
Show more ↓

Fields

ShopifyWebhookTransaction.id ● ID! non-null scalar

The ID of the object

ShopifyWebhookTransaction.status ● JobStatusEnum! non-null enum

Job status.

ShopifyWebhookTransaction.message ● String scalar

Job message.

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.tenant ● Tenant! non-null object

ShopifyWebhookTransaction.seller ● Seller! non-null object

Seller associated with this webhook

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. Use this for debugging or accessing fields not yet in Nautical schema.

ShopifyWebhookTransaction.mappedData ● JSONString scalar

Data after field mapping transformation applied. Shows what values were extracted from raw_payload and how they were transformed to Nautical format. Compare with validation_errors to see which fields had issues.

ShopifyWebhookTransaction.unmappedFields ● JSONString scalar

Shopify fields that don't have Nautical field mappings. Preserved for future use. If you see important data here, you can configure custom field mappings in your plugin settings.

ShopifyWebhookTransaction.fieldMappingVersion ● String scalar

Version of Shopify field mapping configuration used (e.g., '1.0.0'). Used to track schema evolution. If mappings change, you can identify which webhooks used old vs new mappings.

ShopifyWebhookTransaction.processingMetadata ● JSONString scalar

Shopify-specific processing context. Includes: API version, processing time, retry count, etc. Useful for performance analysis and debugging.

ShopifyWebhookTransaction.validationErrors ● JSONString scalar

Per-field validation errors with severity levels. Format: {field_name: {message, severity, value}}. Severity: 'warning' (non-critical), 'error' (needs fixing), 'critical' (blocks creation).

ShopifyWebhookTransaction.entitiesCreated ● [String] list scalar

List of successfully created entities. Format: ['product:uuid-123', 'variant:uuid-456', 'stock:uuid-789']. Use this to track what Nautical entities were created from the Shopify webhook.

ShopifyWebhookTransaction.entitiesFailed ● JSONString scalar

List of entities that failed creation with error details. Format: [{type, shopify_id, error, details}]. Review this to understand why some entities couldn't be created.

ShopifyWebhookTransaction.isPartialSuccess ● Boolean scalar

True if webhook processing succeeded for some but not all entities. Example: Product created but 2 out of 5 variants failed validation. Check entities_failed for details on what went wrong.

ShopifyWebhookTransaction.marketplaceEntityLink ● String scalar

Link to primary created marketplace entity (e.g., '/products/123'). Use this to navigate directly to the created entity in the Dashboard.

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

Interfaces

Node interface

An object with an ID

Job interface

Member Of

ShopifyWebhookTransactionCountableEdge object

Was this page helpful?