Automatically Send Purchases to Suppliers | ION Factory OS
The manual for the New ION Experience has been released.
For the complete documentation index, see llms.txt. This page is also available as Markdown.
Overview
Auto-send purchases to suppliers
Setup
In ION, navigate to integrations, and go to the marketplace. Activate the "Auto-send Purchase Emails to Suppliers" integration. Go to the configuration.
Let's first configure the Microsoft Outlook Connection. This will require creating a new "App Registration" in your Azure Active Directory. See the Prismatic instructions here for further details. Also, check out the video below. Once you have a new app created in Active Directory, you can input the client secret value into the ION integration (make sure to not share secret values with anyone!). Finally, click connect in the integration configuration, which will trigger one final round of authentication.
Purchase sender - outlook connection
Add an ION API key. You can find information on how to create this here. Input the
clientIdandclientSecretinto the integration configuration after you have generated the API key.Ensure that the configuration settings are good (they will have a green icon next to them) and close the modal. Start with test mode on so that you can make sure the email is properly sent to you.
We now need to instruct ION on when to trigger the integration. In the organization settings of ION, create a custom attribute for purchase orders named "Send email to supplier". Make sure this is a header purchase attribute and not a line level attribute!
Add a new webhook to ION to listen for changes to this attribute. More info on webhooks here.
- Add a new webhook receiver using the Prismatic URL. The URL is available under the "Test" tab in the integration. Use the code below in the
graphiQLeditor to generate the receiver. Make sure to replace the<Prismatic URL here>with the Prismatic URL.
Copy
mutation CreateWebhookReceiver($input: CreateWebhookReceiverInput!) {
createWebhookReceiver(input: $input) {
webhookReceiver {
id name description webhookUri sharedSecret contentType expectedResponseCode
active subscriptions { resource action id } headers { key value id }
}
}
}
{
"input": {
"name": "Purchase email sender",
"webhookUri": "<Prismatic URL here>"
}
}
- Now we need to instruct ION when to signal the receiver. Call the below mutation to listen for purchase order attribute changes. Make sure to update the input below with
receiverIdfrom the previous step.
Copy
mutation CreateWebhookSubscription($input: CreateWebhookSubscriptionInput!) {
createWebhookSubscription(input: $input) {
webhookSubscription {
resource action id active receiverId events { id status }
}
}
}
{
"input": {
"receiverId": <ReceiverId from previous step>,
"resource": "PURCHASE_ORDERS_ATTRIBUTES",
"action": "UPDATE"
}
}
- This will listen for anytime the attribute changes, but we now need to also listen for when the attribute is first populated. Add one more subscription as shown below to listen for the creation of the attribute:
Copy
{
"input": {
"receiverId":
1. That's it! Now you should be ready to automatically trigger purchase emails with attached PDFs. Turn **test mode** off once you confirm the email is working. When test mode is off, it will send the email to your suppliers based on the email from the supplier information in ION.