Landing Page Details

Universal Donation Box is a powerful donation manager for your website. It handles unlimited number of donation campaigns, supports multiple payment gateways (PayPal, Payza/AlertPay, Skrill/Moneybookers, Authorize.Net, InterKassa, Perfect Money, BitPay and Stripe) and can be easily integrated into any website (no more difficult than insert Facebook Like button, check out steps 5-6 in “Installation” paragraph). Universal Donation Box is the easiest and perfect way to monetize your website.

Features

  • Handle donations on website: use this script to handle donations.
  • Multiple payment gateways: PayPal, Payza/AlertPay, Skrill/Moneybookers, Authorize.Net, InterKassa, Perfect Money, BitPay and Stripe.
  • Accept cryptocurrency – bitcoin: bitcoin payments are accepted through BitPay.
  • Accept major credit cards – Visa, MasterCard, American Express: credit cards payments are accepted through Stripe.
  • Minimum donation limit: set minimum donation limit.
  • Unlimited campaigns: handle (create, edit, delete, block, unblock) unlimited number of campaigns.
  • Modern donation form: HTML5 + CSS3, AJAX-ed donation form.
  • Display top donors: script can display top donors.
  • Display recent donors: script can display top donors.
  • Content editor: insert any HTML-content inside of donation box.
  • Secure Admin Panel: configure script and manage data through nice admin panel.
  • Easy to integrate: insert only 3 lines of code into webpage (check out “Installation” paragraph).
  • Cross domain access supported: you can install script on one domain and use it with unlimited number of domains.
  • CSV Export: all donors can be exported as CSV-file.
  • PHP mail() function supported: emails can be sent through mail() function.
  • SMTP supported: emails can be sent through SMTP server.

Front End Demo

Click “Live Preview” or visit demo website to see how Universal Donation Box works.

Admin Panel Demo

You can try admin panel:
URL: http://halfdata.com/pluto/universal-donation-box/
Login: admin
Password: admin

Installation

Let’s imagine that you have website http://www.website.com/ and you want to install script there.

  1. Create folder donation-box (use any other name) in root of your domain. Once created it can be reached by URL: http://www.website.com/donation-box/
  2. Make sure that folder donation-box has permissions 0755 and php-files 0644.
  3. Edit inc/config.php and set MySQL database parameters.
  4. Go to admin panel http://www.website.com/donation-box/ using default login/password (login: admin, password: admin), configure script on Settings page and create at least one campaign on Campaigns page.
  5. Make sure that your website loads jQuery. If it doesn’t, just add this line into head section:
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
  6. If you plan to use Stripe, add this line into head section too:
    <script src="https://checkout.stripe.com/v2/checkout.js"></script>
  7. Add these lines into head section (before </head> tag):
    <link href="//www.website.com/donation-box/css/udb.css" rel="stylesheet">
    <script src="//www.website.com/donation-box/js/udb-jsonp.js"></script>
  8. Add campaign shortcode (from Campaigns page) in the place where you want to see donation box. Example:
    <div class="udb-box" data-id="X"></div>

Customization

By default, donation box contains donation form only. You can customize donation box using data-rel attribute on step #6. Below you can see available basic values for this attribute:
  • form – display donation form
  • form-nourl – display donation form without “URL” field
  • top-X – display top X donors
  • recent-X – display recent X donors
You can create complex value by mixing basic values (ex. data-rel="form,top-5" or data-rel="top-5,recent-5"). Examples:
  1. This code generates donation box which contains donation form and list of top 10 donors:
    <div class="udb-box" data-id="X" data-rel="form,top-10"></div>
  2. This code generates donation box which contains list of 10 recent donors and list of top 5 donors:
    <div class="udb-box" data-id="X" data-rel="recent-10,top-5"></div>
  3. This code generates donation box which contains list of top 10 donors and form without “URL” field:
    <div class="udb-box" data-id="X" data-rel="top-10,form-nourl"></div>

Requirements

  • PHP version 5.0 or greater
  • MySQL version 5.0 or greater
  • jQuery version 1.7 or greater

Support

