Sorry, you need to enable JavaScript to visit this website.
Skip to main content

Open Banking Consent Events

What is an Open Banking Event?

Our Open Banking (OB) event service allows customers to meet regulatory requirements concerning end-user notifications or to provide other functionality dependent on knowing the state of user consent to collect and use data.

To comply with Subdivision 4.3.5 of the CDR Rules, Australian (AU) OB customers must send notifications “in writing otherwise than through the CDR consumer’s dashboard” to end users whenever consent is granted, amended or revoked (CDR Receipts) as well as ongoing notifications for ongoing consents.

We recommend AU OB customers comply with this requirement by sending an SMS or email to end-users. The rules require that notifications must contain details of the consent, including the requested data, use of the data, time of grant and scheduled expiry, data access frequency, data provider name (e.g., ABC bank), the data recipient name and details of any disclosure consents (such as to trusted advisors or of CDR Insights).

We provide these events to customers of all OB-supported regions. Currently, we do not provide these notifications in PDF format.

Note: OB onboarding must be completed for the relevant OB region before subscribing to the events service.

Consent Status Updates Event

The consent status updates event - OB_CONSENT - occurs when consent is created, amended, expired, or revoked. Information from this event can be used to send a CDR Receipt to AU OB end users (see CDR Rules 4.18, 4.18A and 4.18C). Customers from other OB-supported regions can use this information per their business needs.

Event Subscription

Subscribe to the OB_CONSENT event using the Subscribe Event service and provide the callback URL where the notifications have to be posted. This is a one-time activity unless and until there is a change to the URL. Note that only one webhooks URL at a time is supported.

Active Consent Updates Event

The active consent updates event - OB_ACTIVE_CONSENT_REMINDER - notifies that an end-user consent is still active and has been - 90 days for the AU region and other OB-supported regions 30, 60, 90, 120, 150, and 180 days - since the last notification or relevant user action. This event can be used to trigger an ongoing notification to AU OB customers (see CDR Rules 4.20).

Event Subscription

The subscribe API service allows to subscribe to the OB_ACTIVE_CONSENT_REMINDER event. Provide the callbackUrl and subscription parameters such as obRegion and notifyDurationDays details in the request body.

API URL:
POST    /configs/notifications/custom/events/OB_ACTIVE_CONSENT_REMINDER

Request Body Parameters:

Attributes Description Mandatory Data Type
callbackUrl URL to which the notification should be posted. Yes String
subscription Object to define the obRegion and notifyDurationDays details. At least one object having both obRegion and notifyDurationDays should be present should be present.

Valid Values:
  • obRegion - US, UK, and AU
  • notifyDurationDays - 30, 60, 60, 90, 120, 150, and 180
Yes String

Sample Request Body:

{
   "event":{
      "callbackUrl":"https://webhook.site/37629a8e-fb37-4351-9d93-cd86f0f11b00",
      "subscription":[
         {
            "obRegion":"US",
            "notifyDurationDays":20
         },
         {
            "obRegion":"UK",
            "notifyDurationDays":40
         },
         {
            "obRegion":"AU",
            "notifyDurationDays":90
         }
      ]
   }
}

Response Messages:

HTTP Status Code Reason
400 Y803: notifyDurationDays is required
400 Y803: obRegion is required
400 Y800: Invalid value for callbackUrl
400 Y800: Invalid value for obRegion
400 Y822: AU cannot be requested for number of days other than 90 days
400 Y804: Permitted values of notifyDurationDays between 1 – 365
400 Y400: Event OB_ACTIVE_CONSENT_REMINDER is already subscribed

Retrieve Event

Use the API to fetch callbackUrl, obRegion, and notifyDurationDays (all regions) details for the OB_ACTIVE_CONSENT_REMINDER event.

API URL:
GET   /configs/notifications/custom/events/OB_ACTIVE_CONSENT_REMINDER

Sample Response:

{
  "event": {
    "callbackUrl": "https://webhook.site/37629a8e-fb37-4351-9d93-cd86f0f11b00",
    "subscription": [
      {
        "obRegion": "US",
        "notifyDurationDays": 20
      },
      {
        "obRegion": "UK",
        "notifyDurationDays": 40
      },
      {
        "obRegion": "AU",
        "notifyDurationDays": 90
      }
    ]
  }
}

Response Messages:

HTTP Status Code Reason
400 Y807: Resource not found

Update Event

Use the API to update the callbackUrl and subscription parameters - obRegion, and notifyDurationDays details for the OB_ACTIVE_CONSENT_REMINDER event. If the subscription parameter has having multiple objects (i.e, obRegion and notifyDurationDays) then existing value completely replace with latest provided values in PUT API.

API URL:
PUT   /configs/notifications/custom/events/OB_ACTIVE_CONSENT_REMINDER

Request Body Parameters:

Attributes Description Mandatory Data Type
callbackUrl URL to which the notification should be posted. Yes String
subscription Object to define the obRegion and notifyDurationDays details. At least one object having both obRegion and notifyDurationDays should be present should be present.

Valid Values:
  • obRegion - US, UK, and AU
  • notifyDurationDays - 30, 60, 60, 90, 120, 150, and 180
Yes String

Sample Request Body:

{
   "event":{
      "callbackUrl":"https://webhook.site/37629a8e-fb37-4351-9d93-cd86f0f11b00",
      "subscription":[
         {
            "obRegion":"US",
            "notifyDurationDays":30
         },
         {
            "obRegion":"AU",
            "notifyDurationDays":90
         }
      ]
   }
}

