Contents

Member Sign in

admin

Recurring Payments -- Proposed Design

Support.PayMethodUseCases History

Hide minor edits - Show changes to output

Changed lines 123-124 from:
For Automatic payment customers, the software agent makes sure that the Payment Gateway's recurring billing system is properly configured to settle the total amount due.  Since fees are charged in units of 1GB, the amount due each month will likely change only once a year (1GB of disk space is enough to host a year's worth of audio files.
to:
For Automatic payment customers, the software agent makes sure that the Payment Gateway's recurring billing system is properly configured to settle the total amount due when it runs on the following day.
Changed lines 127-128 from:
On the second day of the month, a sofware agent on the Payment Gateway performs a Recurring Sale transaction, and sends a report back to Sermons Online.  Sermons Online uses the report to automatically clear the customer's charges.
to:
On the second day of the month, a sofware agent on the Payment Gateway performs a Recurring Sale transaction, and post-backs the transaction details to Sermons Online.  Sermons Online uses the post-back information to automatically clear the customer's charges.
Changed lines 23-24 from:
Automatic payments are authorized by asking the user to provide credit card information, then submitting a transaction to the Payment Gateway.  For new accounts, a Sale transaction is sent; for existing accounts, a Recurring Update transaction is sent.  If the transaction is accepted by the Payment Gateway, then the payment method is confirmed.  All credit card information is stored by the Payment Gateway, not on Sermons Online. 
to:
Automatic payments are authorized by asking the user to provide credit card information, then submitting a transaction to the Payment Gateway.  For new accounts, an Authorization Only transaction is sent; for existing accounts, a Recurring Update transaction is sent.  If the transaction is accepted by the Payment Gateway, then the payment method is confirmed.  All credit card information is stored by the Payment Gateway, not on Sermons Online. 
Changed lines 1-2 from:
(:title Recurring Payments Use Cases :)
to:
(:title Recurring Payments -- Proposed Design :)
Changed lines 9-10 from:
Each month, the amount of disk space used by each customer is audited, and a charge is posted to Sermons Online's internal accounting system.  Customers may pay for these charges either manually with a check, or automatically with a credit card ("subscription" or recurring billing).
to:
Each month, the amount of disk space used by each customer is audited, and a charge is posted to Sermons Online's internal accounting system.  Customers may pay for these charges either manually with a check, or automatically with a credit card (subscription billing).

Usage fees are calculated in units of 1 GB.  1 GB is typically enough for a year's worth of sermon audio files, so most customers' monthly fee amount will change approximately once a year.  Customers may also set up rules to limit the amount of disk space used, and for these customers, their monthly fee amount will essentially never change.

Changed line 120 from:
On the first day of the month, a software agent on Sermons Online performs an audit of the disk space usage.  Customers can manage the contents of their sermons archives manually, or they can define rules for how much disk space is to be used.  The monthly audit evaluates the rules to remove expired sermons, calculates the amount of disk space being used, then posts charges.\\\
to:
On the first day of the month, a software agent on Sermons Online performs an audit of the disk space usage.  The monthly audit evaluates any disk-limit rules specified by the customer, calculates the amount of disk space being used, then posts charges.\\\
Added line 133:
Changed lines 52-62 from:

**username/password: as defined in Sermons Online
**item_sku: 200:001
**item_desc: Sermon Hosting
**item_type: SUB
**bill_cycle: 1 month
**recur_bill_amount: 1.00
**num_cycles: 999
**prorate_first_billing: 0
**recur_bill_day: 2
to:
***username/password: as defined in Sermons Online
***item_sku: 200:001
***item_desc: Sermon Hosting
***item_type: SUB
***bill_cycle: 1 month
***recur_bill_amount: 1.00
***num_cycles: 999
***prorate_first_billing: 0
***recur_bill_day: 2
Changed lines 51-52 from:
** If the customer's current payment method is "Manual", this is a new request to authorize payment, and a Sale transaction is sent to the Establish or Update Recurring Billing use case.  The customer's Sermons Online username and password is passed to the Gateway for the authentication credentials to be used.
to:
** If the customer's current payment method is "Manual", this is a new request to authorize payment, and an Authorize-Only transaction is sent to the Establish or Update Recurring Billing use case.  The following data is used:

**
username/password: as defined in Sermons Online
**item_sku: 200:001
**item_desc: Sermon Hosting
**item_type: SUB
**bill_cycle: 1 month
**recur_bill_amount: 1
.00
**num_cycles: 999
**prorate_first_billing: 0
**recur_bill_day: 2

Changed lines 69-70 from:
**The order id of the recurring transaction is saved to the customer's profile.  This is the key to the Payment Gateway's records regarding the recurring payment.
to:
**The order id and transaction amount of the recurring transaction is saved to the customer's profile.
Changed lines 166-169 from:
#If the total amount due is not equal to the recurring billing amount, system sends an Update Recurring transaction request to the Payment Gateway to update the recurring billing amount to cover the amount due.

#If the transaction response returned by
the Payment Gateway is "Approved", the next customer is processed..
to:
#If the total amount due is not equal to the transaction amount stored in the customer's profile, the system sends an Update Recurring transaction request to the Payment Gateway to update the recurring billing amount to cover the amount due.

#If
the transaction response returned by the Payment Gateway is "Approved", the new transaction amount is saved in the customer's profile, and the next customer is processed..
Changed lines 51-56 from:
** If the Customer's current payment method is "Manual", this is a new request to authorize payment, and a Sale transaction is sent to the Establish or Update Recurring Billing use case.

** If the Customer
's current payment method is "Automatic", this is a request to update the card information, and an Recurring Update transaction is sent to Establish or Update Recurring Billing use case.

#If the transaction response returned by
the Payment Gateway is "Approved", the payment method is changed to "Automatic", the confirmation status is set to "Confirmed", the information is saved to disk, and the use case ends.
to:
** If the customer's current payment method is "Manual", this is a new request to authorize payment, and a Sale transaction is sent to the Establish or Update Recurring Billing use case.  The customer's Sermons Online username and password is passed to the Gateway for the authentication credentials to be used.

** If the Customer's current payment method is "Automatic", this is a request to update
the card information, and a Recurring Update transaction is sent to the Establish or Update Recurring Billing use case.

#If
the recurring transaction response returned by the Payment Gateway is "Approved":