If you have problems regarding using the script, please contact me and I’ll help you.
  • makkawy

    2013-05-12 21:21:05
    Purchased Reply

    i have problem with script i make new html page icludeed code of script but when i see page i hated becuse is to big form please help im noob this link of new script http://ksaserver.us/donate.html thanks

  • halfdata

    2013-05-12 21:46:34
    Purchased Reply

    Hi. Thanks for purchasing the script. You need to add this line at the top of HTML file (before <html> tag):

    <!DOCTYPE html>
    

  • IvanPr

    2012-09-14 07:35:20
    Purchased Reply

    I've did everything you've mentioned to install properly. The script got installed into the DB. I've set the settings - it got saved into the DB. I've added the campaign, added the code, but nothing showed up. I've spent a day installing and configuring - nothing. Please help, it might be my mistake or other way the script is useless! The pages are: http://uucyc.ru/donate/demo.html http://uucyc.ru/donate/index.php The PHP version is 5.16 MySQL 5+ JQuery 1,8 Thank you, Ivan Privalov

  • halfdata

    2012-09-14 12:03:58
    Purchased Reply

    Hi Ivan, Thanks for purchasing the script. You installed everything correctly. It seems there is some problem with JSONP AJAX request to your server. Could you please provide FTP-access to folder "donate" (you can do it through my profile page), I will check what is wrong there. Also please try to replace line: by Also please make sure that you use correct shortcode on this page: http://uucyc.ru/donate/index.php You must take shortcode from Campaigns. Thanks, Ivan Churakov

  • IvanPr

    2012-09-14 16:44:14
    Purchased Reply

    Replacing to helped. Now it works. What is the difference between those two? How important it is to have JSONP version running? p.s. The Top and Recent Donors boxs description in the campaigns does not support html - it is output as the htmlspecialchars() - http://uucyc.ru/donate/demo.html

  • halfdata

    2012-09-14 18:00:03
    Purchased Reply

    Hi. Thanks for letting me know about htmlspecialchars(). I fixed it. About JSONP. It supports cross-domain call. For example, you can install script on domain1.com and display donation box on domain2.com. Version without JSONP must be used on the same domain only.

  • silkysack

    2014-03-28 05:11:09
    Purchased Reply

    when a donation is made, the auto generated email that i get does not list the payer_name, it actually puts the payer_email twice? can you explain how this can be fixed?

  • silkysack

    2014-03-28 05:56:44
    Purchased Reply

    it also puts the payer_email in for the Thanksgivig e-mail body: where is should be payer_name...please this must be fixed

  • silkysack

    2014-03-28 06:07:14
    Purchased Reply

    you had me edit the ajax from a previous post...maybe this has caused the problem?

  • halfdata

    2014-03-29 03:37:40
    Purchased Reply

    What payment gateway do you use?

  • silkysack

    2014-03-29 04:45:21
    Purchased Reply

    stripe

  • halfdata

    2014-03-29 13:03:00
    Purchased Reply

    My script uses payer name returned by Stripe. Now Stripe do not ask name on card and return e-mail. If you want to show payer_name which was entered by user in donation form, please edit ajax.php. Find the line:

    $vals = array($post['card']['name'], $donor_details['email'], $donor_details['amount'], $donor_details['currency'], $donor_details['campaign_title'], date("Y-m-d H:i:s")." (server time)", "Stripe");
    
    and replace it by
    $vals = array($donor_details['name'], $donor_details['email'], $donor_details['amount'], $donor_details['currency'], $donor_details['campaign_title'], date("Y-m-d H:i:s")." (server time)", "Stripe");
    

  • tommyinnn

    2015-10-13 12:25:33
    Purchased Reply

    Hi do you know what causes the css coding to be shown on the payment page for Authorize.net? http://prntscr.com/8qojxd

  • halfdata

    2015-10-13 15:08:10
    Purchased Reply

    Hi. Thanks for letting me know. Seems they changed something. I've modified the script, fixed the problem and uploaded new version to CodeCanyon. It is waiting for approval now.

  • tommyinnn

    2015-10-15 05:05:15
    Purchased Reply

    thanks, can you tell me what file is changed?

  • halfdata

    2015-10-15 05:23:32
    Purchased Reply

    ajax.php

  • tommyinnn

    2015-10-22 00:48:50
    Purchased Reply

    that file has not changed since Jan -- I noticed I am getting errors in Authorize.net I have had users try to pay but failed Transaction Status: General Error (Processor error - The merchant account is not configured properly with the Credit Card Processor, Global Payments. Contact merchant service provider for resolution.)

  • halfdata

    2015-10-22 04:53:20
    Purchased Reply

    Sorry. Correct file is inc/functions.php. Please contact Auth.net regarding this error.

  • cristianaguilar

    2018-03-19 08:10:12
    Purchased Reply

    Can I accept bitcoin, PayPal, skrill etc and all the donations will go to my PayPal account?

  • halfdata

    2018-03-19 13:43:50
    Purchased Reply

    No.

  • rooster94

    2017-10-26 00:14:08
    Purchased Reply

    Hi, I've a problem with the bitcoin payment. It seems that it does not work.

  • halfdata

    2017-10-26 19:45:21
    Purchased Reply

    Hi. Please let me know what exactly doesn't work. Do you have a valid BitPay account that allows you to accept payments?

  • joncav

    2014-05-30 22:27:41
    Purchased Reply

    Testing with Stripe, the keywords {payer_name} (e.g. "Hi {payer_name},") is the email address and not the name. Example email from the system where the name was typed into the form: "Hi [email protected]," Please let me know what to do to fix.

  • halfdata

    2014-05-30 22:53:12
    Purchased Reply

    Hi. This is what Stripe send to the script as cardholder name. If you want to use name, that user entered in donation form, please edit ajax.php. Find line #728 which is:

    $vals = array($post['card']['name'], $donor_details['email'], $donor_details['amount'], $donor_details['currency'], $donor_details['campaign_title'], date("Y-m-d H:i:s")." (server time)", "Stripe");
    
    In this line replace
    $post['card']['name']
    
    by
    $donor_details['name']
    

  • joncav

    2014-06-03 07:40:34
    Purchased Reply

    Thank you.. that worked great.

  • drmagoo

    2014-03-11 08:10:00
    Purchased Reply

    Hi, Does this script integrate with wordpress or would there be 2 different admin logins? Thanks,

  • drmagoo

    2014-03-11 08:14:40
    Purchased Reply

    nevermind, I saw the answer

  • Arutam

    2014-08-08 14:22:37
    Purchased Reply

    Hi, Can it be used as payment method? I mean, to accept donations as payments as well. Regards,

  • halfdata

    2014-08-08 14:53:49
    Purchased Reply

    Hi. All donations are accepted as payments.

  • HippieGuy

    2014-11-27 17:02:40
    Purchased Reply

    How can I install this on WordPress?

  • halfdata

    2014-11-27 17:24:07
    Purchased Reply

    If you want to install this script on WP, you need modify WP theme. It is better to use Banner Manager plugin with WP.

  • viswajith

    2016-01-04 20:21:42
    Purchased Reply

    After copying the files with db details updated ..../admin.php is coming blank. Please assist

  • halfdata

    2016-01-05 03:51:33
    Purchased Reply

    URL?

  • viswajith

    2016-01-05 07:05:43
    Purchased Reply

    Sent you a PM

  • halfdata

    2016-01-05 07:39:51
    Purchased Reply

    Replied.

  • Teo-MassArt

    2013-01-21 04:38:32
    Purchased Reply

    Continue button just load , i missing something ?

  • halfdata

    2013-01-21 04:39:45
    Purchased Reply

    Please provide URL to see the problem.

  • Chinese1904

    2014-04-04 08:20:00
    Purchased Reply

    Thanks for this product! For whatever reason though, after I create a new campaign and implement the code, the example data is shown. How can I get rid of that?

  • Chinese1904

    2014-04-04 08:25:39
    Purchased Reply

    never mind, I did not use my local javascript file. Awesome product, thanks.

  • halfdata

    2014-04-04 11:06:51
    Purchased Reply

    :-) Thanks.

  • silkysack

    2015-04-07 05:29:18
    Purchased Reply

    I need to be able to have the donation box have a few extra fields, ie address state zip. And that info needs to be a part of the confirmation email. What would this cost on a custom basis?

  • halfdata

    2015-04-07 14:31:33
    Purchased Reply

    Hi. Unfortunately, the script doesn't have such feature and I'm not available for customization work.

  • silkysack

    2015-04-08 00:21:47
    Purchased Reply

    can you recommend someone that can help me with this?

  • halfdata

    2015-04-08 02:40:39
    Purchased Reply

    Unfortunately no. Please try to find developer through freelance websites.

  • silkysack

    2015-04-08 06:06:49
    Purchased Reply

    any suggestons?

  • halfdata

    2015-04-08 11:33:54
    Purchased Reply

    Nope.

  • phildogbph1983

    2014-07-03 11:10:48
    Purchased Reply

    LOVE THIS!!! Just sayin... Have one question, I would like to display on the page how much money has been collected. I guess a total amount donated for that event. Can I do this? Thanks, Phil

  • phildogbph1983

    2014-07-03 11:15:02
    Purchased Reply

    I read the other post, but it doesn't spell it out for me. Is there a line of code I can put in a certain place on my page that shows the total amount received for that Campaign?

  • halfdata

    2014-07-03 15:44:48
    Purchased Reply

    Hi. Thanks for purchasing the script. Unfortunately, there is no such feature.

  • MK-Studio

    2014-07-14 00:29:57
    Purchased Reply

    Where would I find the variable to increase the top 10 donors to let say top 100 recent donors?

  • halfdata

    2014-07-14 00:34:03
    Purchased Reply

    Please read customization section on script page: http://codecanyon.net/item/universal-donation-box/2952313 Use shortcode like:

    <div class="udb-box" data-id="X" data-rel="form,recent-100"></div>
    

  • MK-Studio

    2014-07-14 00:36:06
    Purchased Reply

    Ah apologies, thanks for the help. I thought this would be an edit Id have to do in the php.

  • Nairda22

    2016-03-19 21:35:40
    Purchased Reply

    Hi, its possible to add MobilPay to this script?

  • halfdata

    2016-03-20 12:04:10
    Purchased Reply

    Hi. At that moment I don't have such plans.

  • rigby

    2013-08-08 21:26:57
    Purchased Reply

    Hi... can check pls, if the validation of the input fields [ sizeof($name), sizeof($email), sizeof($url), strlen($url) ] works right in demo/ actually uploaded version? I don't get the message in error box... Thx, rigby

  • halfdata

    2013-08-08 21:42:06
    Purchased Reply

    Hi. I didn't catch exactly what you mean. I visited your website and check the fields. Validation works. I also checked my demo. It works too.

  • rigby

    2013-08-08 21:59:34
    Purchased Reply

    Ok, example: If I type a name with 100 characters in to the field, I do not get the error message 'Your name is too long.' as written in code. I've just checked again at your demo...

  • halfdata

    2013-08-08 22:22:54
    Purchased Reply

    It's clear now. Thank for letting me know. You can replace sizeof() function by strlen(). I also uploaded updated version of the script to CodeCanyon. It is waiting for approval.

  • rigby

    2013-08-09 01:14:02
    Purchased Reply

    Thx a lot, rigby

  • fakofa

    2014-04-23 12:32:57
    Purchased Reply

    Nice script, I have a question before I purchased I need to know if it support "Authorize.net" subscription / monthly/quartly/yearly recurring payment ? I need to use it for Website donation. I highly appreciate your answer.

  • halfdata

    2014-04-23 13:50:59
    Purchased Reply

    Hi. Thanks for interesting in the script. Unfortunately, it doesn't support recurring payments. Thanks.

  • bmorina

    2015-11-15 12:09:49
    Purchased Reply

    Hello, Can you please fix the bitcoin payment system. Bitpay that you are using is currently useless because they keep blocking my account, since they do not accept donations, nor payments through your script for some reason. Can you please look into CoinKite, Blockchain or some other bitcoin payment processor? Thanks

  • halfdata

    2015-11-15 14:53:46
    Purchased Reply

    Hi. I have plans to implement Blockchain too. It is in my todo list.

  • bmorina

    2015-12-22 06:47:26
    Purchased Reply

    Hey man, I think it's time you added the Blockchain or CoinKite support ? After API 2.0 on Blockchain.info, I think Coinkite makes more sense because of their IPN and easier integration. Thanks

  • halfdata

    2015-12-23 02:19:09
    Purchased Reply

    Hi. I still have Blockchain in my todo list. Regarding CoinKite, I'll learn more about such system.