Objects
acquiring_payments = payment_list
Use
acquiring_paymentsfor API v1, andpayment_listfor API v2.
All the payment details.
| Name | Mandatory | Type | Description |
|---|---|---|---|
id | + | string | Unique payment identifier |
status | + | string | Payment status. Possible values: succeeded, in_progress, pending, failed |
created_at | + | string | Creation date in ISO 8601 format |
payment_details | + | object | Payment data |
amount_details | + | object | Amount |
amounts | - | object | Transaction fee |
finished_at | - | string | Completion date in ISO 8601 format |
customer | + | object | User (payer) details |
recurrent | - | object | Details needed to perform recurring payments |
participant_details | - | object | Participants' details |
refunds | - | array | Refund list |
customer_interaction | - | object | Data needed for user interaction |
transaction_info | - | object | Transaction details |
payment_options | - | object | Payment parameters |
metadata | - | * | Any additional information |
error | - | object | Error description |
Payment statuses (status)
in_progress— the payment is being processed.pending— awaiting your confirmation (session/confirm) or cancellation (session/cancel).succeeded— the payment has been completed successfully.failed— the payment has not gone through due to an error.
acquiring_widget
Settings for the payment form widget (for performing bank card payments).
| Name | Mandatory | Type | Description |
|---|---|---|---|
session_id | + | string | Identifies the payment session for which the payment will be performed |
show_recurrent_checkbox | - | bool | Whether to display the Enable automatic payments checkbox in the widget interface |
success_return_url | - | string | URL to which the user is redirected after a successful payment |
failure_return_url | - | string | URL to which the user is redirected when an error occurs during the payment |
success_on_hold | - | bool | Whether to show a message about a successful payment to a payer when holding. By default, false and the widget shows a loading screen until the end of the hold |
redirect_target | - | string | Redirect link open options: - top — outside of all the frames as the top window - self — in the same frame - parent — in the next-level frame if the frames are nested in one another. Default: top |
amount_details
Amount object.
| Name | Mandatory | Type | Description |
|---|---|---|---|
amount | + | int | Amount value in minor currency units (cents). For 100 USD, enter 10000 |
currency | + | string | ISO 4217 currency code. Case insensitive. Options: usd |
amounts
Transaction fee.
| Name | Mandatory | Type | Description |
|---|---|---|---|
fee | - | object | Fee details |
bank_account
The payout recipient's account description.
| Name | Mandatory | Type | Description |
|---|---|---|---|
system_type | + | string | Bank payment system. Options: ru, faster_payment_system, faster_payment_system_verification |
ru | - (mandatory for system_type = ru) | object | Recipient's bank account (region: ru) |
faster_payment_system | - (mandatory for system_type = faster_payment_system) | object | Recipient's data in the Faster Payment System |
faster_payment_system_verification | - (mandatory for system_type = faster_payment_system_verification) | object | Data for the recipient verification in the Faster Payment System |
bank_card
An unencrypted card object.
| Name | Mandatory | Type | Description |
|---|---|---|---|
number | + | string | Card number |
expiration_month | - (mandatory for payments if available) | string | Month |
expiration_year | - (mandatory for payments if available) | string | Year |
security_code | - (mandatory for payments if available) | string | CVC (security code) |
cardholder_name | - | string | Cardholder's name |
card
The payout recipient's bank card details.
| Name | Mandatory | Type | Description |
|---|---|---|---|
type | + (not returned in responses) | string | Card details transmission type. Possible values: bank_card, encrypted_card, tokenized_card |
bank_card | - (mandatory for type = bank_card) | object | Unencrypted card |
encrypted_card | - (mandatory for type = encrypted_card) | object | Card with encrypted fields (tokenized) |
tokenized_card | - (mandatory for type = tokenized_card) | object | Tokenized card number |
brand | - | string | Card information. Returned in notifications, needed for user display |
last4 | - | string | Card information. Returned in notifications, needed for user display |
bin | - | string | Bank Identification Number (BIN) (the first 6 digits of a card number) |
card_id | - | string | Card identifier |
country_iso3 | - | string | Country code (ISO 3166-1 alpha-3) |
card_elements
The number of a card for tokenizing.
| Name | Mandatory | Type | Description |
|---|---|---|---|
ref | + | string | Fixed value, always number |
type | + | string | Fixed value, always card_number |
card_number | + | string | Card number |
contacts
An array with the contacts of a user (payout recipient or payment sender).
| Name | Mandatory | Type | Description |
|---|---|---|---|
email | - | string | User's email |
phone | - | string | User's phone number |
customer
Data about the user (payout recipient or payment sender) in your system. E.g. the login that lets you identify the user. Also includes their contact details.
| Name | Mandatory | Type | Description |
|---|---|---|---|
reference | + | string | Identifier of the user (payout recipient or payment sender) in your system (up to 128 characters) |
contacts | - | array | User contacts |
customer_interaction
An object describing customer interaction.
| Name | Mandatory | Type | Description |
|---|---|---|---|
type | + | string | Customer interaction type. Possible values: redirect, inform |
redirect | - (mandatory for type = redirect) | object | User redirect data |
inform | - (mandatory for type = inform) | object | Payment option data |
data
Token and tokenized card details.
| Name | Required | Type | Description |
|---|---|---|---|
number | + | object | Token information |
encrypted_card
Card with encrypted fields (tokenized). Transmitted during payouts or payments through the widget.
| Name | Mandatory | Type | Description |
|---|---|---|---|
number_hash | + | string | Card number hash |
expiration_date_hash | - | string | Expiration date hash |
security_code_hash | - | string | CVC code hash |
cardholder_name_hash | - | string | Cardholder's name hash |
fee
The fee charged.
| Name | Mandatory | Type | Description |
|---|---|---|---|
merchant_fee | + | object | Fee amount and currency |
error
Error description object.
| Name | Mandatory | Type | Description |
|---|---|---|---|
code | - | string | Error code |
description | - | string | Error description |
faster_payment_system
Data of a user of the Faster Payment System for payouts and payments.
| Name | Mandatory | Type | Description |
|---|---|---|---|
phone | - (mandatory for payouts) | string | Recipient's phone number |
bank_id | - (mandatory for payouts) | string | Identifier of the recipient's bank in the FPS |
description | - (*) | string | Payout or payment purpose (15 to 140 characters) |
(*) To learn whether or not the description parameter is mandatory, contact your personal manager.
faster_payment_system_verification
Data for the recipient verification in the Faster Payment System.
| Name | Mandatory | Type | Description |
|---|---|---|---|
phone | + | string | Recipient's phone number |
bank_id | + | string | Identifier of the recipient's bank in the FPS |
fps_no_account_widget
Payment page data for money transfers.
| Name | Mandatory | Type | Description |
|---|---|---|---|
session_id | + | string | Payment session identifier |
info (tokenized bank card)
Details of a tokenized bank card.
Returns in response to the token/info request.
| Name | Mandatory | Type | Description |
|---|---|---|---|
number_hash | + | string | Card number hash obtained from the tokenization widget |
brand | + | string | Payment system, e.g. visa |
last4 | + | string | Last 4 digits of the card number |
type | + | string | Token type. Always: card |
info (public token)
Information about a public token.
Returns in response to the token/info request.
| Name | Mandatory | Type | Description |
|---|---|---|---|
token | + | string | Token |
created_at | + | string | Creation date in ISO 8601 format |
finished_at | + | string | Completion date in ISO 8601 format |
is_active | + | bool | Possible to conduct the operation with this token: true – allowed, false – not allowed |
type | + | string | Token type. Always: public_token |
info (token for recurring payments or payouts)
Information about a token for recurring payments and payouts.
Returns in response to the token/info request.
| Name | Mandatory | Type | Description |
|---|---|---|---|
token | + | string | Token |
created_at | + | string | Creation date in ISO 8601 format |
finished_at | + | string | Completion date in ISO 8601 format |
is_active | + | bool | Whether it is possible to conduct the operation with this token: true – allowed, false – not allowed |
initiator | - | string | Recurring payment type. Possible values: merchant—an MIT payment (by default), client—a CIT payment |
type | + | string | Token type. Always: recurrent_token |
info (tokenized card details)
Tokenized card details.
Returns in response to the tokenize/elements request.
| Name | Required | Type | Description |
|---|---|---|---|
masked_card_number | + | string | Masked card number |
card_network | + | string | Card payment system |
card_type | + | string | Card type |
inform
Payment option data.
| Name | Mandatory | Type | Description |
|---|---|---|---|
qr | - | object | QR code for payments via FPS |
merchant_fee
Fee amount and currency.
| Name | Mandatory | Type | Description |
|---|---|---|---|
amount | + | int | Amount in minor currency units (cents). If the fee is 1 USD, the value is 100 |
currency | + | string | ISO 4217 currency code. Case insensitive. Options: usd |
metadata
This block may contain any additional information. May be a string, an integer, or an object.
It is mandatory for transactions processed on behalf of submerchants or by a submerchant. In this case, pass the submerchant field. Any additional fields and their names are up to you—the fields below are just an example.
| Name | Mandatory | Type | Description |
|---|---|---|---|
submerchant | + | string | Any unique value, for example, a URL of the payment site |
merchant | - | string | Merchant ID or name |
merchant_order_id | - | string | Order number |
user_os | - | string | User's operating system |
user_location | - | string | User's country |
user_ip | - | string | User's IP |
Examples
- Payment on a site
- Payment in a game or app
- Passed data example
- Request example
{
"metadata": {
"merchant": "",
"submerchant": "https://submerchant-site-url.com"
}
}
{
"metadata": {
"merchant": "",
"submerchant": "Game name"
}
}
{
"metadata": {
"submerchant": "https://submerchant-site.com",
"merchant_order_id": "123123",
"user_os": "android",
"user_location": "DE",
"user_ip": "127.0.0.1"
}
}
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/session/init/payment \
-H 'content-type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_details": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "4242424242424242",
"expiration_month": "05",
"expiration_year": "35",
"security_code": "123"
}
}
},
"amount_details": {
"amount": 10000,
"currency": "usd"
},
"customer": {
"reference": "lucky"
},
"payment_options": {
"return_url": "https://website.com"
},
"metadata": {
"submerchant": "https://submerchant-site-url.com",
"merchant_order_id": "123123",
"user_os": "android",
"user_location": "DE"
}
}'
number
Token and tokenized card details.
| Name | Required | Type | Description |
|---|---|---|---|
token | + | string | Token |
info | + | object | Card information |
participant_details
Payout participant details.
| Name | Mandatory | Type | Description |
|---|---|---|---|
sender | - | object | Sender's details |
recipient | - | object | Recipient's details |
payment_details
The description of the method for performing the payment.
| Name | Mandatory | Type | Description |
|---|---|---|---|
type | + | string | Payment method type. Possible values: card, recurrent, faster_payment_system |
card | - (mandatory for type = card) | object | Bank card details |
recurrent | - (mandatory for type = recurrent) | object | Details for repeating the payment using the token |
faster_payment_system | - (mandatory for type = faster_payment_system) | object | Payment via FPS |
payment_method = payout_details
Use
payment_methodfor API v1, andpayout_detailsfor API v2.
The description of the method for receiving the payout.
| Name | Mandatory | Type | Description |
|---|---|---|---|
type | + | string | Type of method for receiving the payout. Possible values: card, bank_account, recurrent, tokenized_card |
card | - (mandatory for type = card) | object | Recipient's bank card |
bank_account | - (mandatory for type = bank_account) | object | Recipient's bank account |
recurrent | - (mandatory for type = recurrent) | object | Token data |
tokenized_card | - (mandatory for type = tokenized_card) | object | Tokenized card number |
payment_options
Parameters needed to perform the payment.
| Name | Mandatory | Type | Description |
|---|---|---|---|
return_url | - | string | URL to which the user is redirected after the payment is performed Mandatory for payments made without our payment widget |
recurrent | - | bool | Determines whether the payment is to be performed using the saved token |
platform_details | - | object | User device data |
payments = payout_list
Use
paymentsfor API v1, andpayout_listfor API v2.
Payout details.
| Name | Mandatory | Type | Description |
|---|---|---|---|
id | + | string | Payout identifier |
status | + | string | Status. Possible values: succeeded, in_progress, pending, failed |
created_at | + | string | Creation date in ISO 8601 format |
payment_method/payout_details | + | object | Method of receiving the payout |
amount_details | + | object | Amount |
amounts | - | object | Transaction fee |
finished_at | - | string | Completion date in ISO 8601 format |
customer | - | object | Recipient's data in your system, e.g. the login that lets you verify the recipient on your side. |
participant_details | - | object | The details of payout participants required to perform the payout, e.g. the names and addresses of the payer and the recipient. |
refunds | - | array | Refund list |
transaction_info | - | object | Transaction details |
metadata | - | * | Any additional information |
error | - | object | Error description |
Payout statuses (status)
in_progress— the payout is being processed.pending— awaiting your confirmation (session/confirm) or cancellation (session/cancel).succeeded— the payout has been completed successfully.failed— the payout has not gone through because of an error.
platform_details
User device data.
| Name | Mandatory | Type | Description |
|---|---|---|---|
type | + | string | User's device type. Options: desktop, mobile |
os | + | string | User's operating system. Options: ios, android, windows, linux |
browser | + | string | User's browser. Options: chrome, firefox, jivoMobile, microsoft edge, miui, opera, safari, samsung, webKit, weChat, yandex |
public_token
Information about a public token.
| Name | Mandatory | Type | Description |
|---|---|---|---|
token | + | string | Token |
qr
QR code for payments via FPS.
| Name | Mandatory | Type | Description |
|---|---|---|---|
content | + | string | Link to QR code |
img | + | string | QR code body |
recipient
Payout recipient details. Which details are necessary depends on the method of receiving the payout.
| Name | Mandatory | Type | Description |
|---|---|---|---|
full_name | - (mandatory for payouts to any cards) | string | Full name |
first_name | - | string | First name |
last_name | - | string | Last name |
middle_name | - | string | Patronymic |
company_name | - | string | Company name |
reference | - | string | Recipient identifier in your system |
tax_reference | - | string | Taxpayer identifier |
beneficiary_id | - (mandatory for the payments and payouts with a beneficiary) | string | INN of the beneficiary |
country_iso3 | - | string | Country (ISO 3166-1 alpha-3) |
recurrent (recurring transaction token)
Token for recurring payments or payouts.
Parent objects: payment_method/payout_details, payment_details.
| Name | Mandatory | Type | Description |
|---|---|---|---|
token | + | string | Token |
initiator | - | string | Recurring payment type. Possible values: merchant—an MIT payment (by default), client—a CIT payment |
recurrent (recurring transaction token information)
Information about a token for recurring payments or payouts.
Parent arrays: acquiring_payments/payment_list.
| Name | Mandatory | Type | Description |
|---|---|---|---|
token | + | string | Token |
created_at | + | string | Creation date in ISO 8601 format |
finished_at | + | string | Completion date in ISO 8601 format |
is_active | + | bool | Whether it is possible to conduct the operation with this token: true – allowed, false – not allowed |
initiator | - | string | Recurring payment type. Possible values: merchant—an MIT payment (by default), client—a CIT payment |
type | + | string | Token type. Always: recurrent_token |
recurrent_token
Token for recurring payments or payouts.
| Name | Mandatory | Type | Description |
|---|---|---|---|
token | + | string | Token |
redirect
User redirect data.
| Name | Mandatory | Type | Description |
|---|---|---|---|
url | + | string | Redirect address including GET parameters |
base_url | + | string | Redirect address |
method | + | string | Submission method. Possible values: GET, POST |
qs | - | map<string,string> | Set of parameters depending on the transaction method |
params | - | map<string,*> | Set of parameters depending on the transaction method |
- Check if any parameters are specified in the
qsandparamsobjects.- Redirect the user to the redirect address specified in
base_urlusing the method from themethodparameter and including all the required parameters in the URL or request body.
refunds
An array with details on a refund.
| Name | Mandatory | Type | Description |
|---|---|---|---|
id | + | string | Unique refund identifier |
status | + | string | Refund status. Possible values: in_progress, accepted, declined, error |
amount_details | + | object | Amount of the refund |
created_at | + | string | Creation date |
finished_at | - | string | Completion date |
is_chargeback | - | bool | Whether the refund is made within a chargeback |
transaction_info | - | object | Transaction details |
Refund statuses (status)
in_progress– the refund is being processed.accepted– the refund has been completed successfully.declined– Pike has declined the refund.error– the refund has not gone through because of an error.
ru
Bank account details (region: ru).
| Name | Mandatory | Type | Description |
|---|---|---|---|
bik | + | string | Recipient’s Bank Identification Code |
account | + | string | Recipient's bank account |
full_name | + | string | Individual's full name. For payouts to a sole proprietor's account, pass it in the following format: ИП <full name>. In case of a payout to a legal entity, enter the entity's name, if it is provided in the agreement. Important: if the name is passed incorrectly the recipient bank may cancel the payout and the payout will be refunded |
description | + | string | Payout purpose |
inn | - (mandatory for the payouts to the accounts of legal entities and sole proprietors) | string | Recipient's INN, 10 digits for legal entities, 12 digits for individuals, including sole proprietors |
kpp | - (mandatory for the payouts to the accounts of legal entities) | string | Recipient's Tax Registration Reason Code (KPP), 9 digits |
sber_pay
SberPay payment details.
| Name | Mandatory | Type | Description |
|---|---|---|---|
phone | - | string | Phone number to send PUSH or SMS to. Format: 7********** |
channel | + | enum | SberPay payment channel. Options: app, mobile_web, web |
sender
Payout payer details. Which details are necessary depends on the method of receiving the payout.
| Name | Mandatory | Type | Description |
|---|---|---|---|
full_name | - | string | Full name |
first_name | - | string | First name |
last_name | - | string | Last name |
middle_name | - | string | Patronymic name |
company_name | - | string | Company name |
reference | - | string | Sender identifier in your system |
tax_reference | - | string | Taxpayer identifier |
beneficiary_id | - (mandatory for the payments and payouts with a beneficiary) | string | INN of the beneficiary |
country_iso3 | - | string | Country (ISO 3166-1 alpha-3) |
city | - | string | City |
street | - | string | Street and house number |
postal_code | - | string | Postal code (up to 6 digits) |
email | - | string | Sender's email |
ipv4 | - | string | IP version 4 address of the sender's device |
ipv6 | - | string | IP version 6 address of the sender's device |
session
A container with data about all the operations performed within a single payment session.
Payment operations can only be performed within a session. One or more operations of the same or different types can be performed within the session (e.g. several payouts, a payment and a refund, or a payment which is subsequently split).
| Name | Mandatory | Type | Description |
|---|---|---|---|
id | + | string | Session identifier |
status | + | string | Status. Possible values: created, in_progress, accepted, cancelled, error |
created_at | + | string | Creation date in ISO 8601 format |
updated_at | + | string | Update date in ISO 8601 format |
payments/payout_list | - | array | A list of payouts performed within the session |
acquiring_payments/payment_list | - | array | A list of payments performed within the session |
next_action | - | string | Label indicating actions needed to perform the transaction successfully. Possible values: confirm, capture |
error | - | object | Error description |
Payment session statuses (status)
created— the session has been created and is waiting to be started or canceled.in_progress— the session is being processed.accepted— the session has been completed successfully.cancelled— the session has been cancelled.error— an unexpected error occurred while processing.Attention! This status is not final. Please contact Pike's support team and wait for a final transaction status.
Next steps (next_action)
If this field is not empty, it means that Pike is waiting for you to perform specific actions to continue with the operation:
confirm— you need to confirm the operation (session/confirm) or cancel it (session/cancel).capture— you need to perform the debit (session/capture) or cancel it (session/cancel).
tokenized_card
A card token.
| Name | Required | Type | Description |
|---|---|---|---|
token | + | string | Token |
tokenize_widget
Settings for the tokenization widget.
| Name | Mandatory | Type | Description |
|---|---|---|---|
access | + | bool | Identifies whether this public key can use the tokenization widget |
transaction_info
Transaction information.
| Name | Mandatory | Type | Description |
|---|---|---|---|
rrn | - | string | Retrieval Reference Number (a unique identifier generated for a bank transaction) |
arn | - | string | Acquirer Reference Number (a unique number assigned to credit card transactions) |
auth_code | - | string | Authorization code |
fp_message_id | - | string | Unique transaction identifier in FPS |
wallets
Your guarantee payment balance details (this balance is used to perform payouts).
| Name | Mandatory | Type | Description |
|---|---|---|---|
id | + | string | Balance identifier |
amount_details | + | object | Current balance |