**The payment method is changed to "Automatic"
**The confirmation status is set to "Confirmed"
**The order id of the recurring transaction is saved to the customer's profile.  This is the key to the Payment Gateway's records regarding the recurring payment
.
Changed lines 94-95 from:
#If the customer's profile in Sermons Online includes a Payment Gateway password, then the Cancel Recurring Billing use case is performed and the use case ends.
to:
#If the customer's profile in Sermons Online includes an order id, then the Cancel Recurring Billing use case is performed and the use case ends.
Changed lines 86-94 from:
#Upon receipt, the system validates that the passed customer's payment method is set to "Manual", and the current confirmation status is "Unconfirmed".  If so, the confirmation status is changed to "Confirmed", the system presents a message informing the user that the payment method has been confirmed, and the use case ends.
to:
#Upon receipt, the system validates that the passed customer's payment method is set to "Manual", and the current confirmation status is "Unconfirmed".  If not, the system opens an alert workflow to Sermons Online billing, passing the request as a possible error, and the use case ends.

#The confirmation status is changed to "Confirmed"

#If the customer's profile in Sermons Online includes a Payment Gateway password, then the Cancel Recurring Billing use case is performed and the use case
ends.

(:cellnr:)'''3.3 Cancel Recurring Billing'''
(:cell:)
#The use case begins when Sermons Online submits a Subscription Lookup and Cancel Subscription transaction pair.  The system processes the transaction request, removes its record of recurring billing, and the use case end
.
Added line 225:
Added lines 1-2:
(:title Recurring Payments Use Cases :)
Changed lines 5-6 from:
!!Sermons Online Billing Model
to:
!!Billing Model
Changed lines 11-12 from:
!!Selecting a Payment Method
to:
!!Selecting and Authorizing a Payment Method
Changed lines 106-107 from:
In general, errors encountered during monthly processing are escalated to the Sermons Online billing staff for resolution. 
to:
Errors encountered during monthly processing are escalated to the Sermons Online billing staff for resolution. 
Deleted lines 171-172:
**Reports the result of the transaction to the Sermons Online Accept Automatic Payment use case.  The report must include the following information:  Sermons Online customer id, transaction identifier, transaction date, transaction amount, and a transaction status of "Approved" or "Declined".
Added lines 174-175:
**Posts-back the result of the transaction to the Sermons Online Accept Automatic Payment use case.  The report must include the following information:  Sermons Online customer id, transaction identifier, transaction date, transaction amount, and a transaction status of "Approved" or "Declined".
Changed line 177 from:
(:cellnr:)'''2.1. Accept Automatic Payment'''
to:
(:cellnr:)'''2.1. Email Automatic Payment Receipt'''
Added lines 179-184:
#The use case begins when the Payment Gateway has made a sucessful recurring billing transaction using the Sermons Online customer's credit card.

#The system sends an email receipt to the Sermons Online customer's billing point of contact, and the use case ends.

(:cellnr:)'''2.2. Accept Automatic Payment'''
(:cell:)
Changed line 201 from:
(:cellnr:)'''2.2. Email Automatic Payment Receipt'''
to:
(:cellnr:)'''3. Mail Check to Sermons Online Billing'''
Deleted lines 202-207:
#The use case begins when the Payment Gateway has made a sucessful recurring billing transaction using the Sermons Online customer's credit card.

#The system sends an email receipt to the Sermons Online customer's billing point of contact, and the use case ends.

(:cellnr:)'''3. Mail Check to Sermons Online Billing'''
(:cell:)
Deleted line 216:
Changed lines 24-25 from:
(:table cellpadding=10 cellspacing=0 border=1 :)
(:cellnr width=20%:)'''1. Select Payment Method'''
to:


(:table cellpadding=10 border=1 :)
(:cellnr:)'''1. Select Payment Method'''
Changed line 43 from:
(:cellnr width=20%:)'''2. Authorize Automatic Payment'''
to:
(:cellnr:)'''2. Authorize Automatic Payment'''
Changed line 60 from:
(:cellnr width=20%:)'''2.1 Establish or Update Recurring Billing'''
to:
(:cellnr:)'''2.1 Establish or Update Recurring Billing'''
Changed line 65 from:
(:cellnr width=20%:)'''3. Authorize Manual Payment'''
to:
(:cellnr:)'''3. Authorize Manual Payment'''
Changed line 75 from:
(:cellnr width=20%:)'''3.1 Email Manual Payment Confirmation'''
to:
(:cellnr:)'''3.1 Email Manual Payment Confirmation'''
Changed line 80 from:
(:cellnr width=20%:)'''3.2 Confirm Manual Payment'''
to:
(:cellnr:)'''3.2 Confirm Manual Payment'''
Changed lines 109-110 from:
(:table cellpadding=10 cellspacing=0 border=1 :)
(:cellnr width=20%:)'''1. Audit Usage and Post Charges'''
to:


(:table cellpadding=10 border=1 :)
(:cellnr:)'''1. Audit Usage and Post Charges'''
Changed line 149 from:
(:cellnr width=20%:)'''1.1. Update Recurring Billing Amount'''
to:
(:cellnr:)'''1.1. Update Recurring Billing Amount'''
Changed line 153 from:
(:cellnr width=20%:)'''1.2. Email Billing Statement'''
to:
(:cellnr:)'''1.2. Email Billing Statement'''
Changed line 160 from:
(:cellnr width=20%:)'''2. Post Automatic Payment'''
to:
(:cellnr:)'''2. Post Automatic Payment'''
Changed line 175 from:
(:cellnr width=20%:)'''2.1. Accept Automatic Payment'''
to:
(:cellnr:)'''2.1. Accept Automatic Payment'''
Changed line 193 from:
(:cellnr width=20%:)'''2.2. Email Automatic Payment Receipt'''
to:
(:cellnr:)'''2.2. Email Automatic Payment Receipt'''
Changed line 199 from:
(:cellnr width=20%:)'''3. Mail Check to Sermons Online Billing'''
to:
(:cellnr:)'''3. Mail Check to Sermons Online Billing'''
Changed line 204 from:
(:cellnr width=20%:)'''3.1. Accept Manual Payment'''
to:
(:cellnr:)'''3.1. Accept Manual Payment'''
Changed lines 23-24 from:
(:table cellpadding=10 cellspacing=0 border="1" :)
(:cellnr colspan
=2 align=center:)https://www.sermonsonline.com/main/resources/EAID_02E91808_7D08_4723_BC39_16358BB0E285.png"Select Payment Method Use Cases"
to:
%center%https://www.sermonsonline.com/main/resources/images/EAID_02E91808_7D08_4723_BC39_16358BB0E285.png"Select Payment Method Use Cases"
(:table cellpadding
=10 cellspacing=0 border=1 :)
Added line 106:
%center%http://localhost/PayMethod/images/EAID_CEFF25B8_D40F_45a7_AF8F_80DA448AD789.png"Monthly Billing Use Cases"
Deleted line 107:
(:cellnr colspan=2 align=center:)https://www.sermonsonline.com/main/resources/EAID_CEFF25B8_D40F_45a7_AF8F_80DA448AD789.png"Monthly Billing Use Cases"
Added line 211:
Changed lines 1-2 from:
(:toc:)
to:
(:*toc:)
Changed line 24 from:
(:cellnr colspan=2 align=center bgcolor=#f3f3f3:)https://www.sermonsonline.com/main/resources/EAID_02E91808_7D08_4723_BC39_16358BB0E285.png"Select Payment Method Use Cases"
to:
(:cellnr colspan=2 align=center:)https://www.sermonsonline.com/main/resources/EAID_02E91808_7D08_4723_BC39_16358BB0E285.png"Select Payment Method Use Cases"
Changed lines 23-24 from:
(:table cellpadding=10 cellspacing=0 border=1 :)
(:cellnr colspan=2 align=center:)https://www.sermonsonline.com/main/resources/EAID_02E91808_7D08_4723_BC39_16358BB0E285.png"Select Payment Method Use Cases"
to:
(:table cellpadding=10 cellspacing=0 border="1" :)
(:cellnr colspan=2 align=center bgcolor=#f3f3f3:)https://www.sermonsonline.com/main/resources/EAID_02E91808_7D08_4723_BC39_16358BB0E285.png"Select Payment Method Use Cases"
Changed line 24 from:
(:cellnr colspan=2 align=center:)http://www.sermonsonline/main/resources/EAID_02E91808_7D08_4723_BC39_16358BB0E285.png"Select Payment Method Use Cases"
to:
(:cellnr colspan=2 align=center:)https://www.sermonsonline.com/main/resources/EAID_02E91808_7D08_4723_BC39_16358BB0E285.png"Select Payment Method Use Cases"
Changed line 107 from:
(:cellnr colspan=2 align=center:)http://www.sermonsonline/main/resources/EAID_CEFF25B8_D40F_45a7_AF8F_80DA448AD789.png"Monthly Billing Use Cases"
to:
(:cellnr colspan=2 align=center:)https://www.sermonsonline.com/main/resources/EAID_CEFF25B8_D40F_45a7_AF8F_80DA448AD789.png"Monthly Billing Use Cases"
Changed lines 1-281 from:
<h2>
<a name="toc1" id="toc1"> </a>
1. Sermons Online Billing Model </h2>
<p> Sermons Online is a streaming media hosting service. A monthly fee is charged based on the amount of disk space used to store the customer's audio/video files. </p>
<p class="vspace"> Each month, the amount of disk space used by each customer is audited, and a charge is posted to Sermons Online's internal accounting system. Customers may pay for these charges either manually with a check, or automatically with a credit card ("subscription" or recurring billing). </p>
<div class="vspace"> </div>
<h2>
<a name="toc2" id="toc2"> </a>
2. Selecting a Payment Method </h2>
<p> Sermons Online customers login to the Sermons Online Manager to select a manual or automatic payment method. </p>
<div class="vspace"> </div>
<h3>
<a name="toc3" id="toc3"> </a>
2.1. Manual Payments </h3>
<p> Manual payments are authorized by sending an email to the customer's billing point of contact to verify that the email address is valid and that messages can be sent without being filtered. If the customer reads the email and clicks on a link contained within it, then the payment method is confirmed. </p>
<div class="vspace"> </div>
<h3>
<a name="toc4" id="toc4"> </a>
2.2. Automatic Payments </h3>
<p> Automatic payments are authorized by asking the user to provide credit card information, then submitting a transaction to the Payment Gateway. For new accounts, a Sale transaction is sent; for existing accounts, a Recurring Update transaction is sent. If the transaction is accepted by the Payment Gateway, then the payment method is confirmed. All credit card information is stored by the Payment Gateway, not on Sermons Online. </p>
<p class="vspace"> The use cases involed in selecting a payment method are as follows: </p>
<div class="vspace"> </div>
<table border="1" cellpadding="10" cellspacing="0">
<tbody>
<tr>
<td colspan="2" align="center" valign="top">  <img src="http://www.sermonsonline/main/resources/EAID_02E91808_7D08_4723_BC39_16358BB0E285.png" alt="Select Payment Method Use Cases" title="Select Payment Method Use Cases"> </td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 1. Select Payment Method </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Customer edits the Billing section of their Sermons Online profile. This section shows:
<ul>
<li> A drop-down list of available payment methods: "Manual -- Pay by Check", or "Automatic -- Pay by Credit Card". </li>
<li> If the current payment method is Automatic, a message showing the name and last 4 digits of the card currently being used.. </li>
<li> A status message indicating whether the payment method has been confirmed. </li>
<li> A submit button for confirming a change in method </li>
<li> By default, the payment method is "Manual" and the confirmation status is "Unconfirmed". </li>
</ul>
</li>
<li> The Customer selects a payment method and then clicks on the submit button to confirm their choice. If confirming a manual payment, the Customer performs the Authorize Manual Payment use case. If confirming an automatic payment, the Customer performs the Authorize Automatic Payment use case. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 2. Authorize Automatic Payment </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Customer has chosen to make automatic payments and wants to confirm or update their credit card information. </li>
<li> The system presents a form with the information required to establish a recurring billing with the Payment Gateway. When the user submits the form the following steps are taken:
<ul>
<li> If the Customer's current payment method is "Manual", this is a new request to authorize payment, and a Sale transaction is sent to the Establish or Update Recurring Billing use case. </li>
<li> If the Customer's current payment method is "Automatic", this is a request to update the card information, and an Recurring Update transaction is sent to Establish or Update Recurring Billing use case. </li>
</ul>
</li>
<li> If the transaction response returned by the Payment Gateway is "Approved", the payment method is changed to "Automatic", the confirmation status is set to "Confirmed", the information is saved to disk, and the use case ends. </li>
<li> If the response is "Declined" then:
<ul>
<li> If the error code indicates that the card information may have been mis-entered, the Sermons Online payment authorization form will be re-presented with the suspect fields highlighted for correction. </li>
<li> If the error code indicates that there is some mis-configuration between Sermons Online and the Payment Gateway, the Customer is presented with a notice that payment authorizations cannot be processed at this time, and an alert workflow will be opened to forward the error information to Sermons Online technical support. </li>
</ul>
</li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 2.1 Establish or Update Recurring Billing </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when Sermons Online submits a Sale or Recurring Update transaction. The system processes the transaction request and responds with status information in text response format. </li>
<li> If the transaction is for a Sale transaction and is approved, then the Payment Gateway also sends a receipt of the transaction to the Customer. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 3. Authorize Manual Payment </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Customer chosen to make manual payments, and wishes to confirm their billing contact information. </li>
<li> The system presents a form with the information required to establish a manual payment. When the user submits the form the following steps are taken:
<ul>
<li> The system adds a workflow to do the Email Manual Payment Confirmation use case. </li>
<li> The system presents a message telling the Customer that an email has been sent to the billing point-of-contact. </li>
</ul>
</li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 3.1 Email Manual Payment Confirmation </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the workflow task to confirm a manual payment method has been triggered. </li>
<li> The system sends an email addressed to the billing point of contact of the customer, then ends. The email contains a link which will perform the Confirm Manual Payment use case. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 3.2 Confirm Manual Payment </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when a Customer has clicked on a link in an email sent to confirm a manual payment. The link contains the customer id as a parameter. </li>
<li> Upon receipt, the system validates that the passed customer's payment method is set to "Manual", and the current confirmation status is "Unconfirmed". If so, the confirmation status is changed to "Confirmed", the system presents a message informing the user that the payment method has been confirmed, and the use case ends. </li>
</ol>
</td>
</tr>
</tbody>
</table>
<p class="vspace">
<br clear="all"> </p>
<div class="vspace"> </div>
<h2>
<a name="toc5" id="toc5"> </a>
3. Processing Monthly Payments </h2>
<p> Processing of monthly payments is done by both Sermons Online and the Payment Gateway. </p>
<div class="vspace"> </div>
<h3>
<a name="toc6" id="toc6"> </a>
3.1. Sermons Online Processing </h3>
<p> On the first day of the month, a software agent on Sermons Online performs an audit of the disk space usage. Customers can manage the contents of their sermons archives manually, or they can define rules for how much disk space is to be used. The monthly audit evaluates the rules to remove expired sermons, calculates the amount of disk space being used, then posts charges. <br> <br> For Manual payment customers, the software agent sends an email invoice to the billing point-of-contact. The customer follows the instructions in the email to write a check and mail it back to Sermons Online, where it is manually processed. </p>
<p class="vspace"> For Automatic payment customers, the software agent makes sure that the Payment Gateway's recurring billing system is properly configured to settle the total amount due. Since fees are charged in units of 1GB, the amount due each month will likely change only once a year (1GB of disk space is enough to host a year's worth of audio files.) </p>
<div class="vspace"> </div>
<h3>
<a name="toc7" id="toc7"> </a>
3.2. Payment Gateway Processing </h3>
<p> On the second day of the month, a sofware agent on the Payment Gateway performs a Recurring Sale transaction, and sends a report back to Sermons Online. Sermons Online uses the report to automatically clear the customer's charges. </p>
<p class="vspace"> In general, errors encountered during monthly processing are escalated to the Sermons Online billing staff for resolution. </p>
<p class="vspace"> The use cases involved in processing monthly payments are as follows: </p>
<div class="vspace"> </div>
<table border="1" cellpadding="10" cellspacing="0">
<tbody>
<tr>
<td colspan="2" align="center" valign="top">  <img src="http://www.sermonsonline/main/resources/EAID_CEFF25B8_D40F_45a7_AF8F_80DA448AD789.png" alt="Monthly Billing Use Cases" title="Monthly Billing Use Cases"> </td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 1. Audit Usage and Post Charges </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Usage Audit Agent performs its monthly processing of Sermons Online billing. </li>
<li> The system calculates an invoice date as being the first day of the current month. </li>
<li> The system selects all customers with a customer status of "Active" or "Evaluating", and for each customer, it performs the following steps:
<ul>
<li> If the customer status is "Evaluating", the system books a "free trial" transaction and the next customer is processed. </li>
<li> If an invoice has already been booked for the customer for the invoice date, the billing transaction is skipped and the next customer is processed. </li>
<li> The system removes all expired sermons (sermons in Inactive or Pending status for 1 month or longer) and their associated media files. </li>
<li> The system calculates the disk space used by the customer's sermon media files. </li>
<li> If the customer is not using any diskspace, or if the customer has a billing type of "nocharge", the billing transaction is skipped and the next customer is processed. </li>
<li> If the customer has enabled auto-deletion, the system changes the status of all auto-deletion candidates to "inactive", so they will be removed in next month's billing cycle. </li>
</ul>
</li>
<li> At this point in the flow, we have an active customer, with active content, who should be billed. The system books charges for the current month's usage into the Sermons Online accounting system, applying any discounts which may apply. The transaction will use the following data values:
<ul>
<li> item id: 200:001, "Sermons Hosting" </li>
<li> vendor id: 4, "Billing Agent" </li>
<li> date: invoice date </li>
</ul>
</li>
<li> If the customer's payment method is "Manual", then the system performs the Email Billing Statement use case and the next customer is processed. </li>
<li> If the customer's payment method is "Automatic" and the total amount due is equal to the customer's recurring billing amount, then the next customer is processed. </li>
<li> If the total amount due is not equal to the recurring billing amount, system sends an Update Recurring transaction request to the Payment Gateway to update the recurring billing amount to cover the amount due. </li>
<li> If the transaction response returned by the Payment Gateway is "Approved", the next customer is processed.. </li>
<li> If the response is "Declined" then the system adds an alert workflow to forward the failed transaction details to Sermons Online technical support and the next customer is processed. </li>
<li> Once all customers have been processed, the use case ends.. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 1.1. Update Recurring Billing Amount </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when Sermons Online submits a Recurring Update transaction. The system processes the transaction request, responds with status information in text response format, and the use case ends. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 1.2. Email Billing Statement </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the workflow task to email a customer's billing statement has been triggered. </li>
<li> The workflow system retrieves the customer's current charges from the Sermons Online accounting system, and sends an email notice to the billing point of contact. </li>
<li> The use case ends. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 2. Post Automatic Payment </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Recurring Billing Software Agent performs its monthly processing of recurring billing for Sermons Online customers. All Sermons Online customers are configured to make payments on the second day of the month. </li>
<li> For each Sermons Online customer, the system:
<ul>
<li> Retrieves the recurring billing details and credit card payment information. </li>
<li> Makes a Sale transaction on behalf of Sermons Online </li>
<li> Reports the result of the transaction to the Sermons Online Accept Automatic Payment use case. The report must include the following information: Sermons Online customer id, transaction identifier, transaction date, transaction amount, and a transaction status of "Approved" or "Declined". </li>
<li> If the transaction status is "Approved", the system performs the Email Automatic Payment Receipt use case. </li>
</ul>
</li>
<li> Once all Sermons Online customers have been processed, the use case ends. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 2.1. Accept Automatic Payment </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Payment Gateway posts a recurring billing payment for a Sermons Online customer. </li>
<li> The system receives a recurring billing payment notice from the Payment Gateway. The payment notice will include the Sermons Online customer identifier, a payment amount, and a payment date. </li>
<li> The Sermons Online system will calculate the invoice date as being the first day of the month in which the recurring payment was made. </li>
<li> The Sermons Online system will select all accounting transactions that match the following criteria, and calculate the total amount.
<ul>
<li> item id = 200:01 </li>
<li> vendor id = 4 </li>
<li> date=invoice date </li>
</ul>
</li>
<li> If the total amount of the selected transactions is equal to the payment amount reported by the Payment Gateway, then the payment is used to clear the transactions, and the use case ends. </li>
<li> If the total amount does not equal the payment amount, the system opens an alert workflow to forward the payment details to Sermons Online Billing, and the use case ends. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 2.2. Email Automatic Payment Receipt </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Payment Gateway has made a sucessful recurring billing transaction using the Sermons Online customer's credit card. </li>
<li> The system sends an email receipt to the Sermons Online customer's billing point of contact, and the use case ends. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 3. Mail Check to Sermons Online Billing </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when a Manual Payment Customer receives a billing statement email sent by the Email Billing Statement use case. </li>
<li> The customer follows the payment instructions included in the Billing Statement, writes a check, and mails it to Sermons Online billing. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 3.1. Accept Manual Payment </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when a payment for a Sermons Online invoice is received in the mail. </li>
<li> The Sermons Online Billing actor finds the Sermons Online transactions to apply the payment to, and clears them. Any partial/remaining payment amounts are entered as credit transactions. </li>
<li> The Billing actor deposits the check. </li>
<li> The use case ends. </li>
</ol>
</td>
</tr>
</tbody>
</table>
<div class="vspace"> </div>
</div>
to:
(:toc:)

!!Sermons Online Billing Model

Sermons Online is a streaming media hosting service.  A monthly fee is charged based on the amount of disk space used to store the customer's audio/video files.

Each month, the amount of disk space used by each customer is audited, and a charge is posted to Sermons Online's internal accounting system.  Customers may pay for these charges either manually with a check, or automatically with a credit card ("subscription" or recurring billing). 

!!Selecting a Payment Method

Sermons Online customers login to the Sermons Online Manager to select a manual or automatic payment method.

!!!Manual Payments

Manual payments are authorized by sending an email to the customer's billing point of contact to verify that the email address is valid and that messages can be sent without being filtered.  If the customer reads the email and clicks on a link contained within it, then the payment method is confirmed.

!!!Automatic Payments

Automatic payments are authorized by asking the user to provide credit card information, then submitting a transaction to the Payment Gateway.  For new accounts, a Sale transaction is sent; for existing accounts, a Recurring Update transaction is sent.  If the transaction is accepted by the Payment Gateway, then the payment method is confirmed.  All credit card information is stored by the Payment Gateway, not on Sermons Online. 

The use cases involed in selecting a payment method are as follows:

(:table cellpadding=10 cellspacing=0 border=1 :)
(:cellnr colspan=2 align=center:)http://www.sermonsonline/main/resources/EAID_02E91808_7D08_4723_BC39_16358BB0E285.png"Select Payment Method Use Cases"
(:cellnr width=20%:)'''1. Select Payment Method'''
(:cell:)
#The use case begins when the Customer edits the Billing section of their Sermons Online profile.  This section shows:

**A drop-down list of available payment methods: "Manual -- Pay by Check", or "Automatic -- Pay by Credit Card".

**If the current payment method is Automatic, a message showing the name and last 4 digits of the card currently being used..

**A status message indicating whether the payment method has been confirmed.

**A submit button for confirming a change in method

**By default, the payment method is "Manual" and the confirmation status is "Unconfirmed".

#The Customer selects a payment method and then clicks on the submit button to confirm their choice.  If confirming a manual payment, the Customer performs the Authorize Manual Payment use case.  If confirming an automatic payment, the Customer performs the Authorize Automatic Payment use case.

(:cellnr width=20%:)'''2. Authorize Automatic Payment'''
(:cell:)
#The use case begins when the Customer has chosen to make automatic payments and wants to confirm or update their credit card information.

#The system presents a form with the information required to establish a recurring billing with the Payment Gateway.  When the user submits the form the following steps are taken:

** If the Customer's current payment method is "Manual", this is a new request to authorize payment, and a Sale transaction is sent to the Establish or Update Recurring Billing use case.

** If the Customer's current payment method is "Automatic", this is a request to update the card information, and an Recurring Update transaction is sent to Establish or Update Recurring Billing use case.

#If the transaction response returned by the Payment Gateway is "Approved", the payment method is changed to "Automatic", the confirmation status is set to "Confirmed", the information is saved to disk, and the use case ends.

#If the response is "Declined" then:

** If the error code indicates that the card information may have been mis-entered, the Sermons Online payment authorization form will be re-presented with the suspect fields highlighted for correction.

** If the error code indicates that there is some mis-configuration between Sermons Online and the Payment Gateway, the Customer is presented with a notice that payment authorizations cannot be processed at this time, and an alert workflow will be opened to forward the error information to Sermons Online technical support.
(:cellnr width=20%:)'''2.1 Establish or Update Recurring Billing'''
(:cell:)
#The use case begins when Sermons Online submits a Sale or Recurring Update transaction.  The system processes the transaction request and responds with status information in text response format.

#If the transaction is for a Sale transaction and is approved, then the Payment Gateway also sends a receipt of the transaction to the Customer.
(:cellnr width=20%:)'''3. Authorize Manual Payment'''
(:cell:)
#The use case begins when the Customer chosen to make manual payments, and wishes to confirm their billing contact information.

#The system presents a form with the information required to establish a manual payment.  When the user submits the form the following steps are taken:

** The system adds a workflow to do the Email Manual Payment Confirmation use case.

** The system presents a message telling the Customer that an email has been sent to the billing point-of-contact.

(:cellnr width=20%:)'''3.1 Email Manual Payment Confirmation'''
(:cell:)
#The use case begins when the workflow task to confirm a  manual payment method has been triggered.

#The system sends an email addressed to the billing point of contact of the customer, then ends.  The email contains a link which will perform the Confirm Manual Payment use case.
(:cellnr width=20%:)'''3.2 Confirm Manual Payment'''
(:cell:)
#The use case begins when a Customer has clicked on a link in an email sent to confirm a manual payment.  The link contains the customer id as a parameter.

#Upon receipt, the system validates that the passed customer's payment method is set to "Manual", and the current confirmation status is "Unconfirmed".  If so, the confirmation status is changed to "Confirmed", the system presents a message informing the user that the payment method has been confirmed, and the use case ends.
(:tableend:)

[[<<]]

!!Processing Monthly Payments

Processing of monthly payments is done by both Sermons Online and the Payment Gateway.

!!!Sermons Online Processing

On the first day of the month, a software agent on Sermons Online performs an audit of the disk space usage.  Customers can manage the contents of their sermons archives manually, or they can define rules for how much disk space is to be used.  The monthly audit evaluates the rules to remove expired sermons, calculates the amount of disk space being used, then posts charges.\\\
For Manual payment customers, the software agent sends an email invoice to the billing point-of-contact.  The customer follows the instructions in the email to write a check and mail it back to Sermons Online, where it is manually processed.

For Automatic payment customers, the software agent makes sure that the Payment Gateway's recurring billing system is properly configured to settle the total amount due.  Since fees are charged in units of 1GB, the amount due each month will likely change only once a year (1GB of disk space is enough to host a year's worth of audio files.) 

