Payment methods

  1. Main page
  2. Payment methods

Bank card (Royal Pay side)

Acquiring. Card data is collecting on the Royal Pay side. Additional fields for /deposit/create request:

Field
Type
Mandatory
Description
Example
Field
payment_system
Type
string
Mandatory
Yes
Description
Payment system name.
Example
CardGate
Field
note
Type
string
Mandatory
Yes
Description
Payment description for client.
Example
Account deposit 321
Field
system_fields
Type
object
Mandatory
Yes
Description
Container for additional fields of payment system.
Example
Field
system_fields > client_id
Type
string
Mandatory
No
Description
Client ID in the Merchant system
Example
321

The example of the request:

{
    "transaction_id": "123",
    "amount": "10.00",
    "currency": "RUB",
    "payment_system": "CardGate",
    "note": "Account deposit 321",
    "system_fields": {
        "client_id": "321"
    },
    "url": {
        "callback_url": "https://site.com/callback",
        "fail_url": "https://site.com/fail",
        "pending_url": "https://site.com/pending",
        "success_url": "https://site.com/success"
    }
}

Answer is common Royal Pay response with Redirect block to Royal Pay checkout page. After checkout client will be redirected to 3DS and then returned according the url block if present.

Bank card (Merchant side)

Acquiring. Card data is collecting on the Merchant side. Additional fields for /deposit/create request:

Field
Type
Mandatory
Description
Example
Field
payment_system
Type
string
Mandatory
Yes
Description
Payment system name.
Example
CardGateS2S
Field
system_fields
Type
object
Mandatory
Yes
Description
Container for additional fields of payment system.
Example
Field
system_fields > client_id
Type
string
Mandatory
Yes
Description
Client ID in the Merchant system
Example
321
Field
system_fields > card_number
Type
string
Mandatory
Yes
Description
Card number
Example
4111111111111111
Field
system_fields > card_month
Type
integer(2)
Mandatory
Yes
Description
Card expiry month
Example
01
Field
system_fields > card_year
Type
integer(4)
Mandatory
Yes
Description
Card expiry year
Example
2020
Field
system_fields > cardholder_name
Type
string
Mandatory
Yes
Description
Cardholder name
Example
Mr Cardholder
Field
system_fields > card_cvv
Type
integer
Mandatory
Yes
Description
Card security code
Example
345
Field
system_fields > client_email
Type
string
Mandatory
No
Description
Client e-mail
Example
test@test.com
Field
system_fields > client_phone
Type
string
Mandatory
No
Description
Client phone in international format
Example
+37111111111
Field
system_fields > client_ip
Type
string
Mandatory
No
Description
Client ip-address
Example
192.168.1.1
Field
system_fields > client_user_agent
Type
string
Mandatory
No
Description
User-agent of client browser
Example
Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2

Optional fields can be needed in live mode. Please specify it before going live.

The example of the request:

{
    "transaction_id": "123",
    "amount": "10.00",
    "currency": "RUB",
    "payment_system": "CardGateS2S",
    "note": "Account deposit 321",
    "system_fields": {
        "client_id": "321",
        "card_number": "4111111111111111",
        "card_month": "01",
        "card_year": "2020",
        "cardholder_name": "Mr Cardholder",
        "card_cvv": "345"
    },
    "url": {
        "callback_url": "https://site.com/callback",
        "fail_url": "https://site.com/fail",
        "pending_url": "https://site.com/pending",
        "success_url": "https://site.com/success"
    }
}

Answer is common Royal Pay response with Redirect block to 3DS page. After passing 3DS client will be returned according the url block if present.

Attention! Redirect block can contain different "url", "method" and "params".

The example of the common response:

{
    "status": "created",
    "id": "300",
    "transaction_id": "123",
    "type": "deposit",
    "amount_to_pay": "10.00",
    "amount_merchant": "9.3",
    "amount_client": "9.20",
    "currency": "RUB",
    "payment_system": "CardGateS2S",
    "redirect": {
        "url": "https://bank.com/3ds",
        "method": "POST",
        "params": {
            "pareq": "12345678"
        }
    }
}

In some cases answer may not contain redirect block. It could happen in some cases like not enrolled in 3DS card or some unexpected system behavior. Merchant system should await for callback with final status or check status of the transaction by itself.

The example of that kind of response:

{
    "status": "created",
    "id": "300",
    "transaction_id": "123",
    "type": "deposit",
    "amount_to_pay": "10.00",
    "amount_merchant": "9.3",
    "amount_client": "9.20",
    "currency": "RUB",
    "payment_system": "CardGateS2S"
}

