PayU | Installments

1 PayU | Installments

1.1 Introduction

Basic information

  • PayU | Installments are available for merchants free of charge.
  • PayU | Installments are available for shopping carts worth PLN 300 to PLN 20,000.
  • The service can be integrated via OpenPayU (REST API) or NewPayment (Classic API) protocol.
  • The value of payMethod(OpenPayU) or pay_type(NewPayment) parameter is "ai".
  • PayU | Installments can be configured in the Management Panel.

Service description

These guidelines aim to present ways of implementing PayU | Installments in an e-shop. The document is mainly dedicated to developers.

The procedure of processing payments in the PayU | Installments service in an e-shop consists of two stages.

  1. A buyer places an order on an e-shop webpage.
  2. PayU confirms that the payment has been settled correctly.

First stage. A buyer places an order.

The process has been showcased on the diagram below.

  1. Buyer clicks on a button that represents PayU | Installments.
  2. If payMethod/pay_type=ai, name and surname are not stated,PayU system presents an order summary webpage, where the buyer confirms the payment.
  3. PayU system redirects the Buyer to the website of a loan partner.
  4. Buyer performs actions required by the loan partner, e.g. accepts an offer or makes a verification transfer.
  5. Loan partner confirms to PayU that it has processed the payment and redirects the buyer back to the PayU website.
  6. At this stage, a transaction may receive one of three statuses depending on the loan partner's decision or ability to consider the installments request:
    1. If the loan partner is not able to verify all the details of or process the loan request right away, the transaction status is set to PENDING. The buyer is then redirected to a PayU webpage, which contains information that the request has received the PENDING status and a button to return to the shop.
    2. If a loan has not been granted or the loan partner is not able to process the loan request, the transaction status is set to FAIL, and the buyer is redirected to a page indicated in the shop configuration as a negative URL.
    3. Once the loan request has been considered and the loan has been granted, the transaction status is set to SUCCESS and the buyer is redirected to a page indicated in the shop configuration as a positive.
  7. PayU system redirects the buyer to a page in the seller’s system, which informs the buyer that the order has been placed successfully.
Once the transaction has been confirmed manually (or automatically collected), the buyer is informed about the outcome of loan request processing.

Second stage (optional). Payment settlement.

  1. PayU system notifies the seller’s system that a status of the payment order has changed.
  2. Seller’s system confirms receiving the notification.

1.2 Integration of PayU Installments

In this section, described examples are in OpenPayU protocol, Raty PayU are also available in Classic API protocol.

Example of inegration via form. OpenPayU protocol:

                <form method="POST" action="https://secure.payu.com/api/v2_1/orders">
                    <input type="hidden" name="customerIp" value="123.123.123.123">
                    <input type="hidden" name="merchantPosId" value="145227">
                    <input type="hidden" name="description" value="Order description">
                    <input type="hidden" name="totalAmount" value="99900">
                    <input type="hidden" name="currencyCode" value="PLN">
                    <input type="hidden" name="products[0].name" value="Notebook">
                    <input type="hidden" name="products[0].unitPrice" value="99900">
                    <input type="hidden" name="products[0].quantity" value="1">
                    <input type="hidden" name="notifyUrl" value="http://shop.url/notify" >
                    <input type="hidden" name="continueUrl" value="http://shop.url/continue" >   
                    <input type="hidden" name="payMethods.payMethod.type"  value="PBL" > 
                    <input type="hidden" name="payMethods.payMethod.value" value="ai" >                                 
                    <input type="hidden" name="OpenPayu-Signature" type="hidden" value="sender=145227;algorithm=SHA-256;signature=a9d91ae1f3fc26aba5b9600ffeb734e6c5fcd6346eb3f9dc5e43d8b29c04d2e8">
                    <button type="submit" formtarget="_blank">PayU</button>
                </form>
            

POS used in the example does not have installments switched on. Therefore Buyer won't be redirected to aplication form, PayU syatem presents summary page. More information about form parameters described in: Creating a new order.

