Dynamic Pricing

Introduction

Dynamic Pricing allows you to vary your pricing for a given product or service, charging a consumer any price at signup, within a pre-determined range. Dynamic Pricing is also required if you use one of the open-source shopping cart plugins that integrates with SegPay. When consumers select multiple items at once for purchase, this ensures that they are charged the correct amount on the payment page.

It works like this: when your member clicks to submit payment, you make a call to SegPay’s SRS service, sending the amount to be charged. An encrypted hashed value is returned, which you will append to the Join link, which then takes the member to the payment page. All of this happens instantaneously, in the background.

Following are instructions for how to create a price point for Dynamic Pricing, construct the Join link, and capture data about dynamic transactions after they are processed.

Setup

Step 1 is to contact SegPay tech support and ask to set up Dynamic pricing. Once approved by SegPay’s compliance team, you will be asked for minimum and maximum amounts for these transactions. That information is used to create the price point along with one or more payment packages (each assigning the price point to one of your websites and post-back configurations).

Join Link Construction

You will be given one Join link for each of your payment packages that use dynamic pricing. Each link will look similar to the following example:

EXAMPLE JOIN LINK

http://secure2.segpay.com/billing/poset.cgi?x-eticketid=110530:3773&amount=19.95&dynamictrans=gX35hP2NARVWRDtv95vWWymKqcY=&dynamicdesc=DYNAMIC+PRICE+POINT+TEST+EUR+ALL+Zeros

The following parameters are required for this request:

Parameter

Definition

ETICKETID

A concatenation of your dynamic pricing 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).

AMOUNT

The amount you want to charge the consumer for the particular transaction. No need to specify currency here, since that will come from the price point.

DYNAMICDESC

A description of the transaction, to be displayed in the email receipt and shared with our support reps to help them assist customers. This string should be URL encoded, as in this example:

Video+Bundle+for+2+Movies+Movie1+and+Movie2

DYNAMICTRANS

The encrypted hashed value that is returned when you make a call to SegPay’s SRS system and send the amount to be charged.

Your SegPay rep will explain how to make the call to SRS and generate this encrypted value. You can create a script to populate this parameter using the returned value. This represents the amount to be charged, and must match what you pass in the amount parameter or the transaction will fail (this also prevents someone from manually editing the URL and adding a different amount).

All other system and user-defined variables can be appended to the Join link as well. For more information about passing and returning variables, please see the following documentation: 

http://support.segpay.com/kb/article/32-segpays-processing-api-for-merchants

Postback and Reporting

No changes are necessary to your existing postback and reporting setup, as long as you include the price variable in your postback. This ensures that you identify the specific price for each transaction, since they will all be different. The variables for initial and recurring amounts (ival and rval) will not be indicative of the price for the transaction. The amounts populated for these variables in the postback will reflect the minimum and maximum dynamic amounts allowed, respectively.