fixes
2009-03-31
General Update on last 3 Months of GetPaid
Woh...that was fast. Sorry for hiatus in communication. Here's a recap.
The last three months have been a bit of a blur. One of the things that has fallen off my plate was updating the GetPaid blog. So, here's a roundup of news from GetPaid:
Product
- The preferred means of consumption is the recipe! Tarballs are soooo Plone 2! (nothing against tarballs, actually, just no one is packaging them - if you want to lend a hand let us know via the mailing list). So while there aren't any new tarballs about since the 0.6.2 version, GetPaid has actually advanced to 0.7.5 and just reached rev2400! The recipe itself is at version 1.4.1 thanks to the continued efforts of the marvellous Lucie Lejard (aka La Reina de la Receta). Here's some of the changes to look out for:
- Payment processors: Payflopro is now a supported payment processor (larubbio)! ClickandBuy is also supported (olauzanne)! Pagseguro (Brazilian processor) is also in the works (rafaelcrocha) as well as VCS South Africa (hannesc). Ogone, PayPal, and Authorize.net all got an updates.
- PloneFormGen integration: after the demise of the former mercurial repository where this product was hosted, the action adapter to integrate GetPaid with PloneFormGen was migrated into the GetPaid repository (mcgruff.scruff).
- Variable donations amount: GetPaid now natively supports variable donations amounts that can be added to your cart (larubbio)
- Salesforce.com Integration: There is a new prodcut, Products.SalesforceGetPaidAdapter. It subclasses from the current Products.salesforcepfgadapter and allows you to specify what fields in your form, and in getpaids order get saved to salesforce when the order's finance workflow moves to CHARGED.(larubbio)
- More goodies: The cart now allows annotations (larubbio), checkout checks for site root to get store settings (lucielejard), discount details are reflected on the thank you page (flejard)
Documentation
- How to use the PloneFormGen integration (download PDF)
- Features page got light update.
- Creating Content Types That Are Buyable, Shippable or Donations (dunny, copied from Products.PloneGetPaid documentation to web)
- How do I set up buildout for an existing Plone site with the getpaid recipe? (lucielejard)
- How to tie actions to payments (A brief explanation on how to tie workflow transitions, mailing, etcetera to a payment happening in getpaid) (perrito)
Sites
Collecting data on this has been a bit thin lately, even though several people have shared information about sites in the works. One that did launch with GetPaid just today is the York College/City University of New York. If you have additional sites that are live with GetPaid, please let us know via the mailing list!
Community
- Mailing list: 163 people
- Planning continues at our Features Brainstorm doc: http://code.google.com/p/getpaid/wiki/BrainstormingFeatures . Join in! Some of these features are on the drawing boards for Spring development.
2008-10-24
Getpaid Sprint Report Out from Plone Conference
Thanks to Chris Calloway's great leadership and organizing on the Plone Conference Sprint earlier this month! Here is a report out of the progress from the GetPaid sprint.
Following the conference and the talk on GetPaid that got some new people interested in the product, we launched into yet another GetPaid sprint. Conference sprints are great about getting new people involed as well as connecting those in the community. At this sprint, we had 2 people who had been working on GetPaid, Ken (from Contextual Corp, and a sponsor of GetPaid) and Adam (a local to the conference who I got to meet for the first time), and 4 people who were new, including 3 Italians from Abstract (Bruno and Antonio added their names to the checkin roster during the sprint!) and Lee (who shared his PayPal knowledge). What follows is a Sprint report-out of what our small band was able to accomplish (an alternative to this narrative presentation is the list that Ken composed: http://code.google.com/p/getpaid/wiki/PloneConf2008DCSprint ).
On Saturday (see day one crew), we battled network issues to get everyone set up with a buildout. Luckily, it eventually worked (after over 2 hours). In the process, we verified that the recipe created by Lucie works (yeah!!!), making it very easy to drop GetPaid into an existing buildout. We also created a new .cfg file for those wanting to peg their version of Plone with 3.1.6 (the latest release), adding to the buildout configurations for Plone 2.5 and 3.0 that already exist. Even better, the documentation for how to get started was updated with this new info (http://code.google.com/p/getpaid/wiki/DevGettingStarted ).
With the work on Plone 3.1.6, we found a test that was failing (though for a rather silly reason that had nothing to do with GetPaid) and Ken and Adam went about fixing that (rev2064).
Antonio and Bruno went after issues in the tracker with a vengence. Antonio paired with Ken to take on an issue to take out the mystery in matching orders in GetPaid and your payment processor (issue #116). They succeeded to persist processor transaction id and last-4 digits of credit card to ZODB. Also, modified order-summary.pt to present these two fields (rev2072-2074). Bruno also took out #151, which makes it easier to set up GetPaid (more intuitive default settings), added missing Italian translations, and fixed the dist.plone.org links. Adam took on an issue of making the checkout wizard configurable and also created a Howto on adding an administrative screen in GetPaid (something formerly rather mysterious). He added a starting page for making features in the checkout configurable (rev2083 ) and a Howto.
While they sprinted, I worked on updating the internationalization files in GetPaid. Since it has been a while since they were updated, several new ids for tranlation had been introduced (over 100) and all the language files needed these sync'ed so the translations could be added. It was a bit of a mystery on doing this, but with Hanno's help, I was able to get through it. In the process, I discovered some issues with how one of the three domains we use and so couldn't complete the updating (we need to fix the domain tags first)
Sunday was also a bit of a payment processor sprint (see the brain trust). Payment processors are many and varied and most people using GetPaid will at least consider implementing their own, either for existing bank preferences or need for something in their own country. We had Alex (from Finland) and Ken and Lee (both with interest in PayPal) going over the interfaces and examining the APIs. The work on PayPal led to clarification about a few changes needed to get the off-site payment working.
If you want a more detailed view of the changelog, check out:
- Google code's changelog: http://code.google.com/p/getpaid/source/list
- Or the list subscribed to the changes: http://groups.google.com/group/getpaid-changes
2008-09-16
Rev2000! And other news
Yesterday was a busy day for the CIA bot in #getpaid. Checkins were pouring in as a few people were hammering away on their projects. The project's liveliness is a great sign as we get closer to the Plone Conference and sprint.
The CIA bot dumped a long list of checkin updates into #getpaid
yesterday afternoon, and remarkably we passed our 2000th revision! In
that swirl of code, paypal workings got fixed thanks to duffyd, some
error controls and bug fixes to the getpaid.report component were added
(and perrito666 hit the 2000 milestone!), googlecheckout got updated by
dunny, and more. See changelog.
Thanks to all who have been working on the project!
Other noteables from GetPaid:
- GetPaid 0.6.1 tarball now has 895 downloads and has surpassed the 0.3 downloads total!
2008-06-02
GetPaid 0.6 release made
A long awaited release that improves the store functionality of GetPaid.
A while ago, we created the release branch for GetPaid's second major release, 0.6. However, we didn't officially release it (with packaged code etc), and in the meantime, several fixes and changes came in. So, we are now releasing 2 versions.
0.6.0: This is the originally branched code. Works well and preserves "backwards" compatibility for those using customized GetPaid code.
0.6.1: This is a final release. Includes API refactoring and unicode fixes. May break your customized GetPaid code but not too much :)
Both of these work on Plone 2.5 and 3.0, and apparently on Plone 3.1 also (though we currently aren't providing a buildout for 3.1).
To check out the changelogs, see http://groups.google.com/group/getpaid-changes
2008-04-15
Preparing for 0.6 Release: Update
A look at the progress towards a release, and updated plans.
Here's a quick look at progress towards the 0.6 release and an update on the release.
- We are over 620 downloads of the 0.3 release tarball! (plus buildout usage)
- A bug got fixed in the 0.3 buildout branch this past week
- Several bugs got fixed in the trunk, including restored Plone 2.5 compatibility for the buildout, report-related bugs, template changes, and more. Also, a tool got added to extract email addresses from customer records. Check out the change logs to see more.
- We are down to 14 issues tagged for M2 (actually less once we verify closure...). See the issues and grab one to fix or test!
- The 0.6 release branch will be made later this week. If you have goodies to include or bugs to fix, please do them asap!
Thanks for tuning in. Grab an issue, test the tools, and let us know how it looks so we can make way for 0.6 :)
2008-03-12
Changelog and News Update
What a busy month! I think I have missed about 150 revisions since the last update, so here goes an attempt to catch up...
What a busy month! I think I have missed about 150 revisions since the last update, so here goes an attempt to catch up...to get the latest, grab our buildout (see documentation here).
Some stats:
- Over 500 downloads of our last stable release!
- A good number of tests going into new products!
- There are now LOTS of open issues (68, actually) in the tracker, which includes lots of change/improvement requests also. If you want to help out please take 'em on!
Highlights of what is in the latest code now:
- UPS shipping support. Still don't quite understand it (some configuration magic that has to happen), but there has been a LOT of work to get this going. Thanks to Kapil, Liam, Perrito and others for working, reworking, and fixing this.
- Shipping setup: this got refactored to be a bit cleaner and have some nice viewlets. Makes it easy to add in multiple shipping methods as we grow.
- Inventory management: Yes!!! getpaid.warehouse now available. This is a rather recent addition (you can only find it now by adding @@inventory to the URL), but it is there! Checkouts change the quantity, there is the ability to add warehouses for a site. More goodies to come as the work is rounded out by Kapil. Nicely done!
- Address book: Thanks to a use case we had for an ifPeople client, we built a means of saving shipping addresses in your profile during checkout, which are then accessible in checkout.
- Auto-loading your details: get tired of typing same details into the screen? Now they get autoloaded! Go lazy programmers!!
- Order templates: reordering your viagra supply ever couple months? Now you can save time in checkout by loading your orders from your past orders!
- Shipping price wired into total price: Now when you select shipping service, it will be added to the total price in the cart/checkout.
- SSL: Now, by default, the site wants SSL. If you are just testing, you need to deactivate this in the GetPaid setup area for checkout to work.
- Checkout wizard refactoring: after a significant refactoring, it got some fixes and improvements and additional testing.
- Relational database: there is also a relational database implementation of getpaid.core (called getpaid.rdb).
- PayPal processor interface!!! No really...I am serious! daMaestro told me in #getpaid just now :)
- PXPay processor: The Kiwis finally have their chance at GetPaid too! Apparently Winterhouse Consulting has done an implementation of this pay processor from Payment Express.
- Authorize.net recurring payments: ifPeople has also done integration with of the Automatic Recurring Billing (ARB) service of authorize.net. Currently in a branch...
- A new release: no details...but probably will be associated with a shipping wrap up. Possibly in late April.
- More sites using GetPaid!
2008-02-13
New News from GetPaid-land
It's been a busy time of activity and talk at GetPaid community, so just wanted to share some news from GetPaid and related topics.
Non-code news
- First thing to mention is that we passed 400 downloads of the release candidate tarball! We have no way of knowing how many people are on buildout, but that adds to the growing number of users.
- Speaking of buildout...it's worth mentioning that there is now a handy tool/bundle to help Windows users get going with buildout! You can read about the "installer for buildout-ready Windows" here. Haven't used it, but glad to know that the windows users are getting exposed to more buildout goodness :)
- Google code added a sweet trac-ish-on-ajax code browser. Check out GetPaid's code here.
- Anyone going to Plone Symposium East? There is still time to submit a proposal for a session on GetPaid (though that ends this Friday)! If you are interested, check it out.
Sprints
- There was mention of interest of GetPaid for the Sorrento sprint. If you are looking to hang out with great folks in lovely place, check out Sorrento sprint!
- There was even mention of a potential DocComm II sprint for this summer at Google again!
If you are interesting in organizing or leading GetPaid sprint activities, please do! Please also share your interest with others on our mailing list.
Code and related
- Big news lately was the merge of work done in a branch into the trunk. This brought in UPS integration, a backend for address books, and a refactored checkout wizard.
- Since the merge, several fixes and modifications have happened including, and there have been several points where the buildout was not in ideal condition, but things are looking up:
- Making xml dependency more sane: the buildout got a bit unwieldy with a dependency on lxml. Liam refactored that out (I believe it is just going to use elementtree). Several folks in the channel today agreed that we need to avoid making the buildout more difficult as a point of distribution. We want people using GetPaid...not fighting with the tool.
- Javier and Perrito fixed compatibility of the new checkout wizard with Plone 2.5 after finding a problem with an import of IBrowserView failing
- Dunny did some externals cleanup on the anonymous buildout and Kapil updated the anonymous buildout also. This brings the anon buildout up to date with the merge and changes in the development version.
- Kapil made several modifications to the checkout wizard and its state handling.
- There is also a lot of stuff planned and at various stages of being worked on:
- UPS UI integration is well advanced. Please have a look, especially if you are able to help out.
- Inventory/warehouse management: Ability to turn this on for a product and site. Keep track of where your stuff is as well as how much of it you have.
- Reporting and storage of orders in relational database: Work is planned on storing orders in a relational (postgres) db and then providing new reports.
- Liam also reports that shipping using USPS (that's US Postal Service for those not in the US) will be easy building on the UPS integration module.
- UI refactoring: after some deployments, there is some frustration with UI and skinning GetPaid that can be overcome with a bit of UI love...
- Probably more goodies too...but I'll leave it at that for now :)
2008-02-07
Trunk getting some big changes today - beware!
There has been a lot of work going on a branch called "kapil-dev", which includes shipping with UPS, an address book available in checkout, and a checkout wizard refactoring.
There has been a lot of work going on a branch called "kapil-dev", which includes shipping with UPS, an address book available in checkout, and a checkout wizard refactoring. Two main changes:
- the store settings are no longer stored in an adapter, instead there in a utility. It's backwards compatible though for access, ie there is an adapter that retrieves the utility. and there is a migration step in place if you go the upgrade tool. Previous settings will work till then.
- the checkout wizard has been refactored in an attempt to make it more customizable. which is in getpaid.wizard. There are separate controllers (sequence of steps ), data managers ( manage all the data in the forms) and steps no longer have to get hardcoded to their order of execution. If you have made programmatic changes to the wizard, you will need to make changes to accomodate the new code. If you override the checkout entirely with your customizations, your changes should be fine.
These changes represent some great new features for GetPaid, yet also mean that the code base is going to change in some significant pieces...so there is going to be a transition that requires attention (note: this is vital for anyone running their site from buildout on the trunk of the product; if you are using the tarball or the RedOchre release branch (0.3), then you don't need to pay attention to this).
If you are running off the trunk, then the next time you update the code base, you will need to perform a migration to fix some of the changes. The "upgrade" screen in GetPaid setup area will be helpful in this - just hit the upgrade button and your site will be fixed!
If you experience any problems, please report to our mailing list or in our irc channel #getpaid.2007-12-01
Update from the code base
In an attempt to give an overview of the evolving changes in GetPaid's code, I am adding another summary of the change logs.
Updates from rev1079
Overview:
- Product tarball size, 463KB (get it here)
- Outstanding issues for release: 8 total. 2 critical bugs, 1 critical task.
- Documentation: 22 items. 2 tutorials, 9 FAQs, 6 Howtos, 5 error references. Find it here.
- Release date: December 15, 2007
Product fixes, cleaning related to release, making it Just Work
Several things recently have gotten better as we get more testing feedback. In particular:- Buildout working on windows
- Merging the Plone 3.0 and 2.5 buildouts to be common, adjusting the structure. See info from Maurits
- Fixing tarballs (and the script that generates them) so they have more general layout (get them here)
- A problem with the CMFofFive version was fixed
- Typos and errors in the buildout process were fixed. Tabs removed from files. Typo on null processor fixed. "fulfillment" typo fixed.
- The recipe used on buildout for Plone 2.5 was switched to support Windows
- Readme added to the nightly build script.
- The US states list was fixed (adding back in DC).
- Plone hotfix made a part of the buildout
- Fix to check site encoding before filling out the checkout form automatically with that info.
- Readme updated
- Fixed donation checkout to allow anonymous checkout (if site set to do so)
- Dutch translation updated
- Bug fix with five.intid subscribers.
New features and goodies
- Address copier: let's you designate the shipping address to be the same as mailing, and thus not need to re-enter all the info. Thanks, Lucie!
- Ogone payment processor: updated to work with the latest GetPaid interfaces, you can now use the Ogone payment processor (for European merchant accounts). Thanks, Jfroche!
- Subtotal and total views: now on the cart review and checkout you see a subtotal for the cost of your order and total. In the process, Kapil refactored total pricing to be an adapter against a line item container, orders implement this directly, shopping carts can be adapted, tax and shipping utilities now need to distinguish between the two.
- Upgrade helper: the upgrade tool now automatically tags the database version on install.
- Credit card validator: made more robust.
- Button ordering on checkout made more friendly
- Tests updated on email notifications. Changes made in implementation to make it easier to customize email messages (moving parts from the subscriber to the adapter). Also fixed email notifications for anonymous checkout. Thanks Lucie!
If you are interested to see more about these changes, check out the change log.
New Plone 3 product...that works
Well, I learned something new about Plone 3 recently...like why the tarballs I was making for GetPaid weren't working on that and Plone 2.5. So, we have a new product install for testing! Please have a look and let us know if you have any problems. And then Maurits made the whole setup even better!
A Plone 3-specific tarball of the GetPaid product can now be downloaded for testing. By the time I got around to announcing that...Maurits made a tarball that works on both Plone 2.5 and 3.0! Go Maurits!! Check out downloads at http://code.google.com/p/getpaid/downloads/list
But after we made that, Maurits trumped my work at getting organized by making a common product for installing! He merged the two buildouts (one for Plone 2.5 and one for 3.0) into a common one (ah...sanity) and changed the way the products are laid out slightly. This will have some implications for buildout users (please see his email post about the work and changes).
Sorry for any problems you may have experienced trying earlier versions of the product on Plone 3. Buildout users were fine, but the tarball was not generated correctly. Thanks for your patience with us :)
