This is a list of all the types of events we currently send. We may add more at any time, so in developing and maintaining your code, you should not assume that only these types exist.

Note that the events follow a sort of pattern in its naming: resource.event. Our goal is to have a consistent system so it feels intuitive and easy for you to use.


The link.created is the only event that cannot be listened using a Webhook Endpoint. To receive said event, you need to pass the URL of your backend that you want to send the event to when configuring the widget.

Event typedata.objectDescriptionWebhookEndpoint
link.createdlinkTriggers when a Link is created
link.credentials_changedlinkTriggers when the credentials corresponding to a Link change and the Link needs to be reconnected
link.refresh_intent.succeededrefresh_intentTriggers when a Link has been completely updated. For now, it is only triggered for electronic invoices
account.refresh_intent.succeededrefresh_intentTriggers when an Account is updated with the latest available movements from the bank
account.refresh_intent.failedrefresh_intentTriggers when an update of the movements of a specific Account fails. Only available for "Refresh On Demand" plans
account.refresh_intent.rejectedrefresh_intentTriggers when an update of the movements of a specific Account fails because the Linkcredentials are invalid. Only available for "Refresh On Demand" plans
account.refresh_intent.movements_removedrefresh_intent Triggers when the Link's bank deletes transactions.
To enable these notifications, activate them from your dashboard. Then, send an email to [email protected] to register your organization for this webhook event.
payment_intent.succeededpayment_intentTriggers when a Payment Intent finishes successfully
payment_intent.rejectedpayment_intentTriggers when a user rejects a Payment Intent
payment_intent.expiredpayment_intentTriggers when a user doesn't complete a Payment Intent
payment_intent.failedpayment_intentTriggers when a Payment Intent fails due
payment_intent.pendingpayment_intentTriggers when the final status of the payment is not available yet. A future webhook will be sent with the final status once it's determined.
payout.createdpayoutTriggers when a Payout is created and starts processing
payout.succeededpayoutTriggers when a Payout is successfully transferred to your bank account
payout.canceledpayoutTriggers when a Payout is canceled and will not be sent to your bank account
refund.in_progressrefundTriggers when a Refund starts processing.
refund.succeededrefundTriggers when a Refund is successfully processed
refund.failedrefundTriggers when a Refund fails
subscription_intent.succeededsubscription_intentTriggers when a subscription intent is validated as successful. The subscription_intent includes the resulting subscription object.
subscription_intent.failedsubscription_intentTriggers when a subscription intent fails due to a problem with the bank or Fintoc.
subscription_intent.rejectedsubscription_intentTriggers when a subscription intent is rejected by the user. This may happen when the user rejects the MFA step or if it is entered incorrectly.
subscription.activatedsubscriptionTriggers when the bank has confirmed that the subscription is ready to accept charges.
subscription.canceledsubscriptionTriggers when the bank informs Fintoc that the subscription has been canceled.
charge.succeededchargeTriggers when a charge is validated as successful.
charge.failedchargeTriggers when a charge fails due to insufficient funds, the charged amount being higher than the authorized amount, or the user disabling the authorization.