Ana içeriğe geç

Init

HPP servisini kullanmak için aşağıda yer alan servisten dönen paymentUrl değerini <iframe> nesnesi yardımıyla açarak ya da sayfanızı bu url'e yönlendirerek, ödeme sayfasını kullanıcıya pop-up veya yeni sekme üzerinde gösterebilirsiniz.

Sonucu kontrol etmek içinse Inquire servisini bu servisten dönen trackingId ile dinleyebilir veya bize ilettiğiniz data içerisinde doldurabileceğiniz alanlardan olan callbackUrl içerisinde, işlem sonucunu size dönebileceğimiz bir adres belirtebilirsiniz.

URL

POSThttps://testpfapi.rubikpara.com/v1/HostedPayment

Request

Headers

ClientIpAddress array[string]
ConversationId string
MerchantNumber string
Nonce string
PublicKey string
Signature string

Body

{
"orderId": "string",
"amount": 55,
"currency": 949,
"is3dRequired": false,
"callbackUrl": "string",
"returnUrl": "string",
"name": "string",
"surname": "string",
"email": "string",
"phoneNumber": "string",
"clientIpAddress": "string",
"languageCode": "string",
"enableInstallments": true,
"commissionFromCustomer": false,
"installments": [
{
"CardNetwork": "string",
"Amount": null,
"Installment": 3
},
{
"CardNetwork": "string",
"Amount": 60,
"Installment": 4
},
{
"CardNetwork": "string",
"Installment": 5
},
{
"CardNetwork": "string",
"Amount": 55,
"Installment": 4
}
],
"pageViewType": "string"
}

Response

Body

{
"paymentUrl": "string",
"trackingId": "string",
"expiryDate": "Date",
"languageCode": "string",
"pageViewType": "string"
}

Örnek Kodlar

Öneri

Bu servisi kullanabilmek için gerekli olan nonce ve signature değerlerini API Referansları-Token Servisleri altında bulunan Signature&Nonce Oluştur servisinden alabilirsiniz.

Dikkat

Bu servisten dönen trackingId değerini işlem sonucunu öğrenebileceğiniz Inquire servisinde kullanmak üzere saklayınız!!


        const axios = require('axios').default;
        const options = {
          method: 'POST',
          url: 'https://testpfapi.rubikpara.com/v1/HostedPayment',
          headers: {
            PublicKey: 'SkDP+k0jpMPDOzjcQ2dTcg==',
            Nonce: '',
            Signature: '',
            ConversationId: 'test123456',
            ClientIpAddress: '192.1.1.1',
            MerchantNumber: '1100000001',
            'Content-Type': 'application/json',
            Accept: 'application/json'
          },
          data: {
            "orderId": "",
            "amount": 55,
            "currency": 949,
            "is3dRequired": false,
            "callbackUrl": "www.google.com",
            "returnUrl": "www.google.com",
            "name": "Test",
            "surname": "Test",
            "email": "example@mail.com",
            "phoneNumber": "5554443322",
            "clientIpAddress": "127.0.0.1",
            "languageCode": "TR",
            "enableInstallments": true,
            "commissionFromCustomer": false,
            "installments": [
                {
                    "CardNetwork": "World",
                    "Amount": null,
                    "Installment": 3
                },
                {
                    "CardNetwork": "World",
                    "Amount": 60,
                    "Installment": 4
                },
                {
                    "CardNetwork": "World",
                    "Installment": 5
                },
                {
                    "CardNetwork": "Unknown",
                    "Amount": 55,
                    "Installment": 4
                }
            ],
            "pageViewType": "Redirect"
          }
        };
        try {
          const { data } = await axios.request(options);
          console.log(data);
        } catch (error) {
          console.error(error);
        }