developer_guide:developer_guide:recommended

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
developer_guide:developer_guide:recommended [2010/05/04 21:08] earlyimpactdeveloper_guide:developer_guide:recommended [2010/05/13 15:29] (current) earlyimpact
Line 75: Line 75:
  
 Provide a page where the user can find and edit their //product-package associations//. Provide a page where the user can find and edit their //product-package associations//.
- 
 ==== Settings ==== ==== Settings ====
  
Line 82: Line 81:
   * Text field to type in "Terms and Conditions", which could be enforced on the storefront. Terms & Conditions could also be specified at the product level, as mentioned above, overwriting the store setting.   * Text field to type in "Terms and Conditions", which could be enforced on the storefront. Terms & Conditions could also be specified at the product level, as mentioned above, overwriting the store setting.
   * Ability to turn all subscription products "On" and "Off". (e.g. for sale and not for sale)   * Ability to turn all subscription products "On" and "Off". (e.g. for sale and not for sale)
-  * Ability to control the additional text strings used in the storefront for the sale of subscriptions (if you feel that any are needed)+  * Ability to control the additional text strings used in the storefront for the sale of subscriptions (if you feel that any are needed). For example, the merchant might want to display some additional information on the payment screen (e.g. "//We typically process your subscription request within 24 hours.//")
  
 ===== Storefront ===== ===== Storefront =====
Line 129: Line 128:
  
 {{:developer_guide:developer_guide:sb_cart_widget.png|SubscriptionBridge's subscription terms widget}} {{:developer_guide:developer_guide:sb_cart_widget.png|SubscriptionBridge's subscription terms widget}}
- 
 ==== Terms & Conditions ==== ==== Terms & Conditions ====
  
 Prior to the customer completing the order you should display the "Terms and Conditions" that were saved in the store's administration area. You should implement some mechanism to prevent the customer from completing the order without agreeing to the terms of the subscription that they are signing up for. Prior to the customer completing the order you should display the "Terms and Conditions" that were saved in the store's administration area. You should implement some mechanism to prevent the customer from completing the order without agreeing to the terms of the subscription that they are signing up for.
  
-Since different subscription products/services can have different terms and conditions, this is a setting that you will want to configure at the product level. +As mentioned above, since different subscription products/services can have different //Terms and Conditions//, this is a setting that you will likely want to allow the merchant to configure at the product level.
 ==== Saving the Order ==== ==== Saving the Order ====
  
Line 162: Line 159:
   * shipping: $12.50   * shipping: $12.50
  
 +The above assumes that the subscription is for a product that requires taxes and shipping charges calculated during checkout (e.g. monthly wine shipment; monthly vitamin shipment; etc.). If the customer is instead purchasing a service, things are much easier as you will typically have no shipping and taxes. For example, assume there is a service that costs $19.95 a month, with a free trial. In this scenario you would have:
 +
 +  * trial total: $0
 +  * total: $19.95
 +  * trial tax: 0
 +  * tax: 0
 +  * trial shipping: 0
 +  * shipping: 0
 ==== Payment Screen ==== ==== Payment Screen ====
  