Qiwi Wallet

Additional fields for /deposit/create request:

Field
Type
Mandatory
Description
Example
Field
payment_system
Type
string
Mandatory
Yes
Description
Payment system name.
Example
Qiwi
Field
system_fields
Type
object
Mandatory
Yes
Description
Container for additional fields of payment system.
Example
Field
system_fields > qiwi_wallet
Type
string
Mandatory
Yes
Description
Qiwi wallet number
Example
+79008007000
Field
system_fields > qiwi_comment
Type
string
Mandatory
Yes
Description
Payment description showing on Qiwi checkout page
Example
Account deposit 321
Field
system_fields > qiwi_lifetime
Type
date(Y-m-d\TH:i:s)
Mandatory
Yes
Description
Lifetime of payment after it will be considered as failed in the GMT+3 timezone. Default value: +3 days.
Example
2020-01-30T01:02:03
Field
system_fields > qiwi_successUrl
Type
url
Mandatory
Yes
Description
URL for client redirection in case of success
Example
http://site.com/success
Field
system_fields > qiwi_failUrl
Type
url
Mandatory
Yes
Description
URL for client redirection in case of fail
Example
http://site.com/fail

The example of the request:

{
    "transaction_id": "123",
    "amount": "10.00",
    "currency": "RUB",
    "payment_system": "Qiwi",
    "note": "Account deposit 321",
    "system_fields": {
        "qiwi_wallet": "+79008007000",
        "qiwi_comment": "Account deposit 321",
        "qiwi_lifetime": "2020-01-30T01:02:03",
        "qiwi_successUrl": "http://site.com/success",
        "qiwi_failUrl": "http://site.com/fail"
    },
    "url": {
        "callback_url": "https://site.com/callback",
        "fail_url": "https://site.com/fail",
        "pending_url": "https://site.com/pending",
        "success_url": "https://site.com/success"
    }
}

Answer is common Royal Pay response with Redirect block to Qiwi checkout page. After checkout client will be returned according the qiwi_successUrl and qiwi_failUrl.

Additional fields for /deduce/create request:

Field
Type
Mandatory
Description
Example
Field
payment_system
Type
string
Mandatory
Yes
Description
Payment system name.
Example
Qiwi
Field
system_fields
Type
object
Mandatory
Yes
Description
Container for additional fields of payment system.
Example
Field
system_fields > wallet_number
Type
string
Mandatory
Yes
Description
Target wallet number in the Qiwi system to payout funds
Example
+79008007000

The example of the request:

{
    "transaction_id": "123",
    "amount": "10.00",
    "currency": "RUB",
    "payment_system": "Qiwi",
    "note": "Account payout 321",
    "system_fields": {
        "wallet_number": "+79008007000"
    },
    "url": {
        "callback_url": "https://site.com/callback"
    }
}

Answer is common Royal Pay payout response.

Yandex Wallet

Additional fields for /deposit/create request:

Field
Type
Mandatory
Description
Example
Field
payment_system
Type
string
Mandatory
Yes
Description
Payment system name.
Example
YandexMoney
Field
system_fields
Type
object
Mandatory
Yes
Description
Container for additional fields of payment system.
Example
Field
system_fields > client_redirect_url
Type
url
Mandatory
Yes
Description
URL for client redirection after payment process
Example
http://site.com/return

The example of the request:

{
    "transaction_id": "123",
    "amount": "10.00",
    "currency": "RUB",
    "payment_system": "YandexMoney",
    "note": "Account deposit 321",
    "system_fields": {
        "client_redirect_url": "http://site.com/return"
    },
    "url": {
        "callback_url": "https://site.com/callback"
    }
}

Answer is common Royal Pay response with Redirect block to Yandex Money checkout page. After checkout client will be returned according the client_redirect_url.

Additional fields for /deduce/create request:

Field
Type
Mandatory
Description
Example
Field
payment_system
Type
string
Mandatory
Yes
Description
Payment system name.
Example
YandexMoney
Field
system_fields
Type
object
Mandatory
Yes
Description
Container for additional fields of payment system.
Example
Field
system_fields > wallet_number
Type
string
Mandatory
Yes
Description
Target wallet number in the Yandex Money system to payout funds
Example
41001234567890

The example of the request:

{
    "transaction_id": "123",
    "amount": "10.00",
    "currency": "RUB",
    "payment_system": "YandexMoney",
    "note": "Account payout 321",
    "system_fields": {
        "wallet_number": "41001234567890"
    },
    "url": {
        "callback_url": "https://site.com/callback"
    }
}

Answer is common Royal Pay payout response.

