Amount Verification

Amount Verification is a fraud prevention tool that verifies a customer's identity by placing a temporary hold of a small, random amount to their credit card. The customer must verify the exact amount from their statement before completing the purchase.

Key Benefits:

  • Confirms customer has access to the actual credit card

  • Reduces fraudulent transactions and chargebacks

  • No charge to customers (authorization is voided)

What You'll Accomplish:

This guide explains what you need to set up Amount Verification to create a secure verification flow for your customers.

Prerequisites

Before you can start using Amount Verification, contact techsupport@segpay.com to request approval for the following requirements:

Requirement Purpose
Dynamic Pricing Allows you to create a dynamic price point with a specified price range. The verification charge amount is dynamically assigned within this range
Pre-Auth Only Ensures customers are not actually billed for the verification (voided next day)
SRS User ID & Access Key Necessary credentials for requesting the Dynamic Pricing ID

All three approvals are required before you can implement Amount Verification.

Setting Up Amount Verification

Step 1: Create Dynamic Price Point for Amount Verification

Prerequisite: Your account must be approved for Dynamic Pricing

  1. Log into the Merchant Portal: https://mp.segpay.com/

  2. Navigate to My Websites > Price Points

  3. Click Add Price Points button.

  4. Enter a descriptive name for your Price Point in the Description field (optional).

  5. Choose "Dynamic Pricing" as the Price Point Type.

  6. Choose one of the User Info Settings to configure how consumer login information is collected on Segpay's payment page:

    • Do Not Collect Username: The consumer's login username will not be collected during the payment process.
    • Collect Username: The consumer's login username will be collected during the payment process.

    • Email Address as Username: The consumer's email address will be used as their username.

      Contact Segpay Technical Support at techsupport@segpay.com if you choose one of these settings:

      • Collect Username

      • Email Address as Username

      Segpay does not store consumer passwords in its systems.

  7. Select "Amount Verification" checkbox.

  8. Select Currency (if you have more than one option available).

  9. Set price range (required):

    • Minimum Amount Allowed: Lowest verification amount charge

    • Maximum Amount Allowed: Highest verification amount charge

  10. Click Save.

 

Step 2: Add Price Point to Package & Get Join Link

  1. Log into the Segpay Merchant Portal: https://mp.segpay.com/

  2. Navigate to My Websites > Manage Packages

  3. Select the Package to Edit: Click the package ID or Edit

  4. On the Package tab, make sure Auth Only is checked if you are using Amount Verification.

  5. Click the Pricing tab

  6. Select the Amount Verification price point you created.

  7. Click Save to enable the price point for that package.

  8. Click Get my button code to access the join link.

 

Example Join Link

https://secure2.segpay.com/billing/poset.cgi?x-eticketid=206032:35170

This join link will be modified with additional parameters in the next steps.

Step 3: Request Dynamic Pricing ID

For each customer verification, make an API request to obtain a unique pricing GUID.

Use the API Endpoint:

API Endpoint

https://srs.segpay.com/MerchantServices/DynamicPricing/

Add Required Parameters:

Parameter Description Example
merchantID Your Segpay Merchant ID 21798
amount Verification Amount to charge (within you specified price range) 1.00

Make the Request:

Complete Request Example

https://srs.segpay.com/MerchantServices/DynamicPricing/?merchantId=21798&amount=1.00

Authenticate Your Request:

  • Authentication Method: HTTP Basic Authentication

  • Required Credentials:

    • User ID: Your Merchant Services/SRS User ID

    • Access Key: Your Merchant Services/SRS Access Key

  • Authentication Header:

    Authorization: Basic {base64-encoded UserID:AccessKey}

To obtain credentials, contact techsupport@segpay.com. Store credentials securely.

Receive the Response:

The API returns a pricing GUID (Global Unique Identifier):

Example GUID

8fab361c-9640-456e-9443-a53dc0ab222e

Step 4: Construct Join Link with Parameters

Append required parameters to your join link.

Parameter Description Format Example
eticketid Package (XXXXXX) and Price Point (YYYYY) IDs XXXXXX:YYYYY 206032:35170
dynamicpricingid Pricing GUID from API response GUID format 8fab361c-9640-456e-9443-a53dc0ab222e
dynamicdesc Transaction Description (URL-encoded) URL-encoded string Verification+Payment+for+movie

Complete Join Link Example

https://secure2.segpay.com/billing/poset.cgi?x-eticketid=206032:35170&dynamicpricingid=8fab361c-9640-456e-9443-a53dc0ab222e&dynamicdesc=Verification+Payment+for+movie

Additional Optional Parameters:

You can append any standard Segpay system or custom variables. See Processing API documentation for complete list.

Step 5: Direct Customer to Payment Page

Once Join Link is constructed, redirect customer to Segpay payment page via:

  • Server-Side Redirect: Best for secure implementations where join link construction happens on server.

  • Client-Side Redirect: Use when redirecting from client-side JavaScript.

  • HTML Link: Use for manual testing .

Segpay Payment Page Example:

The consumer won't see the verification amount anywhere on the payment page—not even in the page source. They must retrieve the amount from their credit card account to verify themselves.

Customer Verification Process

What Happens Next

After directing customers to the Segpay payment page:

  1. Customer Submits Payment Information

    • Authorization placed on customer's card

    • Amount is NOT displayed (hidden from customer)

    • Authorization appears in customer's account

  2. Customer Checks Account

    • Sees random amount (e.g., $3.00, $1.85, 16.03 NOK)

    • Timing varies by bank (immediate to 24 hours)

  3. Customer Returns to Your Site

    • You must create a verification page where customer enters amount

    • Your system validates entered amount against postback data

  4. Authorization Voided

    • Occurs next day automatically

    • No actual charge to customer

Postbacks

When a customer completes authorization on the Segpay payment page, Segpay sends transaction data—including the verification amount—to your server via postback. All default postback configurations include the necessary variables for Amount Verification.

Using Custom Postbacks

If you're using a custom postback configuration (not the default), ensure you include two required variables to support Amount Verification with multicurrency:

Parameter Description Example Use Case
authprice Transaction amount in base currency 1.85 Customer verifies in USD
authcurrency Currency code used for transaction based on the consumer's selection NOK Customer verifies in local currency

Including both parameters allows your system to validate against either value. For example, customers may enter a verification amount in either:

  • Base currency (e.g., $1.85 USD)

  • Converted currency (e.g., 16.03 NOK)

Amount Verification Postback Results

When an Amount Verification transaction occurs, Segpay sends your server a postback with transaction details. This postback contains the information your system needs to validate the customer's verification amount.

Key Fields to Use for Validation:

  • authprice: The base currency amount Segpay authorized (e.g., 1.00)

  • authcurrency: The currency code used for the consumer's transaction (e.g., NOK, USD)

Example Postback Data

Segpay will send HTTP GET or POST data to your configured endpoint, such as:

How to Use the Postback Data

  • Step 1: When you receive the postback, extract and store authprice and authcurrency linked to the transaction.

  • Step 2: When the customer returns to verify, check if the entered amount matches either the stored authprice (base currency) or its value in the stored authcurrency.

  • Step 3: Only grant access or allow the purchase to proceed if the amount matches.