For discussing the development and usage of Checkout UI extensions, post-purchase extensions, web pixels, Customer Accounts UI extensions, and POS UI extensions
Hey guys!
I want to use SetMetafieldChange in my Post-Purchase extension in combination with metafield under reserved namespace. And no matter what configuration I'm trying, it fails every time. (Works with non-reserved namespaces though).
Changeset I'm signing:
{
"type": "set_metafield",
"namespace": "$app:post-purchase",
"key": "key",
"valueType": "json_string",
"value": "{\"key\": 1}"
}
Metafield definition:
"createdDefinition": {
"id": "gid://shopify/MetafieldDefinition/1",
"access": {
"admin": "MERCHANT_READ"
},
"description": "Description",
"key": "key",
"name": "name",
"namespace": "app--11111111--post-purchase",
"ownerType": "ORDER",
"pinnedPosition": null,
"type": {
"category": "JSON",
"name": "json",
"supportedValidations": [
{
"name": "schema",
"type": "json"
}
],
"supportsDefinitionMigrations": true
},
"useAsCollectionCondition": false,
"validationStatus": "ALL_VALID",
"validations": []
},
"userErrors": []
}
An error I'm getting:
{
"errors": [
{
"code": "server_error",
"message": "Error adding metafield $app:post-purchase:key to order"
}
],
"status": "unprocessed"
}
Does it mean I can't use protected namespaces to set metafield inside post_purchase? Or am I missing something?
Hi Alexander_v,
Can you confirm that you're using the correct API client ID as the parameter in the name space? The example in the docs shows that if your API client ID was 123456, then your resolved reserved namespace would resolve to look like this: app--123456--some-namespace.
Liam | Developer Advocate @ Shopify
- Was my reply helpful? Click Like to let me know!
- Was your question answered? Mark it as an Accepted Solution
- To learn more visit Shopify.dev or the Shopify Web Design and Development Blog
Hi Liam!
Yep, I'm using correct ID. I tried both, using just $app prefix and fully resolved namespace like app--123456--some-namespace
If this is still not working I'd recommend reaching out to Partner Support directly to look deeper into the call and store in order to test this out and determine what's happening here. You can open a support ticket via the Support section of your partner dashboard.
Liam | Developer Advocate @ Shopify
- Was my reply helpful? Click Like to let me know!
- Was your question answered? Mark it as an Accepted Solution
- To learn more visit Shopify.dev or the Shopify Web Design and Development Blog