Skip to main content
Payment Profile Webhooks
P
Written by Product Sticky
Updated over a week ago

This guide explains how webhook events related to payment profiles in sticky system. These webhooks provide real-time notifications when payment profiles are created or updated through either the CRM provider's UI or the V2 API.

Available Events

We support 2 main webhook events for payment profile operations:

  1. payment.profile.created - Triggered when a new payment profile is created.

  2. payment.profile.updated - Triggered when a payment profile is modified.

Event Details (payment.profile.created)

This event is triggered when a new payment profile is created in the system. The webhook payload maintains parity with the options available on the CRM provider's page.

How to Trigger the Event

Through CRM Product UI:

  • Navigate to the Actions menu

  • Select "Add New Provider Profile"

  • Choose "Payment/Gateway" as the Type

  • Fill in the required profile details

  • Click "Save"

Alternatively, you can create a copy of an existing Payment/Gateway profile by clicking the "..." menu and selecting "Copy".

Through the API’s:

  • Use the V2 API to Create Profile endpoints.

What Information Will You Receive?

You will receive the profile ID, associated payment provider details, and the timestamp of when the profile was created.

Decrypted JSON Encoded Payload

{
"clientAppKey": "app_key_here",
"type": "payment.profile.created",
"time": "2024-12-31 11:45:43",
"data": {
"id": "58617f9e-414b-47a4-88b1-82d331eafdd1",
"object": {
"id": 2,
"provider_type": "Payment",
"provider_name": "Payment_provider_name",
"created_at": "2024-01-19T09:45:40-05:00",
"is_active": 1,
"is_archived": 0,
"alias": "payment_provider_alias",
"credentials": {
"currency": "USD"
},
"merchant_account_details": {
"descriptor": "merchant_descriptor",
"merchant_id": "MID1234",
"customer_service_number": "1234567",
"customer_service_email": "customer_service-email",
"customer_service_email_from": "customer_service_email_from",
"mid_group": "MIDG1234",
"processor": "processor_name",
"vertical": "Art, Photo & Music"
}
},
"created": "2024-12-31 11:45:43",
"triggeringEvent": "",
"correlationId": "3131dede-5b2a-44e6-96ab-8bd533d99a16"
}
}

Event Details (payment.profile.updated)

This event is triggered whenever an existing payment profile is modified. This includes updates to profile details, status changes (enable/disable), and archival operations.

How to Trigger the Event

Through CRM Product UI:

  • Edit Profile:

    • Locate a Payment/Gateway profile

    • Click the "..." menu

    • Select "Edit"

    • Make desired changes

    • Click "Save"

  • Status Changes:

    • Disable Profile: "..." → "Disable" → "Yes"

    • Archive Profile: "..." → "Archive" → "Yes"

    • Unarchive Profile: Navigate to Archived section → "..." → "Unarchive" → "Yes"

Through the API’s:

  • Use the V2 API to Update Profile endpoint.

What Information Will You Receive?

You will receive the profile ID, details of the modifications (e.g., updates, status changes), and the timestamp of the update.

Decrypted JSON Encoded Payload

{
"clientAppKey": "app_key_here",
"type": "payment.profile.updated",
"time": "2024-12-31 11:45:43",
"data": {
"id": "58617f9e-414b-47a4-88b1-82d331eafdd1",
"object": {
"id": 2,
"provider_type": "Payment",
"provider_name": "payment_provider_name",
"created_at": "2024-01-19T09:45:40-05:00",
"is_active": 1,
"is_archived": 0,
"alias": "payment_provider_alias",
"credentials": {
"currency": "USD"
},
"merchant_account_details": {
"descriptor": "merchant_descriptor",
"merchant_id": "MID1234",
"customer_service_number": "1234567",
"customer_service_email": "customer_service-email",
"customer_service_email_from": "customer_service_email_from",
"mid_group": "MIDG1234",
"processor": “processor_name”,
"vertical": "Art, Photo & Music"
}
},
"created": "2024-12-31 11:45:43",
"triggeringEvent": "",
"correlationId": "3131dede-5b2a-44e6-96ab-8bd533d99a16"
}
}

Understanding the Payload

The webhook payload consists of these key components in JSON format:

  • clientAppKey: Identifies the client application

  • type: Event type ("payment.profile.created" or "payment.profile.updated")

  • time: Timestamp of the event

Data Object

The data object contains the payment profile information:

  • id: Unique identifier for the webhook event

  • object: Contains profile details like provider name, type, and status

  • credentials: Payment provider configuration including currency

  • merchant_account_details: Contains merchant information like IDs and contact details

  • created: Event creation timestamp

  • correlationId: Tracking ID for related events

Did this answer your question?