BankPipe is an advanced and automated payments manager powered by
Omnipay. You can create subscriptions with a wide range of custom options or monetize attachments singularly by setting their prices.
Minimum requirements
PHP 7.1
MyBB 1.8.0
PluginLibrary
664 permissions on inc/functions_post.php, attachment.php, global.php and inc/functions_upload.php
Features
Powered by Omnipay
BankPipe's core functionalities are powered by Omnipay, a multi-gateway payments processing library. At present time, BankPipe accepts PayPal and Coinbase, a cryptocurrency exchange which supports BTC, BCH, DAI, USDC, USDT, ETH, SHIB, DOGE, LTC and APE.
Subscriptions
Subscriptions, a popular feature seen in similar plugins, are regularly embedded within BankPipe and come with a wide range of options:
-
destination usergroup(s): usergroup(s) which users will be assigned to when purchasing a subscription. You can select multiple usergroups;
-
usergroup changing mode: if users' primary or additional usergroups will be changed upon subscribing;
-
expiration days: amount of days for the subscription to last. Can be set to infinity;
-
expiration usergroup: usergroup to which users will be assigned when the subscription expires;
-
allowed usergroups: usergroups allowed to buy each subscription;
-
discount: a percentage-based discount relative to each subscription which, if bought, is applied to higher priced subscriptions.
Attachments monetization
One of BankPipe's flagships is its ability to handle single-item purchases by hijacking into MyBB's core attachments system. Each attachment can be monetized individually by simply setting a price. Selected usergroups you can choose are allowed to add their own PayPal address and earn from their own attachments, or contribute to the board's wallet(s) instead. Coinbase currently does not allow users wallets to be loaded.
You can control paid attachments download permissions by usergroup, by forum or both.
When attachments are updated, they inherit the payments' informations. If the name of the attachment differs, MyBB typically uploads a new attachment; in order to update a paid item with a differently-named attachment, check the "Update" radio button while uploading a new attachment: the old one will be deleted and the new one will inherit the old one's paid informations.
Attachments monetization requires proper permissions for both users and forums.
Promo codes system
Promo codes (aka discounts) are an exclusive feature of BankPipe. You can set up promo codes with various options, including type (percentage or absolute value), expiry date, permissions to use codes by user, usergroup and/or item, whether the code is "stackable" with other promo codes or not and a usage cap limit per code. Stackable codes can be added alongside other codes, whereas non-stackable codes are meant to be used singularly.
Validated codes are temporarily stored in the user's browser as cookies, until the purchase is cleared successfully or codes are removed manually.
Expiry notifications
You can set an unlimited amount of notifications sent either through PM or email to users whom subscriptions are about to expire or are already expired. This functionality uses MyBB's internal tasks system to automatically process expiring subscriptions and deliver notifications. You can also specify multiple BCC recipients to deliver expiry notifications.
Refunds
Refunds can be issued by administrators from BankPipe's
Payments history panel. Only payments with a valid sale ID can be refunded. You can choose how much you want to refund per every payment. A refunded item is handled same way as an expired one.
Coinbase payments do not hold any sale and cannot be refunded at the moment. A workaround is under evaluation.
Webhooks support
From beta 6 onwards, BankPipe is able to listen actively to responses generated by gateways upon performing any action on their behalf. This is particularly useful for pending payments, which are always occurring with cryptocurrencies and seldom with certain PayPal configurations. Pending payments are handled automatically when approved or rejected.
Manual subscribing
A subscribing tool is available for administrators willing to process payments manually, for example to migrate from another payments management plugin. You can set the subscription's starting and expiring date, alongside the target and expiry usergroup. Users can be selected one by one using an autocomplete field or you can choose one or more usergroups to mass subscribe.
Logging system
BankPipe logs every internal action and displays the logs in a convenient fashion within the Admin Control Panel. Logs are stored separately from the actual payments and can be deleted safely if you desire.
BankPipe also stores a complete log of paid item downloads. This feature lets you filter out those who might benefit from a refund and those who do not, depending on your own internal policy.
Required fields
You can set up required fields to be filled right before a purchase; to do so, add a coma-separated list of field name(s) you want to be filled in the correct BankPipe's setting, then head over your
bankpipe_cart* templates and add the field(s)' HTML wherever you want them to appear; they will be sent along the necessary data to purchase items, and they will be validated accordingly.
Let's say you want your users to check they have read a field named "agreement". After you have added it to your settings, the following piece of HTML code suffices:
<label><input type="checkbox" name="agreement" value="1" /> I have read the refund policy</label>
You can add any HTML form input you can imagine. Selects, radios, textboxes and textareas are fine as long as you reference them with the correct "name" attribute.
Got a question/issue?
If you encounter issues configuring providers or setting up BankPipe, feel free to open a support thread here on MyBBoost. Since I study a pretty hard university, I don't have much spare time to dedicate to support questions, but I will always provide the support you need as soon as possible. I usually reply within a day.
Demo
Despite a different UI, BankPipe is running smoothly here on MyBBoost. If you are purchasing BankPipe, you are also experiencing itself.
Previews
Availability
BankPipe is available for free.
Support is discontinued due to my departure from programming.
Read more why here.
This project is licensed under
MIT
A simple license with little to no use restrictions, except for author's crediting. Read the provided LICENSE file for more informations.
Permissions
Commercial use
Modification
Distribution
Private use
Limitations
Warranty
Liability
Conditions
License notice
Copyright notice