Howdy, hakkers! Work continues on Spiff. I figured I'd give an update about what has been done so far, and when the next update is coming.
For the past month or so, I've been converting Spiff's design away from the traditional client/server interaction of the server generating HTML output from server-side code and towards all of that being generated in the browser based on interactions with a simple API. The end result is a system that is much more machine friendly and privacy conscious. There is now only one codepath for implementing security controls such as only the secretary being allowed to see member contact information or limiting exact membership due payments to the treasurer's eyes. The long-awaited subscription feature I keep talking about is also functional. Previously, invoices for member dues were created in a rather hackish way that involved checking to see if someone had been billed in the last number of days. This approach was completely broken if other spaces wanted to implement other approaches to scheduling dues. It was impossible to automatically bill members for 3 month blocks or whole years, as several members currently are doing. The new approach decouples scheduling from membership dues by allowing space administrators to create plans with various scheduling periods. Users can then attach one or more subscription plans to their accounts and be billed accordingly. It is now possible to have recurring yearly/monthly/weekly/daily charges for anything. Other spaces might like this for a weekly class membership, daily equipment rental, etc. Built on top of the subscription feature is recurring donations. You no longer need to be an active member to automatically contribute money to SYNHAK! And it can be as low as $1/mo! Technically it can be as low as $0.50 per transaction. The icing on the cake is better integration with Stripe, the payment card processor that Spiff uses. You can now give Spiff your card and any invoice created can be automatically paid. Stripe handles all the PCI compliance details, which means that Spiff doesn't actually store any card information. If your card is rejected for some reason, the invoice stays open and can be retried at a later date, or an admin can enter cash/square/dwolla/whatever payment details. Before tomorrow (technically today) is done, I hope to have all of this new code covered by unit tests and finishing up the user interface that will let users add/remove subscriptions to their account from a gallery of sorts. The new Spiff will then be deployed to synhak.org for some in house testing, *and* I'll update everyone's account to reflect current dues. Afterwards, the plan is to implement automatic bulk discounts of member dues and a way to store credits such that we can account for the current membership credit program and users can see when they're out of credit. Following that, some nice UI elements to allow non-programmers the ability to create arbitrary invoices, such as a key fee. _______________________________________________ Discuss mailing list [email protected] https://synhak.org/mailman/listinfo/discuss
