Перейти до вмісту

Create subscription plan

POST
/api/subscriptions/v1/plans

Create a subscription plan.

object
name
required

Plan name.

string
Example
My plan name.
description

Description for the plan.

string
Example
My plan description
price
required

Plan price in main currency units. For example, value of 30 equals 30 UAH plan price.

integer format: decimal
Example
30
callbacks

A list of api keys and URLs for subscription update callbacks.

Array<object>
object
api_key
string
Example
1621d352-b5cc-4336-96b0-d7666a3d9b4f
url
string
Example
https://some-callback.url/process
currency
required

Currency in ISO 4217 format.

string
Example
UAH
platforms

A list of other platforms that can access this plan.

Array<string>
Example
[
"e4b10684-51fa-4206-8ce5-547e3764fc59",
"080e373e-468a-489d-a611-572dd5da4529"
]
frequency_type
required

The time interval type of a plan period. For example, to set a plan period for 4 weeks use frequency=4 and frequency_type=weekly.

string format: string
Allowed values: daily weekly monthly yearly
Example
weekly
frequency
required

The number of frequency_types in a single plan payment period. For example, to set a plan payment period for 4 weeks use frequency=4 and frequency_type=weekly.

integer
Example
4
duration_periods
required

The number of frequency_types in a plan duration period. For example, to set a plan duration period for 6 months use frequency=1, frequency_type=monthly, duration_periods=6.

integer
Example
6
start_date
required

Plan start date-time in RFC3339 format.

string format: date-time
Example
2025-07-16T12:00:03Z
end_date

Optional end date-time for the plan in RFC3339 format.

string format: date-time
Example
2026-02-13T17:50:02Z
object
created_at

Plan creation date-time in RFC3339 format. Time is returned in UTC timezone. Immutable.

string format: date-time
Example
2025-07-14T12:00:03Z
currency

Currency in ISO 4217 format.

string
Example
UAH
description

Description for the plan.

string
Example
My plan description
end_date

Optional end date for the plan in RFC3339 format, time is omitted.

string format: date-time
Example
2026-02-13T00:00:00Z
frequency_type

The time interval type of a plan period. For example, to set a plan period for 4 weeks use frequency=4 and frequency_type=weekly.

string format: string
Allowed values: daily weekly monthly yearly
Example
weekly
frequency

The number of frequency_types in a single plan payment period. For example, to set a plan payment period for 4 weeks use frequency=4 and frequency_type=weekly.

integer
Example
4
duration_periods

The number of frequency_types in a plan duration period. For example, to set a plan duration period for 6 months use frequency=1, frequency_type=monthly, duration_periods=6.

integer
Example
6
id

Plan identifier.

string format: uuid
Example
69b2e00f-b837-4cda-a0d8-2ae3ba431409
state
string format: string
Allowed values: active inactive
name

Plan name.

string
Example
My plan name.
platforms

A list of other platforms that can access this plan.

Array<string>
Example
[
"e4b10684-51fa-4206-8ce5-547e3764fc59",
"080e373e-468a-489d-a611-572dd5da4529"
]
price

Plan price in main currency units. For example, value of 30 equals 30 UAH plan price.

integer format: decimal
Example
30
start_date

Plan start date-time in RFC3339 format, time is omitted.

string format: date
Example
2025-07-14T00:00:00Z
updated_at

Last date-time of plan data update in RFC3339 format. Time is specified in UTC timezone.

