Listen for incoming payments
In this example, we will use the sub2 SDK to set up a listener for incoming payments to our address. This is useful for anyone who wishes to accept payments with sub2 as you can validate that a payment has successfully gone through and update your backend accordingly. It is assumed that sub2-sdk is installed and set up as done here.
const unwatch: WatchEventReturnType = sub2SDK.watchIncomingPayments(recipientAddress, callbackFn);
Here recipientAddress is of type `0x{string}`
and callbackFn is of type (payment: Payment) => any
. The callback function is defiend by you and is called on the newly observed payment to the address. For example, you can make a callback function which checks that the subscription index corresponds to an active subscription in your backend and update access accordingly.
The returned value unwatch
of the viem type WatchEventReturnType
is a function that can be called to stop listening for events.
The Payment type has the following definition and can be imported directly from sub2-sdk:
interface Payment {
sender: `0x${string}`,
recipient: `0x${string}`,
subscriptionIndex: bigint,
sponsor: `0x${string}`,
amount: bigint,
token: `0x${string}`,
protocolFee: bigint,
processingFee: bigint,
processingFeeToken: `0x${string}`,
terms: bigint,
}
Last updated