!!!Payment Gateway Processing

On the second day of the month, a sofware agent on the Payment Gateway performs a Recurring Sale transaction, and sends a report back to Sermons Online.  Sermons Online uses the report to automatically clear the customer's charges.

In general, errors encountered during monthly processing are escalated to the Sermons Online billing staff for resolution. 

The use cases involved in processing monthly payments are as follows:

(:table cellpadding=10 cellspacing=0 border=1 :)
(:cellnr colspan=2 align=center:)http://www.sermonsonline/main/resources/EAID_CEFF25B8_D40F_45a7_AF8F_80DA448AD789.png"Monthly Billing Use Cases"
(:cellnr width=20%:)'''1. Audit Usage and Post Charges'''
(:cell:)
#The use case begins when the Usage Audit Agent performs its monthly processing of Sermons Online billing.

#The system calculates an invoice date as being the first day of the current month.

#The system selects all customers with a customer status of "Active" or "Evaluating", and for each customer, it performs the following steps:

**If the customer status is "Evaluating", the system books a "free trial" transaction and the next customer is processed.

**If an invoice has already been booked for the customer for the invoice date, the billing transaction is skipped and the next customer is processed.

**The system removes all expired sermons (sermons in Inactive or Pending status for 1 month or longer) and their associated media files.