Line 168: Line 173:
 The payment screen is your final opportunity to be clear about the pricing terms for the subscription that the customer is signing up for. We recommend that you again display the [[:developer_guide:developer_guide:terms_widget|Terms Widget]].  The widget will display the most accurate and updated pricing information for the subscription (//Package//) that the customer is signing up for. The payment screen is your final opportunity to be clear about the pricing terms for the subscription that the customer is signing up for. We recommend that you again display the [[:developer_guide:developer_guide:terms_widget|Terms Widget]].  The widget will display the most accurate and updated pricing information for the subscription (//Package//) that the customer is signing up for.
  
-Now, if the cart is adding tax and shipping then your total will obviously be different than the price displayed in the terms.  That is where the 3rd line displayed by the widget can help (in the example below, "//Plus shipping, tax, and handling fee//").  You can add a custom line to the pricing terms that says "Plus Tax and Shipping" or "Includes Tax and Shipping" +Now, if the cart is adding tax and shipping then your total will obviously be different than the price displayed in the terms.  That is where the //3rd line// displayed by the widget can help (in the example below, "//Plus shipping, tax, and handling fee//").  You don't have to worry about this information: it is entered by the merchant in the SubscriptionBridge Merchant Center and displayed automatically by the Terms Widget only when available.
  
 <code>50% the first month <code>50% the first month
Line 174: Line 179:
 Plus shipping, tax, and handling fee</code> Plus shipping, tax, and handling fee</code>
  
-If you require additional legal terms or specifications to be displayed we recommend that you add additional form fields to the control panel setting page.  That would allow the user to type additional details that would be displayed at on the payment screen.+If you require additional legal terms or specifications to be displayed we recommend that you add additional form fields to the //Settings// mentioned above.  This would allow the merchant to display additional details that would be displayed at on the payment screen. 
 +==== Subscription creation request and confirmation ====
  
-==== Post Payment and Confirmation ==== +After the payment form is submitted, you will need to contact SubscriptionBridge to create the new subscription profile that the customer just requested. This is done through the [[:developer_guide:call_reference:SubscriptionRequest|SubscriptionRequest]] call using all of the information you have previously gathered and saved during the checkout process. Please review the developers guide and sample code for more specific help completing this action.
- +
-After the payment form is submitted, you will need to generate the [[:developer_guide:call_reference:SubscriptionRequest|SubscriptionRequest]] call using all of the information you have previously gathered and saved during the checkout process. Please review the developers guide and sample code for more specific help completing this action.+
  
 The important thing to remember at this point is that you validate the [[:developer_guide:call_reference:subscriptionrequest#subscriptionresponse|SubscriptionResponse]] before you display the confirmation.  If there are any errors you should redirect back to the payment page and display the error message to the customer.   The important thing to remember at this point is that you validate the [[:developer_guide:call_reference:subscriptionrequest#subscriptionresponse|SubscriptionResponse]] before you display the confirmation.  If there are any errors you should redirect back to the payment page and display the error message to the customer.  
  
-Once you get a "Ack" (Acknowledgment) of "Success", parse the "GUID" from the response and save it to your database.  The GUID is the only information you will need to save from the response. It uniquely identifies a specific subscription. With the GUID you can access all API Methods.+Once you get a "Ack" (Acknowledgment) of "Success", parse the "GUID" from the response and save it to your database.  The GUID is the only information you will need to save from the response. It uniquely identifies a specific subscription. With the GUID you can access all API Methods. We recommend that you save this information in the table where order information is saved, or in a separate table that references the order ID. 
 + 
 +===== After the purchase ===== 
 + 
 +We recommend that you customize the additional areas of the shopping cart so that both the merchant and the customer can recognize that an order was placed for a subscription product and link to SubscriptionBridge (if needed). 
 +==== Administration area ==== 
 + 
 +By checking the products that an order contains, you can easily determine whether it includes a subscription product. You can also do so by checking to see if there is a subscription GUID associated with the order (depending on how that information has been saved - see above). 
 + 
 +If the order is for a subscription product or service, you should make this clear on the order details page, and link to the SubscriptionBridge Merchant Center so that the merchant may manage the subscription. The syntax for the link should be as follows, where <GUID> is the identifier for the subscription associated with the order: 
 + 
 +<code>https://www.subscriptionbridge.com/MerchantCenter/SubscriptionslistDetails.asp?GUID=<GUID></code> 
 + 
 +==== Customer account area ==== 
 + 
 +Similarly to the administration area: 
 + 
 +  * Detect whether an order is for a subscription product or service 
 +  * Add information to the order details page indicating that this is the case 
 +  * Provide a link to the SubscriptionBridge Customer Center (unless you are not using the Customer Center, but rather performing all subscription management tasks via the API itself). For example, a customer might need to view recent subscription payments, update their billing information, add features to a subscription, or cancel the subscription. 
 + 
 +The syntax for the link to the SubscriptionBridge Customer Center should be as follows, where <GUID> is the identifier for the subscription associated with the order, <MODE> is the landing page (list of landing pages below), and <EMAIL> is the customer's e-mail address (which was passed to SubsriptionBridge via the SubscriptionRequest call): 
 + 
 +<code>https://www.subscriptionbridge.com/CustomerCenter/AutoLogin.asp?ID=<GUID>&Email=<EMAIL>&mode=<MODE></code> 
 + 
 +== Landing Pages <MODE> == 
 + 
 +  * **Detail** \\   Replace <MODE> with "details" to send the customer to the subscription details page. 
 +  * **Transaction History** \\  Replace <MODE> with "history" to send the customer to the transaction page. 
 +  * **Edit Billing** \\  Replace <MODE> with "billing" to send the customer to the billing details page. 
 +  * **Edit Shipping** \\  Replace <MODE> with "shipping" to send the customer to the shipping details page. 
 +  * **Cancel Subscription** \\   Replace <MODE> with "cancel" to send the customer to the subscription cancellation page.
developer_guide/developer_guide/recommended.1273021708.txt.gz · Last modified: 2010/05/04 00:00 (external edit)