Skip to main content
POST
Create a new subscription for recurring payments with credit or debit card. This endpoint allows you to associate a card with a subscription plan, defining the periodicity of recurring payments (monthly, yearly, or custom).

Required Headers

string
required
Merchant authentication token
string
required
Basic authentication (Basic Auth)
string
required
Unique identifier of the merchant invoking Card Payment services
string
required
Unique tracking identifier for the request
string
required
Must be “application/json”

Request Body Parameters

string
required
Token of the card associated with the subscription. This token is obtained through the TumiPay SDK.
string
required
Identifier name of the subscription plan (e.g., “Premium Plan”, “Basic Plan”).
string
required
Periodicity of recurring payments. Possible values:
  • monthly: Monthly payments
  • yearly: Yearly payments
  • custom: Custom periodicity according to plan configuration
object
required
string
required
Subscription start date in YYYY-MM-DD format (e.g., “2026-01-01”).

Validation Rules

Required Fields

Allowed Values

periodicity

  • daily
  • weekly
  • biweekly
  • monthly
  • threefortnights
  • bimonthly
  • quarterly
  • fourmonths
  • halfyearly
  • yearly
  • custom
  • CC - Cédula de Ciudadanía
  • CE - Cédula de Extranjería
  • NIT - Número de Identificación Tributaria
  • TI - Tarjeta de Identidad
  • PAS - Pasaporte

customer_data.phone_code

  • +57 - Colombia

Common Validation Error Messages

The following are common validation error messages returned by the API (in Spanish):
  • :attribute es obligatorio. - Required field missing
  • :attribute debe ser una cadena de texto. - Invalid data type (expected string)
  • :attribute debe ser un número. - Invalid data type (expected numeric)
  • :attribute debe ser un arreglo. - Invalid data type (expected array)
  • :attribute debe ser una dirección de correo electrónico válida. - Invalid email format
  • :attribute no puede tener más de :max caracteres. - Maximum length exceeded
  • :attribute debe ser mayor o igual a :min. - Minimum value not met
  • :attribute debe tener el formato YYYY-MM-DD. - Invalid date format
  • :attribute no es válido. - Invalid value

Response Fields

Success Response (200 OK)

string
required
Response code. Value: "CREATED" when the subscription is created successfully
boolean
required
Operation status. true when successful, false when there is an error
string
required
Descriptive message about the operation result
object
required

HTTP Status Codes

Response Codes

Headers

X-Merchant-ID
string
required

Unique identifier of the Merchant invoking Card Payment services. Should not be used to authenticate end users.

X-Request-ID
string
required

Tracking identifier associated with the request, used to establish a correlation_id between ecosystem components.

Token-Top
string
required

Token for authentication.

Authorization
string
required

Basic authentication.

Body

application/json
token
string
required
Example:

"card_token_abc123"

plan_name
string
required
Example:

"Plan Premium"

periodicity
enum<string>
required
Available options:
daily,
weekly,
biweekly,
monthly,
threefortnights,
bimonthly,
quarterly,
fourmonths,
halfyearly,
yearly,
custom
Example:

"monthly"

customer_data
object
required
start_date
string<date>
required
Example:

"2026-01-01"

Response

Subscription created successfully or business error. Check 'status' field in the body.

Response when creating a subscription. The 'status' field can be true (success) or false (business error) even with HTTP 200.

code
string
required

Response code. Values: 'CREATED' (success), 'SUBSCRIPTION_CREATION_FAILED' (business error)

Example:

"CREATED"

status
boolean
required

Operation status. true for success, false for error

Example:

true

message
string
required

Descriptive message about the result

Example:

"Suscripción creada exitosamente"

data
object