Payment URL

Payment URL is a functionality that allows you to provide a link to your customers (e.g. in an email invoice, WhatsApp message, SMS, etc. which then takes the customer to a Fiserv-hosted page to securely make the payment with their preferred payment method, whenever convenient for them.

This is especially useful in scenarios where goods get paid after delivery, where no goods get shipped at all (e.g. final payment for trips that have been booked months ago) or for the payment of monthly bills.

You can also implement this functionality for unsuccessful purchases where the original payment transaction has been declined so that you can proactively give your customer a second chance to make their purchase.

The Gateway provides:

  • The capability to request a Payment URL (link) for a specific amount through this Web Service API
  • A hosted result page that tells the customer if the payment was successful or not, including a Retry button where the customer can chose a different payment method in case the transaction was not successful
  • Support for the specific fields that are required for Visa transactions with MCC 6012 in the UK

Payment URL creation

The request for a Payment URL includes transaction type, amount and currency as well as the language that shall be used on the payment page that will be shown to the customer after accessing the URL.

The URL request stays valid for 182 days (182 24 3600 seconds) + 1 day (on which the URL was generated).
A merchant can override these settings by setting Expiration element to desired value, which is an expiration date in unix timestamp (in seconds, while the Gateway calculates it in milliseconds), this value shall be calculated by a merchant himself.

<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Header/>
    <SOAP-ENV:Body>
        <ns5:IPGApiActionRequest 
xmlns:ns5="http://ipg-online.com/ipgapi/schemas/ipgapi" 
xmlns:ns2="http://ipg-online.com/ipgapi/schemas/a1" 
xmlns:ns3="http://ipg-online.com/ipgapi/schemas/v1"> 
            <ns2:Action>
                <ns2:CreatePaymentURL>
                    <ns2:Transaction>
                        <ns3:PaymentUrlTxType>
                            <ns3:StoreId>120995000</ns3:StoreId>
                            <ns3:Type>sale</ns3:Type>
                        </ns3:PaymentUrlTxType>
                        <ns3:Payment>
                            <ns3:ChargeTotal>13.99</ns3:ChargeTotal>
                            <ns3:Currency>EUR</ns3:Currency>
                        </ns3:Payment>
                        <ns3:TransactionDetails/>
                        <ns3:ClientLocale>
                            <ns3:Language>en</ns3:Language>
                            <ns3:Country>GB</ns3:Country>
                        </ns3:ClientLocale>                 
                	</ns2:Transaction>
                </ns2:CreatePaymentURL>
            </ns2:Action>
        </ns5:IPGApiActionRequest>
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Header/>
    <SOAP-ENV:Body>
        <ipgapi:IPGApiActionResponse 
xmlns:ipgapi="http://ipg-online.com/ipgapi/schemas/ipgapi" 
xmlns:a1="http://ipg-online.com/ipgapi/schemas/a1" 
xmlns:v1="http://ipg-online.com/ipgapi/schemas/v1">
            <ipgapi:successfully>true</ipgapi:successfully>
		<ipgapi:OrderId>A-a22cd17f-0e50-4541-9404-159aa62815f0</ipgapi:OrderId>
		<ipgapi:TransactionId>88963651</ipgapi:TransactionId>
            <ipgapi:paymentUrl>https://test.ipg-online.com/connect/gateway/processing?storename=120995000&amp;oid=A-6d6f02ee-1020-4935-a8fd-e8d34e0ace03&amp;paymentUrlId=efc0d59b-7128-4d36-ba7d-0f7b642fd9ea</ipgapi:paymentUrl>
        </ipgapi:IPGApiActionResponse>
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Payment URL Deletion

For cases, when you need to prevent your customers to make a payment twice, you can use DeletePaymentURL feature.

<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Header/>
    <SOAP-ENV:Body>
        <ns5:IPGApiActionRequest 
xmlns:ns5="http://ipg-online.com/ipgapi/schemas/ipgapi" 
xmlns:ns2="http://ipg-online.com/ipgapi/schemas/a1" 
xmlns:ns3="http://ipg-online.com/ipgapi/schemas/v1">
						  <ns2:Action>
                <ns2:DeletePaymentURL>
                  <ns2:StoreId>120995000</ns2:StoreId>
                     <ns2:PaymentUrlID>e2fd0144-7644-4a5e-9e72-71cfa14c37ff</ns2:PaymentUrlID>
                </ns2:DeletePaymentURL>
            	</ns2:Action>
        </ns5:IPGApiActionRequest>
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

When processing a Payment URL an additional check ensures the Payment URL has not been voided, and if it has, the URL will lead the customer to a screen that explains that the URL is no longer valid.

Payment URL Custom Text

For cases where you would like to add a free text to be shown above the payment options on the page that the consumer will see when going to the URL for making the payment, you can submit an element hostedPaymentPageText in your request to our Gateway:

<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Header/>
    <SOAP-ENV:Body>
        <ns5:IPGApiActionRequest 
xmlns:ns5="http://ipg-online.com/ipgapi/schemas/ipgapi" 
xmlns:ns2="http://ipg-online.com/ipgapi/schemas/a1" 
xmlns:ns3="http://ipg-online.com/ipgapi/schemas/v1">
<ns2:Action>
			<ns2:CreatePaymentURL>
					<ns2:Transaction>
							<ns3:PaymentUrlTxType>
									<ns3:StoreId>120995000</ns3:StoreId>
									<ns3:Type>sale</ns3:Type>
							</ns3:PaymentUrlTxType>
							<ns3:Payment>
									<ns3:Currency>EUR</ns3:Currency>
							</ns3:Payment>
							<ns3:TransactionDetails/>
									<ns3:ClientLocale>
											<ns3:Language>en</ns3:Language>
											<ns3:Country>GB</ns3:Country>
									</ns3:ClientLocale>
					</ns2:Transaction>
					<ns2:hostedPaymentPageText>This is a sample text</ns2:hostedPaymentPageText>
		</ns2:CreatePaymentURL>
</ns2:Action>


Want a quick overview?