Order example via REST API with one product, basic Buyer data and extOrderId:

curl -v -X POST https://secure.payu.com/api/v2_1/orders \
-H "Content-Type: application/json" \
-H "Authorization: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd" \
-d '{
    "notifyUrl": "https://your.eshop.com/notify",
    "customerIp": "127.0.0.1",
    "merchantPosId": "145227",
    "description": "RTV market",
    "currencyCode": "PLN",
    "totalAmount": "99900",
    "extOrderId":"[generateExtOrderId]",
    "buyer": {
         "email": "jan.kowalski@example.com",
         "phone": "654111654",
         "firstName": "Jan",
         "lastName": "Kowalski"
     },
     "payMethods":{
         "payMethod":{
              "type":"PBL",
              "value":"ai"
          }
     },
     "products": [
          {
               "name": "Laptop",
               "unitPrice": "99900",
               "quantity": "1"
          }
      ]
}'
                
Authentication methods are described in: Signing API calls parameters.

POS used in the example does not have installments switched on. Therefore Buyer won't be redirected to aplication form, PayU syatem presents summary page. More information about REST API parameters described in: Creating a new order.

Style the form to have the PayU | Installments well identified.

<style type="text/css">
form[name="payform"] input[type="submit"] {
    border: 0px;
    height: 35px;
    width: 100px;
    background: url('http://static.payu.com/pl/standard/partners/raty_payu/raty_small.png');
    cursor: pointer;
}
</style>
                    

Save changes in the file and reload the page in your browser.

1.3 Automatic collection

PayU makes it possible to enable or disable the automatic receipt in a POS.

Automatic collection enabled

If Automatic collection has been enabled, transactions are processed automatically, without manual confirmation.

Automatic collection disabled

If Automatic collection has been disabled, transactions are processed only after they have been manually confirmed.

Manual transaction confirmation

To manually confirm a transaction in the Management Panel when Automatic collection is disabled:

  1. Go to the Management Panel.
  2. Go to Transactions > List of transactions .
  3. In the Status field, select Waiting for collection. Optionally, set other search parameters.
  4. Click on Show.
  5. To confirm the transaction, in the Action column, click on Collect.
  6. Check if data is correct and click on OK.

Information about transaction support via API is available in the Information exchange.

Configuring Automatic collection

Automatic collection can be configured as other standard payment methods.

2 PayU | Installments - best practice

2.1 Introduction

The goal of each e-business is to present a comprehensive and innovative offer to customers. By introducing PayU | Installments, a shop may achieve this goal by presenting information on the new service in a simple and clear way.

This section describes a manner of introducing the following elements:

  1. elements building graphic identification, such as buttons or static banners,
  2. mini-installment
  3. calculator.

The above elements help enjoy the following benefits:

  1. professional approach to e-shop customers;
  2. relevant amount of information about shopping on installments;
  3. keeping customers interested, thus increasing the number of successful transactions;
  4. allowing customers to make quick payments;
  5. encouraging satisfied customers to return to the e-shop.

2.2 Graphic identification

Sign “Here you can pay via PayU | Installments”

In order to inform a customer that you offer shopping on installments, we recommend adding the “Here you can pay via PayU | Installments” button on the main page or on other e-shop pages

A customer who clicks on the button is redirected to the PayU Installments information page.

To produce this effect on your shop website, enter the following code:

<a href="http://www.payu.pl/en/payu-installments-for-business">
    <img src="http://static.payu.com/pl/standard/partners/raty_payu/tu_kupisz_na_raty_payu_blue.png" />
</a>
            

Other graphic versions are available here.

Transaction button

To draw your customer’s attention to quick installment shopping, use the following button

To produce this effect on your shop website, style the form button using the following code between the <head> tags:

<style type="text/css">
form[name="payform"] input[type="submit"] {
    border: 0px;
    height: 35px;
    width: 100px;
    background: url('http://static.payu.com/pl/standard/partners/raty_payu/raty_small.png');
    cursor: pointer;
}
</style>
            

Other graphic versions are available here.

Static banners

We have also designed static graphical ads which you can use to inform customers that PayU | Installments are available in your shop.

Other graphic versions are available here.

2.3 Calculator-type element

The calculator of PayU Installments allows for a convenient analysis of options of repaying the installments. A customer adjusts the value and the number of installments using bars, thus receiving an installment rate. It is possible to include insurance when calculating the installment rate.

Step 1

Open a website source code.

Step 2

Paste the following script in the <head> section.

Example
<script src="https://static.payu.com/res/v2/jquery-1.7.2.js"></script>
<script src="https://static.payu.com/res/v2/jquery-ui-1.7.2.min.js"></script> 
<script src="https://static.payu.com/res/v2/jquery.i18n.js"></script>
<script src="https://static.payu.com/res/v2/jsrender.js"></script>
<script src="https://static.payu.com/res/v2/openpayu-2.0.js"></script>
<script src="https://static.payu.com/res/v2/widget-installments-2.0.js"></script> 
<link href="https://static.payu.com/res/v2/layout/style.css" rel="stylesheet">
                    

Step 3

Paste the following code in the <body> section. This element will feature a 440x639px calculator.

Example
<div id="installment-calc"></div> 
<script type="text/javascript">
  var openpayu = openpayu || {};
  openpayu.options = openpayu.options || {}; 
  OpenPayU.Installments.calculator('#installment-calc');
</script>
                    

Step 4

Save changes.

Step 5

Refresh the website in your browser.

Parameters available in the panel
Parameter Default value Required Description
interestRate 13 no The value must comply with an agreement signed by the shop and PayU.
installmentAmount 3 no Number of installments in the range 3 to 36.
installmentMinAmount 3 no Minimum number of installments.
installmentMaxAmount 36 no Maximum number of installments.
creditMinAmount 300 no Lowest purchase value.
creditMaxAmount 20000 no The highest purchase value.
creditAmount 300 no Purchase value in the range PLN 300 to PLN 20,000.
currencySign PLN no Currency
lang blue no Language used in the component. Available values: en, pl.
If you cannot see any changes despite refreshing the page, try to clear cache.

2.4 Mini installment-type element

In order to inform a customer about the lowest installment for a given product, we recommend adding a mini-installment object next to products on their lists.

Step 1

Open a website source code.

Step 2

Paste the following script in the <head> section.

Example
<script src="https://static.payu.com/res/v2/jquery-1.7.2.js"></script>
<script src="https://static.payu.com/res/v2/jquery-ui-1.7.2.min.js"></script> 
<script src="https://static.payu.com/res/v2/jquery.i18n.js"></script>
<script src="https://static.payu.com/res/v2/jsrender.js"></script>
<script src="https://static.payu.com/res/v2/openpayu-2.0.js"></script>
<script src="https://static.payu.com/res/v2/widget-installments-2.0.js"></script> 
<link href="https://static.payu.com/res/v2/layout/style.css" rel="stylesheet">
                    

Step 3

Paste the following code in the <body> section. This element will feature a 440x639px calculator.

Example
<p>rata już od: <span id="installment-mini"></span> miesięcznie</p> 
<script type="text/javascript">
  var openpayu = openpayu || {};
  openpayu.options = {}; 
  OpenPayU.Installments.miniInstallment('#installment-mini');
</script>
                    

Step 4

Save changes.

Step 5

Refresh the website in your browser.

Parameters available in the panel.
Parameter Default value Required Description
interestRate 13 no Interest rate The value must comply with an agreement signed by the shop and PayU.
installmentMaxAmount 36 no Maximum number of installments.
creditMinAmount 300 yes Purchase value.
currencySign PLN no Currency
If you cannot see any changes despite refreshing the page, try to clear cache.