How do I add a webhook to my platform? I'm a developer.
      • 05 Jul 2023
      • 1 Minute to read
      • Contributors
      • Dark
        Light

      How do I add a webhook to my platform? I'm a developer.

      • Dark
        Light

      Article summary

      Simplified Webhook Interaction
      For Developers that want to include a Webhook in your CRM.
      If you need additional information, please contact help@printgenie.io

      *NOTE:
      This is for CRM's that want to include a PRINTgenie webhook within their CRM application.
      This is not necessary if you are already working with a CRM.

      Template Selection
      Product specification is simplified by dynamically encoding the required SKU Number and target Template ID into the webhook based on the template the user copies the hook from on PRINTgenie.
      PRINTgenie-webhook.jpg


      Authentication
      No additional authentication steps are required as we’ve encoded your user data directly into the webhook. Be sure you don’t share you’re webhooks with anyone because this unique webhook can place orders on your behalf!
      PRINTgenie-authentication-sample.jpg


      Address Data Delivery
      We’ll need the webhook to be executed as an HTTP POST and have the intended recipient sent to us from your platform.  We currently support up to 300 addresses per request serialized as application/json.
      The minimum required address data is:
      PRINTgenie-address-data-sample-V2.jpg


      Custom Variable Data
      This data can be extended to include any custom variable data needed, simply add a custom_field object to your contact object:
      PRINTgenie-custom-variable-data.jpg


      Payment Processing
      Based on the encoded API Key, we will be able to collect payment directly from the end-user. This will necessitate that the end user maintains their balance. Users can turn on their auto-pay feature to help reduce the risk of failed automations due to insufficient funds.

      autofund.jpg


      Error detection
      If anything goes wrong with the order (for example insufficient funds) our webhook will return an non-200 HTTP response along with application/json data describing the nature of the failure.
      It’s advisable that you implement some sort of user-facing alert when this occurs so the user can take corrective action; like Zapier’s Zap History for example:

      PRINTgenie-zapier-sample.jpg

      Here’s an example of a failure response from our one-off-marketing webhook:
      PRINTgenie-error-detection-sample.jpg


      Data Quality
      It is recommended that you either purchase pre-validated address data directly from PRINTgenie or you sanitize your address data using our data cleaning APIs. This will significantly reduce any failed deliveries and wasted marketing dollars.


      Override account profile’s return label address data
      You can override profile-source variables by mapping the following variables in your webhook payload’s custom_fields object:
      override-return-address.png

      To use custom return-label data, use the new system-reserved merge tags below:

      {{return_name}}
      {{return_street}}
      {{return_city}}
      {{return_state}}
      {{return_zip}}