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