WebMoney

Additional fields for /deposit/create request:

Field
Type
Mandatory
Description
Example
Field
payment_system
Type
string
Mandatory
Yes
Description
Payment system name.
Example
WebMoney
Field
system_fields
Type
object
Mandatory
Yes
Description
Container for additional fields of payment system.
Example
Field
system_fields > client_success_url
Type
url
Mandatory
Yes
Description
URL for client redirection after successful payment
Example
http://site.com/success
Field
system_fields > client_fail_url
Type
url
Mandatory
Yes
Description
URL for client redirection after unsuccessful payment
Example
http://site.com/fail

The example of the request:

{
    "transaction_id": "123",
    "amount": "10.00",
    "currency": "RUB",
    "payment_system": "WebMoney",
    "note": "Account deposit 321",
    "system_fields": {
        "client_success_url": "http://site.com/success",
        "client_fail_url": "http://site.com/fail"
    },
    "url": {
        "callback_url": "https://site.com/callback"
    }
}

Answer is common Royal Pay response with Redirect block to WebMoney checkout page. After checkout client will be returned to client_success_url or client_fail_url.

Additional fields for /deduce/create request:

Field
Type
Mandatory
Description
Example
Field
payment_system
Type
string
Mandatory
Yes
Description
Payment system name.
Example
WebMoney
Field
system_fields
Type
object
Mandatory
Yes
Description
Container for additional fields of payment system.
Example
Field
system_fields > wallet_number
Type
string
Mandatory
Yes
Description
Target wallet number in the WebMoney system to payout funds
Example
Z112233445566

The example of the request:

{
    "transaction_id": "123",
    "amount": "10.00",
    "currency": "USD",
    "payment_system": "WebMoney",
    "note": "Account payout 321",
    "system_fields": {
        "wallet_number": "Z112233445566"
    },
    "url": {
        "callback_url": "https://site.com/callback"
    }
}

Answer is common Royal Pay payout response.

Royal Pay Vouchers

Check voucher status request:

POST https://royalpay.eu/api/voucher/check

Field
Type
Mandatory
Description
Example
Field
payment_system
Type
string
Mandatory
Yes
Description
Payment system name.
Example
Voucher
Field
system_fields
Type
object
Mandatory
Yes
Description
Container for additional fields of payment system.
Example
Field
system_fields > voucher_number
Type
string
Mandatory
Yes
Description
Voucher number.
Example
111122223333444455

Example of the request:

{
    "payment_system": "Voucher",
    "system_fields": {
        "voucher_number": "111122223333444455"
    }
}

Response contains voucher face value and currency or error details. You get successful response only if voucher is ready to be redeemed.

Successful response:

Field
Type
Mandatory
Description
Example
Field
status
Type
string
Mandatory
Yes
Description
Status of the request.
Example
ok
Field
voucher_amount
Type
string
Mandatory
Yes
Description
Voucher face value.
Example
1000.00
Field
voucher_currency
Type
string
Mandatory
Yes
Description
Voucher currency code.
Example
RUB

Example of the successful response:

{
    "status": "ok",
    "voucher_amount": "1000.00",
    "voucher_currency": "RUB"
}

Failed response:

Field
Type
Mandatory
Description
Example
Field
status
Type
string
Mandatory
Yes
Description
Status of the request.
Example
error
Field
code
Type
string
Mandatory
Yes
Description
Error code.
Example
201
Field
message
Type
string
Mandatory
Yes
Description
Text description of an error.
Example
Mandatory field `voucher_number` is not present

Example of the failed response:

{
    "status": "error",
    "code": "201",
    "message": "Mandatory field `voucher_number` is not present"
}

Redeem voucher request:

POST https://royalpay.eu/api/voucher/redeem

Field
Type
Mandatory
Description
Example
Field
payment_system
Type
string
Mandatory
Yes
Description
Payment system name.
Example
Voucher
Field
transaction_id
Type
string
Mandatory
No
Description
Transaction number in the Merchant system.
Example
123
Field
note
Type
string
Mandatory
No
Description
Transaction description for the Merchant.
Example
Account deposit 321
Field
system_fields
Type
object
Mandatory
Yes
Description
Container for additional fields of payment system.
Example
Field
system_fields > voucher_number
Type
string
Mandatory
Yes
Description
Voucher number.
Example
111122223333444455
Field
system_fields > voucher_password
Type
string
Mandatory
Yes
Description
Voucher password.
Example
123456
Field
url
Type
object
Mandatory
No
Description
Container for URL addresses transmitting.
Example
Field
url > callback_url
Type
url
Mandatory
No
Description
URL for transmitting notification of a payment to the Merchant system.
Example
http://site.com/callback