Response Messages:

HTTP Status Code Reason
400 Y803: notifyDurationDays is required
400 Y803: obRegion is required
400 Y800: Invalid value for callbackUrl
400 Y800: Invalid value for obRegion
400 Y822: AU cannot be requested for number of days other than 90 days
400 Y804: Permitted values of notifyDurationDays between 1 – 365
400 Y400: Event OB_ACTIVE_CONSENT_REMINDER is already subscribed

Unsubscribe Event

Use the API to unsubscribe to the OB_ACTIVE_CONSENT_REMINDER event.

API URL:
DELETE   /configs/notifications/custom/events/OB_ACTIVE_CONSENT_REMINDER

Response Messages:

HTTP Status Code Reason
400 Y807: Resource not found

Event Payload Information

The payload sent to the customer-provided URL has a common structure regardless of the event type. Events are sent asynchronously in small batches - a single payload may contain multiple events.

  • OB_CONSENT

    A sample event for consent authorization is as follows:

{
   "event":{
      "data":{
         "consent":[
            {
               "dataAccessFrequency":"RECURRING",
               "consentId":12341234,
               "renewal":{
                  "defaultRenewalDuration":365,
                  "isReauthorizationRequired":true
               },
               "providerId":31193,
               "consentStatus":"ACTIVE",
               "providerAccountId":10107407,
               "providerConsentId":"e767574f-296a-4cb2-95e2-f5faf7584e22",
               "applicationDisplayName":"Sample application name",
               "startDate":"2023-05-17",
               "expirationDate":"2024-05-16"
            }
         ]
      },
      "notificationId":"ab5837ad-168201359",
      "info":"OB_CONSENT.CONSENT_CHANGES"
   }
}

A sample event for consent revocation is as follows:

{
   "event":{
      "data":{
         "consent":[
            {
               "dataAccessFrequency":"RECURRING",
               "consentId":12341234,
               "renewal":{
                  "defaultRenewalDuration":365,
                  "isReauthorizationRequired":true
               },
               "providerId":31193,
               "consentStatus":"REVOKED",
               "providerAccountId":12340274,
               "revokedDate":"2023-05-18",
               "providerConsentId":"e767574f-296a-4cb2-95e2-f5faf7584e22",
               "applicationDisplayName":"Sample application name",
               "startDate":"2023-05-17",
               "expirationDate":"2024-05-16"
            }
         ]
      },
      "notificationId":" ebb967b5-123412345",
      "info":"OB_CONSENT.CONSENT_CHANGES"
   }
}
  • OB_ACTIVE_CONSENT_REMINDER
{
   "event":{
      "data":{
         "consent":[
            {
               "dataAccessFrequency":"RECURRING",
               "consentId":12341234,
               "renewal":{
                  "defaultRenewalDuration":365,
                  "isReauthorizationRequired":true
               },
               "providerId":31193,
               "consentStatus":"ACTIVE",
               "providerAccountId":10107407,
               "providerConsentId":"e767574f-296a-4cb2-95e2-f5faf7584e22",
               "applicationDisplayName":"Sample application name",
               "startDate":"2023-05-17",
               "expirationDate":"2024-05-16",
               "obRegion":"AU",
               "notifyDurationDays":20
            }
         ]
      },
      "notificationId":"recsd8743ad-98283245",
      "info":"OB_ACTIVE_CONSENT_REMINDER"
   }
}

Note: All timestamps are in universal coordinated time (UTC).

Event Attributes Name Description
dataAccessFrequency The frequency, RECURRING or ONE_TIME, at which the system will access user data as part of the account refresh process. Frequency as applicable to the OB-supported region.
consentId The unique identifier for each user-consent.
renewal.defaultRenewalDuration The renewal duration for a given consent. The renewal duration's availability depends on the OB-supported region. For example, it is available for the AU region.
renewal.isReauthorizationRequired Indicates if renewing the consent is required.
providerId The unique identifier for the provider resource associated with the consent. This ID indicates the provider for which the provider account ID is generated by the user. This ID can be dereferenced using the Get Providers API.
consentStatus The consent status, as applicable to the relevant open banking region. Possible values are, REVOKED, ACTIVE, PENDING, and EXPIRED.
providerAccountId The unique identifier for the provider account resource associated with a consent. The ID is created during the account addition process and is made available via the Get Accounts API.
scope.titleBody Text that will be displayed as the titlebody of the consent data cluster.
scope.scopeId A unique identifier of the data cluster scope.
scope.title Text that will be displayed as the title of the particular scope.
providerConsentId Unique internal identifier for the consent and is made available via the Get Provider Accounts API.
applicationDisplayName The OB application name that will be displayed to the end user.
startDate The start date of the consent period.
expirationDate The date the refresh token expires, and the customer has to renew the access before it expires.
obRegion Indicates the OB region, i.e., US, UK, or AU.
Note: Available only for the OB_ACTIVE_CONSENT_REMINDER event.
notifyDurationDays The duration since the last notification or relevant user action for the consent.
Note: Available only for the OB_ACTIVE_CONSENT_REMINDER event.
notificationId Unique identifier for the notification.
info The info attribute value will either be OB_CONSENT.CONSENT_CHANGES or OB_ACTIVE_CONSENT_REMINDER.