Subscription Payment Puller
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
The Subscription Payment Puller enables service providers and subscription merchants to collect recurring subscription payments from approved subscribers by pulling funds from their wallets. In pull-based subscription models, the merchant initiates the payment collection rather than waiting for the subscriber to send funds manually. This tool provides a streamlined interface to pull payments for active subscriptions, verifying subscriber approvals and token balances before execution.
The tool reads subscription contract state, subscriber approvals, token balances, current prices, payment parameters, billing frequency, payment token, subscription owner, subscription status, and allowance status. It supports pulling payments for specific subscription IDs with configurable amounts (full amount or partial). The tool verifies that the subscriber has approved the subscription contract to spend the required tokens and that the balance is sufficient before executing the pull.
HOW TO USE
1. Connect your wallet using the Connect button. The tool automatically detects your connected address and network.
2. Select the network where your subscription contract is deployed using the network dropdown.
3. Enter the subscription contract address, the subscriber address, and the subscription ID.
4. Enter the payment token address and the amount to pull (0 for the full subscription amount).
5. Configure your slippage tolerance percentage for the pull transaction.
6. Click "Load subscription" to verify the subscription exists and is active.
7. Review the subscription details in the preview panel including contract, subscriber, ID, payment token, and amount.
8. Click "Pull Payment" to submit the payment pull transaction through your wallet.
9. The tool will verify approvals and balances before pulling the payment.
TECHNICAL MECHANISM
The tool interacts with the subscription contract's payment pull function, which typically takes the subscriber address, subscription ID, and amount as parameters. Before pulling, the tool verifies that the subscriber has approved the subscription contract to spend the required token amount (for ERC-20 tokens). For native token subscriptions, the tool checks the subscriber's native token balance. The pull function then transfers the specified amount from the subscriber's wallet to the subscription contract or directly to the merchant's wallet, updates the subscription state, and emits a payment event. The tool supports pulling either the full subscription amount or a custom amount, allowing merchants to handle partial payments or adjustments.
WHAT IT CANNOT SEE
This tool cannot verify that the price feed is accurate or reliable; it relies on the subscription contract's internal state. It cannot detect if the oracle has been compromised or manipulated. It cannot ensure that payment pull will execute at the optimal price due to slippage, market volatility, and block timing. It cannot guarantee that payment will succeed if the subscriber's balance or allowance is insufficient. It cannot verify that the subscription contract has not been upgraded or modified. It cannot detect if the payment path is optimal or if the transaction is being front-run by malicious actors. It cannot recover funds if execution fails due to contract bugs, insufficient approvals, out-of-gas errors, or blockchain reorgs. It cannot verify that the payment token is legitimate or not a honeypot contract. It cannot predict market movements, price gaps, or flash crashes that may affect payment value. It cannot guarantee execution during extreme network congestion, high gas prices, or volatile market conditions. It cannot detect if the underlying payment protocol has been compromised. It cannot prevent the user from canceling or modifying payment parameters through other interfaces. It cannot ensure that payment is economically optimal or that gas costs do not exceed the payment value. It cannot guarantee that payments will be reliably processed.
PLEASE NOTE
This tool is designed for EVM-compatible blockchains (Ethereum, Polygon, Arbitrum, Optimism, Base, BSC, Avalanche, Fantom, and others). It requires an active wallet connection and sufficient native currency for gas fees. Always verify the subscription contract address, subscriber address, subscription ID, and payment parameters before executing. The subscriber must have approved the subscription contract to spend tokens before payments can be pulled. The tool is provided as-is with no warranty; users assume full responsibility for their transactions and should exercise caution when pulling subscription payments. For mainnet usage, ensure the subscription contract has been audited and you understand the risks of payment pulling including insufficient balances and smart contract risks.