Example of the request:

{
    "payment_system": "Voucher",
    "transaction_id": "123",
    "note": "Account deposit 321",
    "system_fields": {
        "voucher_number": "111122223333444455",
        "voucher_password": "123456"
    },
    "url": {
        "callback_url": "http://site.com/callback"
    }
}

Response is common Royal Pay deposit response with ok status and without redirect block. Example of the successful response:

{
    "status": "ok",
    "id": "300",
    "transaction_id": "123",
    "type": "deposit",
    "amount_to_pay": "1000.00",
    "amount_merchant": "950.00",
    "amount_client": "1000.00",
    "currency": "RUB",
    "payment_system": "Voucher"
}

Example of the failed response:

{
    "status": "error",
    "code": "201",
    "message": "Mandatory field `voucher_number` is not present"
}

For testing purposes:

Use "payment_system": "TestVoucher"

Test vouchers:

360046146009394524, password 123456 - successful payment

360046146009399184 - unavailable for payout

360046146009400339 - a voucher of a blocked user

Any other voucher will return a 'Not found' error.

The vouchers may be tested with the 'check' method as well as 'redeemed'.

The value of the successful voucher is 100 RUB.

The example fee is 5%.

ecoPayz

Additional fields for /deposit/create request:

Field
Type
Mandatory
Description
Example
Field
payment_system
Type
string
Mandatory
Yes
Description
Payment system name.
Example
Ecopayz
Field
system_fields
Type
object
Mandatory
Yes
Description
Container for additional fields of payment system.
Example
Field
system_fields > client_first_name
Type
string
Mandatory
Yes
Description
First name in ecoPayz system
Example
Ivan
Field
system_fields > client_last_name
Type
string
Mandatory
Yes
Description
Last name in ecoPayz system
Example
Ivanov
Field
system_fields > client_date_birth
Type
date(Y-m-d)
Mandatory
Yes
Description
Date of birth user (in ecoPayz system).
Example
1991-02-13

The example of the request:

{
    "transaction_id": "123",
    "amount": "10.00",
    "currency": "EUR",
    "payment_system": "Ecopayz",
    "note": "Account deposit 321",
    "system_fields": {
        "client_first_name": "Ivan",
        "client_last_name": "Ivanov",
        "client_date_birth": "1991-02-13"
    },
    "url": {
        "callback_url": "https://site.com/callback",
        "fail_url": "https://site.com/fail",
        "pending_url": "https://site.com/pending",
        "success_url": "https://site.com/success"
    }
}

Additional fields for /deduce/create request:

Field
Type
Mandatory
Description
Example
Field
payment_system
Type
string
Mandatory
Yes
Description
Payment system name.
Example
Ecopayz
Field
system_fields
Type
object
Mandatory
Yes
Description
Container for additional fields of payment system.
Example
Field
system_fields > client_account_number
Type
string
Mandatory
Yes
Description
Account number user in ecopayz system
Example
1234567890

The example of the request:

{
    "transaction_id": "123",
    "amount": "10.00",
    "currency": "EUR",
    "payment_system": "Ecopayz",
    "note": "Account payout 321",
    "system_fields": {
        "client_account_number": "1234567890"
    },
    "url": {
        "callback_url": "https://site.com/callback"
    }
}

Answer is common Royal Pay payout response.

Privat24

Additional fields for /deposit/create request:

Field
Type
Mandatory
Description
Example
Field/b>
payment_system
Type
string
Mandatory
Yes
Description
Payment system name.
Example
DepositUA
Field
system_fields
Type
object
Mandatory
Yes
Description
Container for additional fields of payment system.
Example
Field
system_fields > user_id
Type
string
Mandatory
Yes
Description
Client ID in the Merchant system
Example
321
Field
system_fields > email
Type
string
Mandatory
Yes
Description
Client e-mail
Example
test@test.com
Field
system_fields > return_url
Type
string
Mandatory
Yes
Description
URL for client redirection after payment process
Example
http://site.com/return

The example of the request:

{
    "transaction_id": "123",
    "amount": "10.00",
    "currency": "UAH",
    "payment_system": "DepositUA",
    "note": "Account deposit 321",
    "system_fields": {
        "user_id": "321",
        "email": "test@test.com",
        "return_url": "http://site.com/return"
    },
    "url": {
        "callback_url": "https://site.com/callback"
    }
}

Answer is common Royal Pay response with Redirect block to Privat24 checkout page. After checkout client will be returned according the redirect_url.