This EVRYTHNG Reactor script offers an integration with Arianee in order to generate blockchain based transferable (ERC-721) digital certificates for each EVRYTHNG Active Digital Identity.
Node version: v10.23.0
You need to create the _NFTGenerated
and _GenerateNFT
Action types.
When onActionCreated
is triggered by the Reactor, the script checks if a certificate has already been generated for the THNG (
by checking the arianeeCertificateHasBeenGenerated
customField).
If it isn't the case, it generates a certificate and adds arianeeCertificatePassphrase
and arianeeCertificateId
to the customFields
of the THNG.
Once it is done, it generates a _NFTGenerated
Action with the certificate information inside.
To make the script work, you need to add a few fields to your Application customFields
:
walletKey
: The key of your wallet (e.g '0x00000...').arianeeEnvironment
: The Arianee environment (test
orproduction
)certificateURL
: The URL of a hosted JSON that corresponds to the certificate you want to deliver. See the JSON certificate section for an example.
Start by cloning this project. Then, you'll need to configure a few variables as explained in the previous section.
Once you have configured the Reactor script, you have to deploy it to your application. You can deploy it manually or can do it
via the EVRYTHNG API. We suggest you use the deploy_reactor
command defined in package.json
.
You just need to modify this part of the command with your PROJECT_ID
and APPLICATION_ID
:
PUT 'https://api.evrythng.com/projects/PROJECT_ID/applications/APPLICATION_ID/reactor/script'
You will also need to update access_key.secret
with your OPERATOR_API_KEY
. To get it, go to your account
(top right corner of the EVRYTHNG developer dashboard) and select Account settings
.
Finally, run this command to deploy the script:
npm run deploy_reactor
In the folder arianee_webapp
, there is a React application.
You can use it to build an end to end solution to test the Arianee integration.
Here is an example of an Arianee JSON certificate:
{
"$schema": "https://cert.arianee.org/version1/ArianeeProductCertificate-i18n.json",
"name": "Luxiva",
"sku": "YOUR_SKU",
"gtin": "YOUR_GTIN",
"brandInternalId": "NYC12345",
"category": "accessory",
"intended": "womens",
"serialnumber": [
{
"type": "serialnumber",
"value": "SERIAL_NUMBER"
},
{
"type": "casenumber",
"value": "CASE_NUMBER"
}
],
"subBrand": "Luxiva Cosmetics",
"model": "PureDerm Cream Soap Original 100g",
"language": "en-US",
"description": "<b>Description</b>\nPremium soap bar",
"subDescription": [],
"externalContents": [
{
"type": "website",
"title": "EVRYTHNG Website",
"url": "https://www.evrythng.com/",
"order": 1
}
],
"msrp": [
{
"msrp": "35000",
"currency": "EUR",
"msrpCountry": "Europe"
},
{
"msrp": "32000",
"currency": "GBP",
"msrpCountry": "United Kingdom"
},
{
"msrp": "40000",
"currency": "USD",
"msrpCountry": "USA"
}
],
"medias": [
{
"mediaType": "picture",
"type": "product",
"url": "https://s3.amazonaws.com/evtcdn_02/2/uf/UMyr7GYFSn2HrEwRwmhm8Cdk/Pure%20derm%20cream%20soap.jpg",
"order": 1
}
],
"attributes": [
{
"type": "color",
"value": "Gold"
}
],
"materials": [
{
"material": "gold",
"pourcentage": "50%"
}
],
"size": [
{
"type": "depth",
"value": "6",
"unit": "in"
},
{
"type": "depth",
"value": "3,6",
"unit": "cm"
}
],
"manufacturingCountry": "Switzerland",
"facilityId": "12345",
"productCertification": [
{
"name": "fairtrade"
}
]
}