ChargeAfter is aligning its webhook naming, which will require merchants to gradually adapt to new domain/event types names.
Old Webhook | New Webhook |
---|---|
account.approved | application.approved |
account.prequalified | application.prequalified |
account.pending-lender | application.pending-lender |
account.pending-consumer | application.pending-consumer |
account.declined | application.declined |
postsale.authorize | postsale.authorize.accepted |
postsale.settle | postsale.settle.accepted |
postsale.refund | postsale.refund.accepted |
Webhooks in the application and disputes domains will be released in the coming week. See below for their descriptions and payloads.
Application Webhooks
The following webhooks notify merchants of various application lifecycle events.
If additional information is needed about an application, you can use the Get application status API.
application.created
This event notification is sent when an application session has started.
It is an alternative to the onApplicationCreated callback in the ChargeAfter SDK.
This notification is especially useful with applications that were created using the omni-link API in which the merchant only has the linkID
after the link creation. Using this notification, the merchant can track any application created with a particular link.
Payload
{
"eventType": "application.created",
"createdAt": "string",
"applicationId": "string"
}
Field descriptions
eventType
(type: string)
The name of the webhook.createdAt
(type: ISO 8601-formatted string)
Timecode of when the webhook was created.applicationId
(type: string)
Unique identifier of the application. The application ID may be used later to retrieve application information.
application.prequalified
This event notification is sent when the lender prequalifies the application.
Note: If a consumer is prequalified by more than one lender, then one webhook will be sent per lender.
Payload
{
"eventType": "application.prequalified",
"createdAt": "string",
"applicationId": "string",
"lenderId": "string",
"amount": 123.45
}
Field descriptions
eventType
(type: string)
The name of the webhook.createdAt
(type: ISO 8601-formatted string)
Timecode of when the webhook was created.applicationId
(type: string)
Unique identifier of the application. The application ID may be used later to retrieve application information.lenderId
(type: string)
Unique identifier of the lender.amount
(type: number)
The amount for which the application is prequalified.
application.approved
This event notification is sent when the lender approved the application.
Payload
{
"eventType": "application.approved",
"createdAt": "string",
"applicationId": "string",
"lenderId": "string",
"amount": 123.45
}
Field descriptions
eventType
(type: string)
The name of the webhook.createdAt
(type: ISO 8601-formatted string)
Timecode of when the webhook was created.applicationId
(type: string)
Unique identifier of the application. The application ID may be used later to retrieve application information.lenderId
(type: string)
Unique identifier of the lender.amount
(type: number)
The amount for which the application is approved.
application.pending-lender
This event notification is sent when the lender starts the review of the application.
Payload
{
"eventType": "application.pending-lender",
"createdAt": "string",
"applicationId": "string",
"lenderId": "string",
"reason": "string"
}
Field descriptions
eventType
(type: string)
The name of the webhook.createdAt
(type: ISO 8601-formatted string)
Timecode of when the webhook was created.applicationId
(type: string)
Unique identifier of the application. The application ID may be used later to retrieve application information.lenderId
(type: string)
Unique identifier of the lender.reason
(type: string)
Application status reason.
application.pending-consumer
This event notification is sent after the lender has started the review of the application and additional action is required by the consumer.
Payload
{
"eventType": "application.pending-consumer",
"createdAt": "string",
"applicationId": "string",
"lenderId": "string",
"reason": "string"
}
Field descriptions
eventType
(type: string)
The name of the webhook.
createdAt
(type: ISO 8601-formatted string)
Timecode of when the webhook was created.
applicationId
(type: string)
Unique identifier of the application. The application ID may be used later to retrieve application information.
lenderId
(type: string)
Unique identifier of the lender.
reason
(type: string)
Application status reason.
application.pending-merchant
This event notification is sent after the lender has started the review of the application and additional action is required by the merchant.
Payload
{
"eventType": "application.pending-merchant",
"createdAt": "string",
"applicationId": "string",
"lenderId": "string",
"reason": "string"
}
Field descriptions
eventType
(type: string)
The name of the webhook.
createdAt
(type: ISO 8601-formatted string)
Timecode of when the webhook was created.
applicationId
(type: string)
Unique identifier of the application. The application ID may be used later to retrieve application information.
lenderId
(type: string)
Unique identifier of the lender.
reason
(type: string)
Application status reason.
application.declined
This event notification is sent when the lender declines the application.
Note: If a consumer is prequalified by more than one lender, then one webhook will be sent per lender.
Payload
{
"eventType": "application.declined",
"createdAt": "string",
"applicationId": "string",
"lenderId": "string"
}
Field descriptions
eventType
(type: string)
The name of the webhook.createdAt
(type: ISO 8601-formatted string)
Timecode of when the webhook was created.applicationId
(type: string)
Unique identifier of the application. The application ID may be used later to retrieve application information.lenderId
(type: string)
Unique identifier of the lender.
application.cancelled
This event notification is sent when the application is cancelled by the lender.
Payload
{
"eventType": "application.cancelled",
"createdAt": "string",
"applicationId": "string",
"lenderId": "string"
}
Field descriptions
eventType
(type: string)
The name of the webhook.createdAt
(type: ISO 8601-formatted string)
Timecode of when the webhook was created.applicationId
(type: string)
Unique identifier of the application. The application ID may be used later to retrieve application information.lenderId
(type: string)
Unique identifier of the lender.
application.apply-confirmed
This event notification is sent when the consumer has confirmed their Apply request at the end of the application process.
This notification enables merchants to know when an application has completed successfully and to use the returned token to create a charge if applicable.
Note: This webhook will soon be deprecated. We will inform you of its replacement.
Payload
{
"eventType": "application.checkout-confirmed",
"createdAt": "string",
"applicationId": "string",
"lenderId": "string",
"amount": 123.45,
"token": "string"
}
Field descriptions
eventType
(type: string)
The name of the webhook.createdAt
(type: ISO 8601-formatted string)
Timecode of when the webhook was created.applicationId
(type: string)
Unique identifier of identify the application. The application ID may be used later to retrieve application information.lenderId
(type: string)
Unique identifier of the lender.amount
(type: number)
The amount for which the account is approved.token
(type: string)
The confirmation token that can be used to create a charge.
application.checkout-confirmed
This event notification is sent when the consumer has confirmed their Checkout request at the end of the application process.
This notification enables merchants to know when an application has completed successfully and to use the returned token to create a charge if applicable.
Payload
{
"eventType": "application.checkout-confirmed",
"createdAt": "string",
"applicationId": "string",
"accountId": string,
"lenderId": "string",
"amount": 123.45,
"token": "string"
}
Field descriptions
eventType
(type: string)
The name of the webhook.createdAt
(type: ISO 8601-formatted string)
Timecode of when the webhook was created.applicationId
(type: string)
Unique identifier of identify the application. The application ID may be used later to retrieve application information.accountId
: (type: string)
Unique identifier of the account.lenderId
(type: string)
Unique identifier of the lender.amount
(type: number)
The amount for which the account is approved.token
(type: string)
The confirmation token that can be used to create a charge.
Disputes Webhooks
The following webhooks notify of various dispute lifecycle events.
disputes.created
This event notification is sent when a dispute has been created.
Payload
{
"eventType": "disputes.created",
"createdAt": "string",
"disputeId": "string",
"lenderDisputeId": "string",
"lenderId": "string"
}
Field descriptions
eventType
(type: string)
The name of the webhook.createdAt
(type: ISO 8601-formatted string)
Timecode of when the webhook was created.disputeId
(type: string)
Unique identifier of the dispute, created by ChargeAfter.lenderDisputeId
(type: string)
Unique identifier of the dispute, created by the lender.lenderId
(type: string)
Unique identifier of the lender.
disputes.lender.updated
This event notification is sent when a dispute assigned to the lender is updated.
Payload
{
"eventType": "disputes.lender.updated",
"createdAt": "string",
"disputeId": "string",
"lenderDisputeId": "string"
}
Field descriptions
eventType
(type: string)
The name of the webhook.createdAt
(type: ISO 8601-formatted string)
Timecode of when the webhook was created.disputeId
(type: string)
Unique identifier of the dispute, created by ChargeAfter.lenderDisputeId
(type: string)
Unique identifier of the dispute, created by the lender.
disputes.resolved
This event notification is sent when a dispute is resolved.
Payload
{
"eventType": "disputes.resolved",
"createdAt": "string",
"disputeId": "string",
"lenderDisputeId": "string"
}
Field descriptions
eventType
(type: string)
The name of the webhook.createdAt
(type: ISO 8601-formatted string)
Timecode of when the webhook was created.disputeId
(type: string)
Unique identifier of the dispute, created by ChargeAfter.lenderDisputeId
(type: string)
Unique identifier of the dispute, created by the lender.