Dynamic Recurring Billing allows you to vary your pricing on a daily basis for trial and subscription products. You can offer one subscription package to some consumers, and a different package to others. For example, Consumer A can be billed $3.50 for 4 days, recurring at $28.95 every 30 days; while Consumer B is charged $5 for 7 days, recurring at $34.95 every 30 days. You choose what is charged in each case. To set it up, contact SegPay tech support.
There are three components involved in dynamic recurring billing, which your SegPay rep will discuss with you:
1. Create a price point: specify minimum/maximum ranges for the initial and recurring charges; and initial and recurring length (number of days) of your subscription periods.
2. Set up an API call at checkout: Determine as many different pricing offers as you want, within the ranges you defined in step 1, and set up an API call at checkout to notify SegPay on the fly of the specific pricing and subscription length to assign to the consumer signing up.
3. Dynamically construct a Join link: SegPay will respond to your API call with an encrypted value, which you will drop into the Join link to ensure the customer is sent to the payment page with the correct billing info.
Price Point
Your SegPay rep will create a Dynamic Recurring Billing price point. You’ll be asked to define the ranges for both the initial trial price and length, and recurring price and length. Use the example values in the following table as a guide:
|
Minimum |
Maximum |
Initial Price |
2.95 |
100.00 |
Initial Length |
3 days |
30 days |
Recurring Price |
19.95 |
49.95 |
Recurring Length |
30 days |
60 days |
You’ll be able to request any subscription pricing within these ranges. When you make your pricing request – via an API call discussed in the next section – SegPay’s system will validate that the pricing you requested is within these approved ranges.
Once the price point is created, SegPay will add it to a package, associating the new price point with a specific website and set of postback notifications, which you can use for all dynamic recurring pricing. Ask your SegPay rep if you are eligible to add Dynamic Multi Currency (DMC) to the payment package, to allow consumers the option of paying in their local currency.
API Call
The next step in using dynamic recurring billing is to set up a call to SegPay Reporting Services (SRS), which is triggered during member sign-up and sends SegPay the pricing information you choose for that member. If you don’t already have a User ID and Access Key for SRS, ask your SegPay Account Manager to provide them. Now you can set up your call using the following URL:
The parameters required for this call are defined as follows:
Parameter |
Definition |
MerchantID |
Your SegPay Merchant ID, which you can get from your SegPay rep, or in the Merchant Portal at sa.segpay.com, under Merchant Setup, Merchant Management, Merchant Information. |
InitialAmount |
The amount you want to charge the consumer for the initial trial period. No need to specify currency. |
InitialLength |
The length, in days, of the consumer’s first billing period. |
RecurringAmount |
The recurring amount to charge the consumer after the first billing period ends. |
RecurringLength |
The length, in days, of the consumer’s recurring subscription period. |
When you make the above request, you will be prompted for a Username and Password to authenticate (this is the SRS User ID and Access Key).
After you provide these credentials, an encrypted hashed value will be returned, that looks something like this: 4940196f-10ed-4264-96ec-0a576f142c5a.
Store that value with the record for this purchase, and populate it in the Join Link used to send the member to the payment page, as discussed in the next section.
You may receive one of the following error messages, instead of the encrypted value:
- The initial price is outside your approved limits.
- The initial length is outside your approved limits.
- The recurring price is outside your approved limits.
- The recurring length is outside your approved limits.
Join Links
Get your Join link(s) from your SegPay rep, or in the Merchant Portal under Merchant Management, Packages (select a package and copy the Button Code). The base Join link will look like this:
https://secure2.segpay.com/billing/poset.cgi?
You will pass two required parameters in your Dynamic Recurring Billing Join link:
Parameters |
Definition |
Eticketid |
A concatenation of your dynamic recurring billing package ID and price point ID (format XXXXXX:YYYYY, where XXXXXX=package ID and YYYYY=price point ID). Get these values from your SegPay rep, or in the Merchant Portal under Merchant Management, Packages (Package ID) and Merchant Management, Price Points (Price Point ID). |
DynamicPricingID |
The encrypted value returned when you made your API call (see previous section). Create a script, for example using JavaScript or PHP, to populate this parameter with the returned value. |
Example of Join Link for dynamic recurring billing, with parameters:
That link will send your consumer to the payment page with the correct subscription pricing.