Using the Test API

Introduction

The API test mode allows you to learn how to work with the Unitpay API on test data without actually conducting transactions:

  • data exchange;

  • format of queries and responses;

  • content of queries and responses.

To use the API in test mode, you must add the params[test]=1 parameter to the query.

The test data that need to be transmitted in queries:

Parameter

Value

projectId

135

login

test_user

secretKey

Any line containing Latin characters and numbers

IMPORTANT NOTE! After switching to operative mode, remember to change the test parameters to actual ones!

For the API in test mode, you should send all the mandatory parameters which can be viewed on the main page of the used method. All the response parameters of the API in test mode correspond to the response in operative mode unless otherwise stated in the test API documentation.

Available methods for test mode

Creating payment (initPayment)

Information about payment (getPayment)

Payment refund (refundPayment)

Creating a payout (massPayment)

Information about payout (massPaymentStatus)

Getting a list of active subscriptions (listSubscriptions)

Getting information about subscription (getSubscription)

Closing subscription (closeSubscription)

Payments

Creating a Payment

initPayment Mandatory method parameters

Test data:

Parameter

Value

paymentType

card (only card is supported in test mode)

account

Any line containing Latin characters and numbers

desc

Any line containing characters and numbers

Other parameters should be specified according to the documentation.

Successful response. The difference of the values of the parameters in test mode:

Value

Description

redirectUrl

line

Test URL for redirecting the user to the payment platform gateway. If the payment does not require redirecting, this parameter will not be available.

receiptUrl

line

Test URL for redirecting the user to the payment receipt.

Warning: the transmitted information will not be saved in test mode. Therefore, the payment information may differ from the values transmitted when creating the payment. The payment receipt number and paymentId will also change after payment using the payment details.

Test forms

The URL received when creating a payment in test mode is only needed for testing the payment, 3ds authorization, and receipt output. Do not share this link with users!

To test the payment, follow the link from redirectUrl. The link leads to a test form for entering card details. Enter your details and go through 3ds authorization to get the payment status. The money will not be debited using real details.

Test details for payment by card:

Value

Description

1234567465831234

Successful payment

Any other value

Error payment

After entering the card details, you will switch to the 3ds authorization test form. In the Code field, enter 391745 for a successful payment.

Payment under subscription

Payment under subscription is only available for payments by credit cards. To make a test payment under the subscription, add the subscriptionId parameter with the test value to the initPayment method.

Test subscriptionId:

Value

Description

from 1 to 5

Successful payment

Any other subscriptionId

Returns an error: Subscription not found

Information about Payment

getPayment Mandatory method parameters

Test paymentId for payments:

Value

Description

100301

Payment in process

100303

Successful payment

100304

Error payment

Use paymentId from the test responses to get information about the payment.

Important Note: information about the test payment will not be saved. The data received in the response may differ from the data transmitted when creating the payment. The value of purse can be hidden in test mode.

Payment Refund

refundPayment Mandatory method parameters

Test paymentId for refund:

Value

Amount

Partial refund

12358132134

5000

Supported

383117770

1000

Not supported

Add an optional params[sum] to the request to get various refund events (more or less than the allowed refund amount).

Payouts

Creating a Payout

massPayment Mandatory method parameters

Test parameters for payouts:

Parameter

Value

login

test_user

projectId

135

transactionId

Any line containing Latin characters and numbers

secretKey

Any line containing Latin characters and numbers

purse

Any line containing Latin characters and numbers

When creating a payout, you can get different statuses. To test them, use the paymentType=card parameter and the following transactionId:

Value

Status

F12358132134

success

F383117770

error

Any other value

not_completed

Warning: the created payout will not be saved in test mode. Getting information about the completed test payment using massPaymentStatus will result in an error.

Information about Payout

massPaymentStatus Mandatory method parameters

In test mode, you can only get information about a payout from the list. You can view the test parameters in the table below.

Test transactionId for getting information about payouts:

Value

Status

F12358132134

success

F383117770

error

Any other value

Error response

Subscriptions

Getting a List of Active Subscriptions

listSubscriptions Mandatory method parameters

To get a list of test active subscriptions, use the projectId specified in the table The test data that need to be transmitted in queries.

Getting Information About Subscription

getSubscription Mandatory method parameters

In test mode, you can only get information about your subscription by using the subscriptionids listed in the table below.

Test subscriptionId:

Value

Status

1, 2, 5

active

3

close

4

new

Closing a Subscription

closeSubscription Mandatory method parameters

In test mode, you can only close a subscription from the table below.

Test subscriptionId of subscriptions:

Value

Status

1, 2, 5

active

3

close

4

new

Important Note: the subscription closing status will not be saved.

Last updated