Skip to main content

Webhook Events

2-3 hours

You may consume webhooks events to receive real-time notifications about your customers' activity on Ready to Launch Banking. Unit uses webhooks to notify your platform when an event occurs, such as when an application is denied, a customer is created, or a transaction is processed.

When one of these events occurs, an HTTP POST request is sent to your webhook's configured URL, allowing you to act upon it in real-time. This enables you to build responsive integrations, update your systems automatically, and provide better customer experiences.

Suggestion

Unit highly recommends that you make your webhook handlers Idempotent, to ensure events are only handled once on your end.

Setting Up Webhooks

To start receiving webhook events, you'll need to:

  1. Implement an endpoint on your server to receive and process webhook payloads
  2. Configure a webhook subscription using one of the methods below:
    • Sandbox Environment: Create your webhook subscription via the Unit Dashboard → DEVELOPER menu → Webhooks → Create
    • Production Environment: Contact your Unit solution engineer to help set up webhook subscriptions
  3. Verify webhook signatures to ensure security and authenticity (see Securing your webhooks)

Unit sends POST requests to your webhook's URL from one of the following IP addresses:

EnvironmentIP Addresses
Sandbox54.81.62.38
35.169.213.205
3.234.105.75
Live3.209.193.26
54.156.65.95
54.165.224.37

Please note that these IP addresses are subject to change.

Suggestion

On production, webhooks that were unresponsive for 7 days will change status to Unavailable and will cease to receive events until they are re-enabled.

On sandbox, webhooks that were unresponsive for 2 days will be changed to status Unavailable.

Available Webhook Events for RTL Banking

Ready-to-Launch Banking clients can subscribe to the following webhook events:

application.created

Occurs when a new application is submitted. The userIds refers to the user IDs in your system.

Example application.created payload:

{
"data": [
{
"id": "308",
"type": "application.created",
"attributes": {
"userIds": ["user_12345"],
"createdAt": "2025-12-14T19:56:29.223Z"
}
}
]
}

application.awaitingDocuments

Occurs when additional documents are required for an application. The userIds refers to the user IDs in your system.

Example application.awaitingDocuments payload:

{
"data": [
{
"id": "313",
"type": "application.awaitingDocuments",
"attributes": {
"userIds": ["user_12345"],
"createdAt": "2025-12-14T20:21:22.000Z"
}
}
]
}

application.pendingReview

Occurs when an application is pending review. The userIds refers to the user IDs in your system.

Example application.pendingReview payload:

{
"data": [
{
"id": "315",
"type": "application.pendingReview",
"attributes": {
"userIds": ["user_12345"],
"createdAt": "2025-12-14T20:25:00.000Z"
}
}
]
}

application.denied

Occurs when an application is rejected. The userIds refers to the user IDs in your system.

Example application.denied payload:

{
"data": [
{
"id": "28",
"type": "application.denied",
"attributes": {
"userIds": ["user_12345"],
"createdAt": "2020-07-29T12:53:05.882Z"
}
}
]
}

application.canceled

Occurs when an application is canceled. The userIds refers to the user IDs in your system.

Example application.canceled payload:

{
"data": [
{
"id": "314",
"type": "application.canceled",
"attributes": {
"userIds": ["user_12345"],
"createdAt": "2025-12-14T20:21:47.872Z"
}
}
]
}

customer.created

Occurs when a new customer record is established after application approval. The userIds array contains the user IDs from your system.

Example customer.created payload:

{
"data": [
{
"id": "53",
"type": "customer.created",
"attributes": {
"createdAt": "2020-07-29T12:53:05.882Z",
"name": "Acme Corp",
"userIds": ["user_12345"]
},
"relationships": {
"customer": {
"data": {
"id": "10000",
"type": "businessCustomer"
}
}
}
}
]
}

account.created

Occurs when a new deposit account is successfully created for a customer.

Example account.created payload:

{
"data": [
{
"id": "269",
"type": "account.created",
"attributes": {
"createdAt": "2021-04-13T07:40:43.813Z",
"accountNumber": "1000000001",
"routingNumber": "812345678"
},
"relationships": {
"account": {
"data": {
"id": "10004",
"type": "account"
}
},
"customer": {
"data": {
"id": "10000",
"type": "customer"
}
}
}
}
]
}

account.frozen

Occurs when account access is restricted.

Example account.frozen payload:

{
"data": [
{
"id": "2354",
"type": "account.frozen",
"attributes": {
"createdAt": "2021-12-08T07:43:13.813Z",
"accountNumber": "1000000001",
"routingNumber": "812345678"
},
"relationships": {
"account": {
"data": {
"id": "10004",
"type": "account"
}
},
"customer": {
"data": {
"id": "10000",
"type": "customer"
}
}
}
}
]
}

account.unfrozen

Occurs when account access is restored.

Example account.unfrozen payload:

{
"data": [
{
"id": "2355",
"type": "account.unfrozen",
"attributes": {
"createdAt": "2021-12-08T07:43:13.813Z",
"accountNumber": "1000000001",
"routingNumber": "812345678"
},
"relationships": {
"account": {
"data": {
"id": "10004",
"type": "account"
}
},
"customer": {
"data": {
"id": "10000",
"type": "customer"
}
}
}
}
]
}

account.closed

Occurs when an account is closed by the customer or Unit.

Example account.closed payload:

{
"data": [
{
"id": "270",
"type": "account.closed",
"attributes": {
"createdAt": "2021-04-13T07:40:43.813Z",
"accountNumber": "1000000001",
"routingNumber": "812345678"
},
"relationships": {
"account": {
"data": {
"id": "10004",
"type": "account"
}
},
"customer": {
"data": {
"id": "10000",
"type": "customer"
}
}
}
}
]
}

account.reopened

Occurs when a previously closed account is reopened.

Example account.reopened payload:

{
"data": [
{
"id": "271",
"type": "account.reopened",
"attributes": {
"createdAt": "2021-04-13T07:40:43.813Z",
"accountNumber": "1000000001",
"routingNumber": "812345678"
},
"relationships": {
"account": {
"data": {
"id": "10004",
"type": "account"
}
},
"customer": {
"data": {
"id": "10000",
"type": "customer"
}
}
}
}
]
}

card.created

Occurs when a new card is created for a customer.

Example card.created payload:

{
"data": [
{
"id": "322",
"type": "card.created",
"attributes": {
"cardType": "individualDebitCard",
"createdAt": "2025-12-14T20:56:27.782Z"
},
"relationships": {
"card": {
"data": {
"id": "39",
"type": "card"
}
},
"account": {
"data": {
"id": "10028",
"type": "account"
}
},
"customer": {
"data": {
"id": "10025",
"type": "customer"
}
}
}
}
]
}

card.activated

Occurs when a card is activated for the first time.

Example card.activated payload:

{
"data": [
{
"id": "323",
"type": "card.activated",
"attributes": {
"cardType": "individualDebitCard",
"createdAt": "2025-12-14T20:59:23.028Z"
},
"relationships": {
"card": {
"data": {
"id": "39",
"type": "card"
}
},
"account": {
"data": {
"id": "10028",
"type": "account"
}
},
"customer": {
"data": {
"id": "10025",
"type": "customer"
}
}
}
}
]
}
Suggestion

Enhanced Information Security documentation is required to access transaction webhooks. Contact your Customer Success Manager for more information about accessing transaction.

transaction.created

Occurs for all account transactions (deposits, withdrawals, transfers). The amount and balance are in cents.

Example transaction.created payload:

{
"data": [
{
"id": "12345",
"type": "transaction.created",
"attributes": {
"createdAt": "2021-06-02T10:15:22.123Z",
"amount": 50000,
"direction": "Credit",
"type": "originatedAchTransaction",
"balance": 150000
},
"relationships": {
"account": {
"data": {
"id": "10004",
"type": "account"
}
},
"customer": {
"data": {
"id": "10000",
"type": "customer"
}
},
"transaction": {
"data": {
"id": "12345",
"type": "originatedAchTransaction"
}
}
}
}
]
}

whiteLabelAppUser.created

Occurs when a new user is created in the White-Label App. The userId refers to the user ID in your system.

Example whiteLabelAppUser.created payload:

{
"data": [
{
"id": "324",
"type": "whiteLabelAppUser.created",
"attributes": {
"userId": "user_67890",
"userRole": "ReadOnly",
"createdAt": "2025-12-14T21:15:30.123Z",
"initiatorUserId": "user_12345"
},
"relationships": {
"customer": {
"data": {
"id": "10000",
"type": "customer"
}
}
}
}
]
}
AttributeTypeDescription
userIdstringThe user ID in your system.
userRolestringThe role assigned to the user. See Team Roles & Permissions.
createdAtstringThe date and time the user was created.
initiatorUserIdstringOptional. The user ID of the user who initiated this action.

whiteLabelAppUser.disabled

Occurs when a user is disabled in the White-Label App. The userId refers to the user ID in your system.

Example whiteLabelAppUser.disabled payload:

{
"data": [
{
"id": "325",
"type": "whiteLabelAppUser.disabled",
"attributes": {
"userId": "user_67890",
"userRole": "Admin",
"createdAt": "2025-12-14T21:22:45.456Z",
"initiatorUserId": "user_12345"
},
"relationships": {
"customer": {
"data": {
"id": "10000",
"type": "customer"
}
}
}
}
]
}
AttributeTypeDescription
userIdstringThe user ID in your system.
userRolestringThe role of the user at the time of disabling. See Team Roles & Permissions.
createdAtstringThe date and time the user was disabled.
initiatorUserIdstringOptional. The user ID of the user who initiated this action.