Cryptomus Recurring Payments API
Create and manage recurring payment subscriptions
Create and manage recurring payment subscriptions
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/cryptomus-recurring-payments-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Cryptomus Exchange Recurring Payments API
description: 'Cryptomus is a cryptocurrency payment gateway providing REST APIs for accepting crypto payments, creating invoices, processing payouts, managing recurring billing, and accessing real-time exchange rate and market data across 100+ cryptocurrencies.
'
version: 1.0.0
contact:
name: Cryptomus Support
url: https://cryptomus.com/
termsOfService: https://cryptomus.com/terms
license:
name: Proprietary
url: https://cryptomus.com/privacy
servers:
- url: https://api.cryptomus.com/v1
description: Cryptomus API v1 (Merchant & Payout)
- url: https://api.cryptomus.com/v2
description: Cryptomus API v2 (Exchange & Market Data)
security:
- MerchantAuth: []
tags:
- name: Recurring Payments
description: Create and manage recurring payment subscriptions
paths:
/recurrence/create:
post:
operationId: createRecurringPayment
summary: Create a recurring payment
description: Create a recurring cryptocurrency payment subscription.
tags:
- Recurring Payments
parameters:
- in: header
name: sign
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- amount
- currency
- name
- period
properties:
amount:
type: string
description: Payment amount
currency:
type: string
description: Currency code
name:
type: string
minLength: 3
maxLength: 60
description: Subscription name
period:
type: string
enum:
- weekly
- monthly
- three_month
description: Billing period
to_currency:
type: string
description: Target cryptocurrency for conversion
order_id:
type: string
minLength: 1
maxLength: 100
description: Merchant order identifier
url_callback:
type: string
format: uri
description: Webhook endpoint for status updates
discount_days:
type: integer
minimum: 1
maximum: 365
description: Introductory discount period in days
discount_amount:
type: string
description: Discount amount in specified currency
additional_data:
type: string
description: Extra payment details
responses:
'200':
description: Recurring payment created
content:
application/json:
schema:
type: object
properties:
state:
type: integer
result:
$ref: '#/components/schemas/RecurringObject'
'422':
description: Validation error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/recurrence/info:
post:
operationId: getRecurringPaymentInfo
summary: Get recurring payment information
description: Retrieve details of a specific recurring payment.
tags:
- Recurring Payments
parameters:
- in: header
name: sign
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
format: uuid
description: Recurring payment UUID
order_id:
type: string
minLength: 1
maxLength: 128
description: Order ID (takes precedence if both provided)
responses:
'200':
description: Recurring payment information
content:
application/json:
schema:
type: object
properties:
state:
type: integer
result:
$ref: '#/components/schemas/RecurringObject'
'422':
description: Validation error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/recurrence/list:
post:
operationId: listRecurringPayments
summary: List recurring payments
description: Retrieve a paginated list of recurring payments.
tags:
- Recurring Payments
parameters:
- in: header
name: sign
required: true
schema:
type: string
- in: query
name: cursor
schema:
type: string
description: Pagination cursor
requestBody:
required: false
content:
application/json:
schema:
type: object
responses:
'200':
description: Recurring payments list
content:
application/json:
schema:
type: object
properties:
state:
type: integer
result:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/RecurringObject'
paginate:
$ref: '#/components/schemas/PaginateResult'
/recurrence/cancel:
post:
operationId: cancelRecurringPayment
summary: Cancel a recurring payment
description: Cancel an active recurring payment subscription.
tags:
- Recurring Payments
parameters:
- in: header
name: sign
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
format: uuid
description: Recurring payment UUID
order_id:
type: string
description: Order ID (takes precedence if both provided)
responses:
'200':
description: Recurring payment cancelled
content:
application/json:
schema:
type: object
properties:
state:
type: integer
result:
$ref: '#/components/schemas/RecurringObject'
'422':
description: Validation error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
components:
schemas:
RecurringObject:
type: object
properties:
uuid:
type: string
format: uuid
name:
type: string
order_id:
type: string
nullable: true
amount:
type: string
currency:
type: string
payer_currency:
type: string
payer_amount:
type: string
payer_amount_usd:
type: string
url_callback:
type: string
nullable: true
format: uri
discount_days:
type: string
discount_amount:
type: string
end_of_discount:
type: string
nullable: true
period:
type: string
enum:
- weekly
- monthly
- three_month
status:
type: string
enum:
- wait_accept
- active
- cancel_by_merchant
- cancel_by_user
url:
type: string
format: uri
last_pay_off:
type: string
nullable: true
PaginateResult:
type: object
properties:
count:
type: integer
description: Number of items on the current page
hasPages:
type: boolean
description: Whether multiple pages exist
nextCursor:
type: string
nullable: true
description: Cursor for the next page
previousCursor:
type: string
nullable: true
description: Cursor for the previous page
perPage:
type: integer
description: Maximum items per page
ErrorResponse:
type: object
properties:
state:
type: integer
description: Error state code (1 = error)
message:
type: string
errors:
type: object
additionalProperties:
type: array
items:
type: string
securitySchemes:
MerchantAuth:
type: apiKey
in: header
name: merchant
description: 'Merchant UUID from personal account settings. All requests also require a `sign` header computed as MD5(base64_encode(request_body) + API_KEY).
'