**The system calculates the disk space used by the customer's sermon media files.

**If the customer is not using any diskspace, or if the customer has a billing type of "nocharge", the billing transaction is skipped and the next customer is processed.

**If the customer has enabled auto-deletion, the system changes the status of all auto-deletion candidates to "inactive", so they will be removed in next month's billing cycle.

#At this point in the flow, we have an active customer, with active content, who should be billed.  The system books charges for the current month's usage into the Sermons Online accounting system, applying any discounts which may apply.  The transaction will use the following data values:

**item id:  200:001, "Sermons Hosting"
**vendor id:  4, "Billing Agent"
**date:  invoice date

#If the customer's payment method is "Manual", then the system performs the Email Billing Statement use case and the next customer is processed.

#If the customer's payment method is "Automatic" and the total amount due is equal to the customer's recurring billing amount, then the next customer is processed.

#If the total amount due is not equal to the recurring billing amount, system sends an Update Recurring transaction request to the Payment Gateway to update the recurring billing amount to cover the amount due.

#If the transaction response returned by the Payment Gateway is "Approved", the next customer is processed..

#If the response is "Declined" then the system adds an alert workflow to forward the failed transaction details to Sermons Online technical support and the next customer is processed.

#Once all customers have been processed, the use case ends..
(:cellnr width=20%:)'''1.1. Update Recurring Billing Amount'''
(:cell:)
#The use case begins when Sermons Online submits a Recurring Update transaction.  The system processes the transaction request, responds with status information in text response format, and the use case ends.

