Info |
---|
This page serves as a supplementary guide for integrating Real-Time Recurring Credit Card transaction payment into the redirect payment flow and is to be read in conjunction with the PayU Redirect integration documentation. |
...
Merchants will need to make the following amendments to the normal setTransaction API call in order to do Real-Time Recurring Credit Card transactions with and without tokens on the PayU platform.
- AuthenticationType Secure3d= TOKENTRUE/FALSE
- storePaymentMethod SupportedPaymentMethods= TRUE CREDITCARD_TOKEN
merchantUserId = Identifying value at merchant
Customfield
key = processingType
- value = REAL_TIME_RECURRING
...
Code Block | ||||
---|---|---|---|---|
| ||||
<AuthenticationType>TOKEN<<Secure3d>true</AuthenticationType> Â <AdditionalInformation> <storePaymentMethod>true</storePaymentMethod> </AdditionalInformation> Â <Customer> <merchantUserId>123</merchantUserId> <regionalId>123456</regionalId> <countryCode>27</countryCode> </Customer> Â Secure3d> <SupportedPaymentMethods>CREDITCARD_TOKEN</SupportedPaymentMethods> <Customer FirstName="John" LastName="Doe" CountryCode="27" Mobile="27999220020" MerchantUserId="Merch000001"/> <Customfield> <key>processingType</key> <value>REAL_TIME_RECURRING</value> </Customfield> |
Response: Token created and returned by PayU on successful transaction completion in IPN.
- pmId = This value needs to be associated with merchantUserId and used for both redirect and enterprise payments. (Back-end Real-Time recurring subscription type transactions)
- cardExpiry = Store this value to ensure recurring transactions are not requested beyond expiry date of card. (Back-end Real-Time recurring subscription type transactions)
Code Block | ||||
---|---|---|---|---|
| ||||
<pmId>C113C08A96F9E1177DB441EAB08DC046</pmId>
<cardExpiry>102018</cardExpiry>
<cardNumber>403822******8021</cardNumber> |
Additional payments: Tokens exist and used in setTransaction.
- AuthenticationType = TOKEN
merchantUserId = Identifying value at merchant
- CreditCard
- pmId = Token representing the card.
Customfield
key = processingType
- value = REAL_TIME_RECURRING
Code Block | ||
---|---|---|
| ||
<AuthenticationType>TOKEN</AuthenticationType> Â <Customer> <merchantUserId>123</merchantUserId> <regionalId>123456</regionalId> <countryCode>27</countryCode> </Customer> Â <Creditcard> <amountInCents>1000</amountInCents> <pmId>f1VnURZ/QBV6FVVpJhBgVGdVEHFFDANFFBAWNj5RZkkRekQQehJec1xke1Fl</pmId> <cvv></cvv> </Creditcard> <Customfield> <key>processingType</key> <value>REAL_TIME_RECURRING</value><Customfield Key="processingType" Value="REAL_TIME_RECURRING"/> </Customfield> |
...
Integration payment sequence/flow
When developing a solution with PayU's Enterprise API redirect some de-risking of transactions can be done be performing a transaction.
Set-up flow with Secure 3D de-risking:
Real-time recurring transaction chargeback risk is with the merchant. In order to validate card holder and de-risk the recurring transaction a normal eCommerce transaction can be done prior to a recurring set-up transaction. With redirect transactions PayU will handle all the the necessary actions required provided the setTransaction call include the instruction to perform Secure 3D authentication.
- Step 1
- Ensure a secure user profile management system is in place that can:
- Store one or more payment tokens against the user.
- Store the masked card number and expiry date as returned from PayU in the transaction response.
- Able to return the stored token in follow up recurring transactions to PayU.
- Display terms and conditions plus inform that card will be saved securely for recurring transactions.
- Ensure a secure user profile management system is in place that can:
- Step 2
- During checkout process the merchant website needs to:
- Retrieve all stored tokens with masked card numbers and expiry dates to allow user to select a card to transact with.
- If no token found then display payment capture form.
- or if tokens are present allow user to add another card to transact against.
- if tokens are found refer to "Transactions beyond set-up "below".
- Retrieve all stored tokens with masked card numbers and expiry dates to allow user to select a card to transact with.
- During checkout process the merchant website needs to:
- Step 3
- Send a eCommerce doTransaction API call to PayU as per selected criteria of step 2 for amount required.
- Handle Secure 3D redirect if card is enrolled for Secure 3D.
- Step 4
- On completion of eCommerce transaction leg store payment token issued by PayU against the merchant user profile.
- Step 5
- Next perform a recurring set-up transaction for a zero amount using the token details as returned in the eCommerce leg plus CVV.
- Step 6
- Update transaction database with the transaction lookup response from PayU. (getTransaction or IPN)
- Step 7
- Display the transaction result to the user.
...
- Merchant user logged into Merchant user management system.
- Step 2
- User makes product selections, proceeds to checkout and selects to complete transaction.
- Merchant system sends setTransaction call to PayU.
- Secure3d = TRUE, SupportedPaymentMethods= CREDITCARD_TOKEN, merchantUserId=MerchantSuppliedIDValue, processingType=REAL_TIME_RECURRING
- Merchant site redirects user to PayU hosted payment pages.
- Merchant system sends setTransaction call to PayU.
- PayU displays required page, allows user to capture card and perform necessary Secure 3D actions, perform recurring setup and tokenise card for future transactions.
- User makes product selections, proceeds to checkout and selects to complete transaction.
- Step 3
- On redirect back to the merchant a getTransaction and/or IPN is used to perform lookup of the transaction outcome and token value. Merchant saves this token against the merchantUserId.
- Step 4
- Merchant display results and update transaction status as required.
Set-up flow without any de-risk (Fraud checks can be added)
Real-time recurring transaction chargeback risk is with the merchant. In this flow the merchant might perform other fraud check and do not have the requirement for additional de-risking.
- Step 1
- Ensure a secure user profile management system is in place that can:
- Store one or more payment tokens against the user.
- Store the masked card number and expiry date as returned from PayU in the transaction response.
- Able to return the stored token in follow up recurring transactions to PayU.
- Display terms and conditions plus inform that card will be saved securely for recurring transactions.
- Ensure a secure user profile management system is in place that can:
- Step 2
- During checkout process the merchant website needs to:
- Retrieve all stored tokens with masked card numbers and expiry dates to allow user to select a card to transact with.
- If no token found then display payment capture form.
- or if tokens are present allow user to add another card to transact against.
- if tokens are found refer to "Transactions beyond set-up "below".
- Retrieve all stored tokens with masked card numbers and expiry dates to allow user to select a card to transact with.
- During checkout process the merchant website needs to:
- Step 3
- Send recurring set-up transaction for the required amount using the card number, expiry date, and CVV.
- Step 4
- On completion of recurring transaction store payment token issued by PayU against the merchant user profile.
- Step 5
- Update transaction database with the transaction lookup response from PayU. (getTransaction or IPN)
- Step 6
- Display the transaction result to the user.
- Merchant user logged into Merchant user management system.
- Step 2
- User makes product selections, proceeds to checkout and selects to complete transaction.
- Merchant system sends setTransaction call to PayU.
- Secure3d = FALSE, SupportedPaymentMethods= CREDITCARD_TOKEN, merchantUserId=MerchantSuppliedIDValue, processingType=REAL_TIME_RECURRING
- Merchant site redirects user to PayU hosted payment pages.
- Merchant system sends setTransaction call to PayU.
- PayU displays required page, allows user to capture card and perform recurring setup and tokenise card for future transactions.
- User makes product selections, proceeds to checkout and selects to complete transaction.
- Step 3
- On redirect back to the merchant a getTransaction and/or IPN is used to perform lookup of the transaction outcome and token value. Merchant saves this token against the merchantUserId.
- Step 4
- Merchant display results and update transaction status as required.
Transaction flow for recurring transactions beyond set-up (Front end - user driven)
This flow allows the merchant to enable a quick checkout experience by sending a token to PayU for a recurring transaction. The user needs to provide permission for a quick checkout via recurring transaction and the merchant accepts all fraud related transaction charge backs.
- Step 1
- Merchant user logged into Merchant user management system.
- Step 2
- User selects an existing card from options presented
- Merchant match token to payment method selected
- Step 3
- Merchant submits recurring doTransaction call to PayU with token and amount. (No CVV required)
- Step 4
- Update transaction database with the transaction lookup response from PayU. (getTransaction or IPN)
- Step 5
- Display the transaction result to the user.
Transaction flow for recurring transactions beyond set-up (Back-end - subscriptions not user driven)
This flow is for an administrative process to which the card holder agreed to regular system initiated payments. For example subscriptions.
- Step 1
- Merchant subscription system selects user token to perform transaction against
- Step 2
- Merchant subscription system send recurring doTransaction call with token and amount to PayU
- Step 3
- Update transaction database with the transaction response from PayU. (getTransaction or IPN)makes product selections, proceeds to checkout and selects to complete transaction.
- Merchant system sends setTransaction call to PayU.
- Secure3d = FALSE, SupportedPaymentMethods= CREDITCARD_TOKEN, merchantUserId=MerchantSuppliedIDValue, processingType=REAL_TIME_RECURRING
- Merchant site redirects user to PayU hosted payment pages.
- Merchant system sends setTransaction call to PayU.
- PayU displays required page, checks if merchantUserId have saved cards, if yes perform recurring transaction. If no card exist setup and tokenise flow is followed.
- Update transaction database with the transaction response from PayU. (getTransaction or IPN)makes product selections, proceeds to checkout and selects to complete transaction.
- Step 3
- On redirect back to the merchant a getTransaction and/or IPN is used to perform lookup of the transaction outcome and token value. Merchant updates this token against the merchantUserId if required.
- Step 4
- Merchant display results and update transaction status as required.
API call examples
Please refer to the doTransaction setTransaction API example page for more information