string format: date-time
Example
2025-07-14T12:00:03Z
object
code
string
Allowed values: authorization_failed customer_auth_not_found request_failed internal_error access_not_allowed invalid_request_body payment_settings_not_found transaction_already_paid action_not_allowed action_already_done transaction_success_primary_not_found payment_method_not_allowed wallet_not_configured payment_method_already_confirmed payment_method_not_found invalid_card_token customer_auth_token_expired_or_invalid customer_profile_not_found customer_id_not_passed transaction_not_found waiting_for_verification transaction_amount_limit invalid_data transaction_declined authorization_error transaction_rejected transaction_successful anti_fraud_check card_not_supported confirmation_timeout invalid_card_data invalid_currency pending waiting_for_complete access_error card_expired receiver_info_error transaction_limit_exceeded transaction_not_supported 3ds_not_supported 3ds_required failed_to_create_transaction failed_to_finish_transaction insufficient_funds invalid_phone_number card_has_constraints pin_tries_exceeded session_expired timeout transaction_created waiting_for_redirect wrong_amount test_transaction subscription_successful unsubscribed_successfully wrong_pin wrong_authorization_code wrong_cavv wrong_cvv wrong_account_number confirm_required cvv_is_required confirmation_required sender_info_required missed_payout_method_data card_verification_required incorrect_refund_sum_or_currency payment_card_has_invalid_status wrong_card_number user_not_found failed_to_send_sms wrong_sms_password card_not_found payment_system_not_supported country_not_supported no_discount_found failed_to_load_wallet invalid_verification_code additional_information_is_pending transaction_is_not_recurring confirm_amount_cannot_be_more_than_the_transaction_amount card_bin_not_found currency_rate_not_found invalid_recipient_name daily_card_usage_limit_reached invalid_transaction_amount card_type_is_not_supported store_is_blocked store_is_not_active payment_method_not_found transaction_cannot_be_processed invalid_transaction_status public_key_not_found terminal_not_found fee_not_found failed_to_verify_card invalid_transaction_type restricted_ip invalid_token preauth_not_allowed token_does_not_exist reached_the_limit_of_attempts_for_ip card_branch_is_blocked card_branch_daily_limit_reached completion_limit_reached recurring_transactions_not_allowed transaction_is_canceled_by_payer payment_was_refunded card_is_lost_or_stolen plan_not_found plan_not_active plan_project_missing subscription_auto_renew_locked subscription_not_found subscription_not_active subscription_already_exists order_canceled
message
string
param
string
payment_id
string
type
string
Allowed values: invalid_request_error payment_method_error payment_settings_error payment_error api_error customer_error
error_id
string
object
code
string
Allowed values: authorization_failed customer_auth_not_found request_failed internal_error access_not_allowed invalid_request_body payment_settings_not_found transaction_already_paid action_not_allowed action_already_done transaction_success_primary_not_found payment_method_not_allowed wallet_not_configured payment_method_already_confirmed payment_method_not_found invalid_card_token customer_auth_token_expired_or_invalid customer_profile_not_found customer_id_not_passed transaction_not_found waiting_for_verification transaction_amount_limit invalid_data transaction_declined authorization_error transaction_rejected transaction_successful anti_fraud_check card_not_supported confirmation_timeout invalid_card_data invalid_currency pending waiting_for_complete access_error card_expired receiver_info_error transaction_limit_exceeded transaction_not_supported 3ds_not_supported 3ds_required failed_to_create_transaction failed_to_finish_transaction insufficient_funds invalid_phone_number card_has_constraints pin_tries_exceeded session_expired timeout transaction_created waiting_for_redirect wrong_amount test_transaction subscription_successful unsubscribed_successfully wrong_pin wrong_authorization_code wrong_cavv wrong_cvv wrong_account_number confirm_required cvv_is_required confirmation_required sender_info_required missed_payout_method_data card_verification_required incorrect_refund_sum_or_currency payment_card_has_invalid_status wrong_card_number user_not_found failed_to_send_sms wrong_sms_password card_not_found payment_system_not_supported country_not_supported no_discount_found failed_to_load_wallet invalid_verification_code additional_information_is_pending transaction_is_not_recurring confirm_amount_cannot_be_more_than_the_transaction_amount card_bin_not_found currency_rate_not_found invalid_recipient_name daily_card_usage_limit_reached invalid_transaction_amount card_type_is_not_supported store_is_blocked store_is_not_active payment_method_not_found transaction_cannot_be_processed invalid_transaction_status public_key_not_found terminal_not_found fee_not_found failed_to_verify_card invalid_transaction_type restricted_ip invalid_token preauth_not_allowed token_does_not_exist reached_the_limit_of_attempts_for_ip card_branch_is_blocked card_branch_daily_limit_reached completion_limit_reached recurring_transactions_not_allowed transaction_is_canceled_by_payer payment_was_refunded card_is_lost_or_stolen plan_not_found plan_not_active plan_project_missing subscription_auto_renew_locked subscription_not_found subscription_not_active subscription_already_exists order_canceled
message
string
param
string
payment_id
string
type
string
Allowed values: invalid_request_error payment_method_error payment_settings_error payment_error api_error customer_error
error_id
string
object
code
string
Allowed values: authorization_failed customer_auth_not_found request_failed internal_error access_not_allowed invalid_request_body payment_settings_not_found transaction_already_paid action_not_allowed action_already_done transaction_success_primary_not_found payment_method_not_allowed wallet_not_configured payment_method_already_confirmed payment_method_not_found invalid_card_token customer_auth_token_expired_or_invalid customer_profile_not_found customer_id_not_passed transaction_not_found waiting_for_verification transaction_amount_limit invalid_data transaction_declined authorization_error transaction_rejected transaction_successful anti_fraud_check card_not_supported confirmation_timeout invalid_card_data invalid_currency pending waiting_for_complete access_error card_expired receiver_info_error transaction_limit_exceeded transaction_not_supported 3ds_not_supported 3ds_required failed_to_create_transaction failed_to_finish_transaction insufficient_funds invalid_phone_number card_has_constraints pin_tries_exceeded session_expired timeout transaction_created waiting_for_redirect wrong_amount test_transaction subscription_successful unsubscribed_successfully wrong_pin wrong_authorization_code wrong_cavv wrong_cvv wrong_account_number confirm_required cvv_is_required confirmation_required sender_info_required missed_payout_method_data card_verification_required incorrect_refund_sum_or_currency payment_card_has_invalid_status wrong_card_number user_not_found failed_to_send_sms wrong_sms_password card_not_found payment_system_not_supported country_not_supported no_discount_found failed_to_load_wallet invalid_verification_code additional_information_is_pending transaction_is_not_recurring confirm_amount_cannot_be_more_than_the_transaction_amount card_bin_not_found currency_rate_not_found invalid_recipient_name daily_card_usage_limit_reached invalid_transaction_amount card_type_is_not_supported store_is_blocked store_is_not_active payment_method_not_found transaction_cannot_be_processed invalid_transaction_status public_key_not_found terminal_not_found fee_not_found failed_to_verify_card invalid_transaction_type restricted_ip invalid_token preauth_not_allowed token_does_not_exist reached_the_limit_of_attempts_for_ip card_branch_is_blocked card_branch_daily_limit_reached completion_limit_reached recurring_transactions_not_allowed transaction_is_canceled_by_payer payment_was_refunded card_is_lost_or_stolen plan_not_found plan_not_active plan_project_missing subscription_auto_renew_locked subscription_not_found subscription_not_active subscription_already_exists order_canceled
message
string
param
string
payment_id
string
type
string
Allowed values: invalid_request_error payment_method_error payment_settings_error payment_error api_error customer_error
error_id
string
object
code
string
Allowed values: authorization_failed customer_auth_not_found request_failed internal_error access_not_allowed invalid_request_body payment_settings_not_found transaction_already_paid action_not_allowed action_already_done transaction_success_primary_not_found payment_method_not_allowed wallet_not_configured payment_method_already_confirmed payment_method_not_found invalid_card_token customer_auth_token_expired_or_invalid customer_profile_not_found customer_id_not_passed transaction_not_found waiting_for_verification transaction_amount_limit invalid_data transaction_declined authorization_error transaction_rejected transaction_successful anti_fraud_check card_not_supported confirmation_timeout invalid_card_data invalid_currency pending waiting_for_complete access_error card_expired receiver_info_error transaction_limit_exceeded transaction_not_supported 3ds_not_supported 3ds_required failed_to_create_transaction failed_to_finish_transaction insufficient_funds invalid_phone_number card_has_constraints pin_tries_exceeded session_expired timeout transaction_created waiting_for_redirect wrong_amount test_transaction subscription_successful unsubscribed_successfully wrong_pin wrong_authorization_code wrong_cavv wrong_cvv wrong_account_number confirm_required cvv_is_required confirmation_required sender_info_required missed_payout_method_data card_verification_required incorrect_refund_sum_or_currency payment_card_has_invalid_status wrong_card_number user_not_found failed_to_send_sms wrong_sms_password card_not_found payment_system_not_supported country_not_supported no_discount_found failed_to_load_wallet invalid_verification_code additional_information_is_pending transaction_is_not_recurring confirm_amount_cannot_be_more_than_the_transaction_amount card_bin_not_found currency_rate_not_found invalid_recipient_name daily_card_usage_limit_reached invalid_transaction_amount card_type_is_not_supported store_is_blocked store_is_not_active payment_method_not_found transaction_cannot_be_processed invalid_transaction_status public_key_not_found terminal_not_found fee_not_found failed_to_verify_card invalid_transaction_type restricted_ip invalid_token preauth_not_allowed token_does_not_exist reached_the_limit_of_attempts_for_ip card_branch_is_blocked card_branch_daily_limit_reached completion_limit_reached recurring_transactions_not_allowed transaction_is_canceled_by_payer payment_was_refunded card_is_lost_or_stolen plan_not_found plan_not_active plan_project_missing subscription_auto_renew_locked subscription_not_found subscription_not_active subscription_already_exists order_canceled
message
string
param
string
payment_id
string
type
string
Allowed values: invalid_request_error payment_method_error payment_settings_error payment_error api_error customer_error
error_id
string