(:cellnr width=20%:)'''1.2. Email Billing Statement'''
(:cell:)
#The use case begins when the workflow task to email a customer's billing statement has been triggered.

#The workflow system retrieves the customer's current charges from the Sermons Online accounting system, and sends an email notice to the billing point of contact.

#The use case ends.
(:cellnr width=20%:)'''2. Post Automatic Payment'''
(:cell:)
#The use case begins when the Recurring Billing Software Agent performs its monthly processing of recurring billing for Sermons Online customers.  All Sermons Online customers are configured to make payments on the second day of the month.

#For each Sermons Online customer, the system:

**Retrieves the recurring billing details and credit card payment information.

**Makes a Sale transaction on behalf of Sermons Online

**Reports the result of the transaction to the Sermons Online Accept Automatic Payment use case.  The report must include the following information:  Sermons Online customer id, transaction identifier, transaction date, transaction amount, and a transaction status of "Approved" or "Declined".

**If the transaction status is "Approved", the system performs the Email Automatic Payment Receipt use case.

#Once all Sermons Online customers have been processed, the use case ends.
(:cellnr width=20%:)'''2.1. Accept Automatic Payment'''
(:cell:)
#The use case begins when the Payment Gateway posts a recurring billing payment for a Sermons Online customer.

#The system receives a recurring billing payment notice from the Payment Gateway.  The payment notice will include the Sermons Online customer identifier, a payment amount, and a payment date.

#The Sermons Online system will calculate the invoice date as being the first day of the month in which the recurring payment was made.

#The Sermons Online system will select all accounting transactions that match the following criteria, and calculate the total amount.

**item id = 200:01
**vendor id = 4
**date=invoice date

#If the total amount of the selected transactions is equal to the payment amount reported by the Payment Gateway, then the payment is used to clear the transactions, and the use case ends.

#If the total amount does not equal the payment amount, the system opens an alert workflow to forward the payment details to Sermons Online Billing, and the use case ends.

(:cellnr width=20%:)'''2.2. Email Automatic Payment Receipt'''
(:cell:)
#The use case begins when the Payment Gateway has made a sucessful recurring billing transaction using the Sermons Online customer's credit card.

#The system sends an email receipt to the Sermons Online customer's billing point of contact, and the use case ends.

(:cellnr width=20%:)'''3. Mail Check to Sermons Online Billing'''
(:cell:)
#The use case begins when a Manual Payment Customer receives a billing statement email sent by the Email Billing Statement use case.

#The customer follows the payment instructions included in the Billing Statement, writes a check, and mails it to Sermons Online billing.
(:cellnr width=20%:)'''3.1. Accept Manual Payment'''
(:cell:)
#The use case begins when a payment for a Sermons Online invoice is received in the mail.

#The Sermons Online Billing actor finds the Sermons Online transactions to apply the payment to, and clears them.  Any partial/remaining payment amounts are entered as credit transactions.

