Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version. Compare with Current  |   View Page History

<ac:macro ac:name="unmigrated-inline-wiki-markup"><ac:plain-text-body><![CDATA[

Zend Framework: Zend_Service_Chargify Component Proposal

Proposed Component Name Zend_Service_Chargify
Developer Notes http://framework.zend.com/wiki/display/ZFDEV/Zend_Service_Chargify
Proposers Dan Bowen
Zend Liaison TBD
Revision 1.0 - 30 December 2010: Initial Draft. (wiki revision: 2)

Table of Contents

1. Overview

Chargify.com is a subscription billing system that allows web application developers to charge customer credit cards on a recurring basis.
 
The Zend_Service_Chargify component makes it easy for developers to interact with the Chargify.com REST API for seamless integration into their website or application (as opposed to using hosted payment pages).

2. References

3. Component Requirements, Constraints, and Acceptance Criteria

The component will wrap the entire Chargify REST API.
The component will provide responses as Arrays.
The component will allow for both JSON and XML requests and responses.
The component will respond appropriately to HTTP response codes returned by the Chargify API

4. Dependencies on Other Framework Components

  • Zend_Service_Abstract
  • Zend_Http_Client
  • Zend_Http_Response
  • Zend_Json

5. Theory of Operation

The Application Developer has an account with Chargify.com
The Application Developer instantiates Zend_Service_Chargify with their API key & password (and possibly other options)
The Application Developer uses API functionality to create customers, create subscriptions and view transaction history (and more)

6. Milestones / Tasks

  • Milestone 1: [DONE] Supporting Documentation, Use Cases, Class Skeletons, uploaded.
  • Milestone 2: Check in working Code to support the basic Zend_Service_Chargify instantiation
  • Milestone 3: Check in working code to support Products functionality
  • Milestone 4: Check in working code to support Coupons functionality
  • Milestone 5: Check in working code to support Customers functionality
  • Milestone 6: Check in working code to support Subscriptions functionality
  • Milestone 7: Check in working code to support Transactions functionality
  • Milestone 8: Check in working code to support Migrations functionality
  • Milestone 9: Check in working code to support Charges functionality
  • Milestone 10: Check in working code to support Adjustments functionality
  • Milestone 11: Check in working code to support Metered Usage functionality
  • Milestone 12: Check in working code to support Quantity Component Allocations functionality
  • Milestone 13: Check in working code to support Refunds functionality
  • Milestone 14: Check in working code to support Credits functionality
  • Milestone 15: PHPUnit Test exist.
  • Milestone 16. Redesign and update code based off community feedback.

7. Class Index

  • Zend_Service_Chargify
  • Zend_Service_Chargify_Abstract
  • Zend_Service_Chargify_Product
  • Zend_Service_Chargify_Coupon
  • Zend_Service_Chargify_Customer
  • Zend_Service_Chargify_Subscription
  • Zend_Service_Chargify_Transaction
  • Zend_Service_Chargify_Migration
  • Zend_Service_Chargify_Charge
  • Zend_Service_Chargify_Adjustement
  • Zend_Service_Chargify_MeteredUsage
  • Zend_Service_Chargify_QuantityComponent
  • Zend_Service_Chargify_Refund
  • Zend_Service_Chargify_Credit

8. Use Cases

UC-01

Create new customer and subscription at the same time

UC-02

Cancel a subscription

UC-03

List transactions for a specific subscription. charges, refunds and payments only

 

9. Class Skeletons

]]></ac:plain-text-body></ac:macro>

Labels:
None
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.