#The Billing actor deposits the check.

#The use case ends.

(:tableend:)
Changed lines 1-281 from:
abc
to:
<h2>
<a name="toc1" id="toc1"> </a>
1. Sermons Online Billing Model </h2>
<p> Sermons Online is a streaming media hosting service. A monthly fee is charged based on the amount of disk space used to store the customer's audio/video files. </p>
<p class="vspace"> Each month, the amount of disk space used by each customer is audited, and a charge is posted to Sermons Online's internal accounting system. Customers may pay for these charges either manually with a check, or automatically with a credit card ("subscription" or recurring billing). </p>
<div class="vspace"> </div>
<h2>
<a name="toc2" id="toc2"> </a>
2. Selecting a Payment Method </h2>
<p> Sermons Online customers login to the Sermons Online Manager to select a manual or automatic payment method. </p>
<div class="vspace"> </div>
<h3>
<a name="toc3" id="toc3"> </a>
2.1. Manual Payments </h3>
<p> Manual payments are authorized by sending an email to the customer's billing point of contact to verify that the email address is valid and that messages can be sent without being filtered. If the customer reads the email and clicks on a link contained within it, then the payment method is confirmed. </p>
<div class="vspace"> </div>
<h3>
<a name="toc4" id="toc4"> </a>
2.2. Automatic Payments </h3>
<p> Automatic payments are authorized by asking the user to provide credit card information, then submitting a transaction to the Payment Gateway. For new accounts, a Sale transaction is sent; for existing accounts, a Recurring Update transaction is sent. If the transaction is accepted by the Payment Gateway, then the payment method is confirmed. All credit card information is stored by the Payment Gateway, not on Sermons Online. </p>
<p class="vspace"> The use cases involed in selecting a payment method are as follows: </p>
<div class="vspace"> </div>
<table border="1" cellpadding="10" cellspacing="0">
<tbody>
<tr>
<td colspan="2" align="center" valign="top">  <img src="http://www.sermonsonline/main/resources/EAID_02E91808_7D08_4723_BC39_16358BB0E285.png" alt="Select Payment Method Use Cases" title="Select Payment Method Use Cases"> </td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 1. Select Payment Method </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Customer edits the Billing section of their Sermons Online profile. This section shows:
<ul>
<li> A drop-down list of available payment methods: "Manual -- Pay by Check", or "Automatic -- Pay by Credit Card". </li>
<li> If the current payment method is Automatic, a message showing the name and last 4 digits of the card currently being used.. </li>
<li> A status message indicating whether the payment method has been confirmed. </li>
<li> A submit button for confirming a change in method </li>
<li> By default, the payment method is "Manual" and the confirmation status is "Unconfirmed". </li>
</ul>
</li>
<li> The Customer selects a payment method and then clicks on the submit button to confirm their choice. If confirming a manual payment, the Customer performs the Authorize Manual Payment use case. If confirming an automatic payment, the Customer performs the Authorize Automatic Payment use case. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 2. Authorize Automatic Payment </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Customer has chosen to make automatic payments and wants to confirm or update their credit card information. </li>
<li> The system presents a form with the information required to establish a recurring billing with the Payment Gateway. When the user submits the form the following steps are taken:
<ul>
<li> If the Customer's current payment method is "Manual", this is a new request to authorize payment, and a Sale transaction is sent to the Establish or Update Recurring Billing use case. </li>
<li> If the Customer's current payment method is "Automatic", this is a request to update the card information, and an Recurring Update transaction is sent to Establish or Update Recurring Billing use case. </li>
</ul>
</li>
<li> If the transaction response returned by the Payment Gateway is "Approved", the payment method is changed to "Automatic", the confirmation status is set to "Confirmed", the information is saved to disk, and the use case ends. </li>
<li> If the response is "Declined" then:
<ul>
<li> If the error code indicates that the card information may have been mis-entered, the Sermons Online payment authorization form will be re-presented with the suspect fields highlighted for correction. </li>
<li> If the error code indicates that there is some mis-configuration between Sermons Online and the Payment Gateway, the Customer is presented with a notice that payment authorizations cannot be processed at this time, and an alert workflow will be opened to forward the error information to Sermons Online technical support. </li>
</ul>
</li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 2.1 Establish or Update Recurring Billing </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when Sermons Online submits a Sale or Recurring Update transaction. The system processes the transaction request and responds with status information in text response format. </li>
<li> If the transaction is for a Sale transaction and is approved, then the Payment Gateway also sends a receipt of the transaction to the Customer. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 3. Authorize Manual Payment </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Customer chosen to make manual payments, and wishes to confirm their billing contact information. </li>
<li> The system presents a form with the information required to establish a manual payment. When the user submits the form the following steps are taken:
<ul>
<li> The system adds a workflow to do the Email Manual Payment Confirmation use case. </li>
<li> The system presents a message telling the Customer that an email has been sent to the billing point-of-contact. </li>
</ul>
</li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 3.1 Email Manual Payment Confirmation </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the workflow task to confirm a manual payment method has been triggered. </li>
<li> The system sends an email addressed to the billing point of contact of the customer, then ends. The email contains a link which will perform the Confirm Manual Payment use case. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 3.2 Confirm Manual Payment </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when a Customer has clicked on a link in an email sent to confirm a manual payment. The link contains the customer id as a parameter. </li>
<li> Upon receipt, the system validates that the passed customer's payment method is set to "Manual", and the current confirmation status is "Unconfirmed". If so, the confirmation status is changed to "Confirmed", the system presents a message informing the user that the payment method has been confirmed, and the use case ends. </li>
</ol>
</td>
</tr>
</tbody>
</table>
<p class="vspace">
<br clear="all"> </p>
<div class="vspace"> </div>
<h2>
<a name="toc5" id="toc5"> </a>
3. Processing Monthly Payments </h2>
<p> Processing of monthly payments is done by both Sermons Online and the Payment Gateway. </p>
<div class="vspace"> </div>
<h3>
<a name="toc6" id="toc6"> </a>
3.1. Sermons Online Processing </h3>
<p> On the first day of the month, a software agent on Sermons Online performs an audit of the disk space usage. Customers can manage the contents of their sermons archives manually, or they can define rules for how much disk space is to be used. The monthly audit evaluates the rules to remove expired sermons, calculates the amount of disk space being used, then posts charges. <br> <br> For Manual payment customers, the software agent sends an email invoice to the billing point-of-contact. The customer follows the instructions in the email to write a check and mail it back to Sermons Online, where it is manually processed. </p>
<p class="vspace"> For Automatic payment customers, the software agent makes sure that the Payment Gateway's recurring billing system is properly configured to settle the total amount due. Since fees are charged in units of 1GB, the amount due each month will likely change only once a year (1GB of disk space is enough to host a year's worth of audio files.) </p>
<div class="vspace"> </div>
<h3>
<a name="toc7" id="toc7"> </a>
3.2. Payment Gateway Processing </h3>
<p> On the second day of the month, a sofware agent on the Payment Gateway performs a Recurring Sale transaction, and sends a report back to Sermons Online. Sermons Online uses the report to automatically clear the customer's charges. </p>
<p class="vspace"> In general, errors encountered during monthly processing are escalated to the Sermons Online billing staff for resolution. </p>
<p class="vspace"> The use cases involved in processing monthly payments are as follows: </p>
<div class="vspace"> </div>
<table border="1" cellpadding="10" cellspacing="0">
<tbody>
<tr>
<td colspan="2" align="center" valign="top">  <img src="http://www.sermonsonline/main/resources/EAID_CEFF25B8_D40F_45a7_AF8F_80DA448AD789.png" alt="Monthly Billing Use Cases" title="Monthly Billing Use Cases"> </td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 1. Audit Usage and Post Charges </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Usage Audit Agent performs its monthly processing of Sermons Online billing. </li>
<li> The system calculates an invoice date as being the first day of the current month. </li>
<li> The system selects all customers with a customer status of "Active" or "Evaluating", and for each customer, it performs the following steps:
<ul>
<li> If the customer status is "Evaluating", the system books a "free trial" transaction and the next customer is processed. </li>
<li> If an invoice has already been booked for the customer for the invoice date, the billing transaction is skipped and the next customer is processed. </li>
<li> The system removes all expired sermons (sermons in Inactive or Pending status for 1 month or longer) and their associated media files. </li>
<li> The system calculates the disk space used by the customer's sermon media files. </li>
<li> If the customer is not using any diskspace, or if the customer has a billing type of "nocharge", the billing transaction is skipped and the next customer is processed. </li>
<li> If the customer has enabled auto-deletion, the system changes the status of all auto-deletion candidates to "inactive", so they will be removed in next month's billing cycle. </li>
</ul>
</li>
<li> At this point in the flow, we have an active customer, with active content, who should be billed. The system books charges for the current month's usage into the Sermons Online accounting system, applying any discounts which may apply. The transaction will use the following data values:
<ul>
<li> item id: 200:001, "Sermons Hosting" </li>
<li> vendor id: 4, "Billing Agent" </li>
<li> date: invoice date </li>
</ul>
</li>
<li> If the customer's payment method is "Manual", then the system performs the Email Billing Statement use case and the next customer is processed. </li>
<li> If the customer's payment method is "Automatic" and the total amount due is equal to the customer's recurring billing amount, then the next customer is processed. </li>
<li> If the total amount due is not equal to the recurring billing amount, system sends an Update Recurring transaction request to the Payment Gateway to update the recurring billing amount to cover the amount due. </li>
<li> If the transaction response returned by the Payment Gateway is "Approved", the next customer is processed.. </li>
<li> If the response is "Declined" then the system adds an alert workflow to forward the failed transaction details to Sermons Online technical support and the next customer is processed. </li>
<li> Once all customers have been processed, the use case ends.. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 1.1. Update Recurring Billing Amount </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when Sermons Online submits a Recurring Update transaction. The system processes the transaction request, responds with status information in text response format, and the use case ends. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 1.2. Email Billing Statement </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the workflow task to email a customer's billing statement has been triggered. </li>
<li> The workflow system retrieves the customer's current charges from the Sermons Online accounting system, and sends an email notice to the billing point of contact. </li>
<li> The use case ends. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 2. Post Automatic Payment </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Recurring Billing Software Agent performs its monthly processing of recurring billing for Sermons Online customers. All Sermons Online customers are configured to make payments on the second day of the month. </li>
<li> For each Sermons Online customer, the system:
<ul>
<li> Retrieves the recurring billing details and credit card payment information. </li>
<li> Makes a Sale transaction on behalf of Sermons Online </li>
<li> Reports the result of the transaction to the Sermons Online Accept Automatic Payment use case. The report must include the following information: Sermons Online customer id, transaction identifier, transaction date, transaction amount, and a transaction status of "Approved" or "Declined". </li>
<li> If the transaction status is "Approved", the system performs the Email Automatic Payment Receipt use case. </li>
</ul>
</li>
<li> Once all Sermons Online customers have been processed, the use case ends. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 2.1. Accept Automatic Payment </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Payment Gateway posts a recurring billing payment for a Sermons Online customer. </li>
<li> The system receives a recurring billing payment notice from the Payment Gateway. The payment notice will include the Sermons Online customer identifier, a payment amount, and a payment date. </li>
<li> The Sermons Online system will calculate the invoice date as being the first day of the month in which the recurring payment was made. </li>
<li> The Sermons Online system will select all accounting transactions that match the following criteria, and calculate the total amount.
<ul>
<li> item id = 200:01 </li>
<li> vendor id = 4 </li>
<li> date=invoice date </li>
</ul>
</li>
<li> If the total amount of the selected transactions is equal to the payment amount reported by the Payment Gateway, then the payment is used to clear the transactions, and the use case ends. </li>
<li> If the total amount does not equal the payment amount, the system opens an alert workflow to forward the payment details to Sermons Online Billing, and the use case ends. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 2.2. Email Automatic Payment Receipt </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when the Payment Gateway has made a sucessful recurring billing transaction using the Sermons Online customer's credit card. </li>
<li> The system sends an email receipt to the Sermons Online customer's billing point of contact, and the use case ends. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 3. Mail Check to Sermons Online Billing </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when a Manual Payment Customer receives a billing statement email sent by the Email Billing Statement use case. </li>
<li> The customer follows the payment instructions included in the Billing Statement, writes a check, and mails it to Sermons Online billing. </li>
</ol>
</td>
</tr>
<tr>
<td valign="top" width="20%">
<strong> 3.1. Accept Manual Payment </strong>
</td>
<td valign="top">
<ol>
<li> The use case begins when a payment for a Sermons Online invoice is received in the mail. </li>
<li> The Sermons Online Billing actor finds the Sermons Online transactions to apply the payment to, and clears them. Any partial/remaining payment amounts are entered as credit transactions. </li>
<li> The Billing actor deposits the check. </li>
<li> The use case ends. </li>
</ol>
</td>
</tr>
</tbody>
</table>
<div class="vspace"> </div>
</div>
December 18, 2006, at 09:23 PM EST by Dave Marney - Added document
Added line 1:
abc