Colombia - Card Payment
This section provides Colombia-specific information about using the Card Payment API to manage subscriptions with credit and debit cards.Availability
The Card Payment API is available in Colombia to process recurring payments with credit and debit cards issued by Colombian and international banks.Accepted Documents
To create subscriptions and process card payments in Colombia, the following document types are accepted:| Type | Description |
|---|---|
CC | Cédula de Ciudadanía |
CE | Cédula de Extranjería |
PPN | Pasaporte |
Supported Currencies
| Code | Currency |
|---|---|
COP | Colombian Peso |
Subscription Periodicity
Subscriptions in Colombia support the following periodicities:| Periodicity | Description |
|---|---|
monthly | Recurring monthly payments |
yearly | Recurring yearly payments |
custom | Custom periodicity according to configuration |
Workflow
1. Create Subscription
First, create a subscription by associating a card with a recurring payment plan. The card token must be obtained through the TumiPay SDK.2. Preauthorize Transactions
For each payment cycle, preauthorize the corresponding amount. This reserves funds without making the actual charge.3. Capture Transactions
Once preauthorized, capture the transaction to perform the actual charge to the customer’s card.4. Automatic Renewal
For recurring subscriptions, use the renewal preauthorization endpoint to process payments in each cycle.Special Considerations
3D Secure (3DS)
Some card transactions may require 3D Secure authentication. The system automatically handles this process when necessary.Transaction Limits
Transaction limits may vary depending on the card type and issuing bank. Contact the support team to learn about the specific limits applicable to your account.International Cards
Cards issued by international banks are accepted, as long as they are compatible with the processing networks available in Colombia.Examples
Create Subscription
cURL
Response
Webhooks
TumiPay Card Payments sends webhooks to notify your system about important events in the payment lifecycle. Webhooks allow you to receive real-time updates about transactions and subscriptions without polling the API.What are Webhooks?
Webhooks are HTTP callbacks that automatically notify your application when specific events occur, such as transaction authorizations, captures, or subscription status changes.
Available Events
TumiPay Card Payments sends webhooks for the following events in Colombia:Transaction Events
transaction.authorized- Transaction successfully authorizedtransaction.captured- Transaction successfully capturedtransaction.declined- Transaction declined by provider
Subscription Events
subscription.created- Subscription successfully createdsubscription.cancelled- Subscription cancelledsubscription.expired- Subscription expired
Webhook Configuration
Before receiving webhooks, you must configure your webhook endpoint. To configure webhooks for Card Payment, please contact the support team.How to Configure Webhooks
To set up webhook notifications, you need to:
- Contact Support: Send an email to [email protected] or request assistance through the support channel
- Provide Your Webhook URL: Your HTTPS endpoint where webhooks will be sent (must be publicly accessible)
- Receive Secret Key: You will receive a shared secret key used to sign and verify webhook payloads
- Activation: The support team will activate webhook delivery for your account
For webhook configuration assistance, contact:
- Support Email: [email protected]
- Technical Email: [email protected]
Security
All webhooks are signed using HMAC SHA256. You must verify the signature in theX-Webhook-Signature header before processing any webhook to ensure authenticity.
Idempotency
Webhooks include anidempotency_key in both the payload and the X-Idempotency-Key header. Use this key to detect and handle duplicate webhook deliveries.
Format: {event_type}:{entity_uuid}
Example: transaction.authorized:transaction-uuid-123
Retry Logic
If your endpoint doesn’t return a 2xx status code, TumiPay will automatically retry:- First retry: 60 seconds (1 minute)
- Second retry: 600 seconds (10 minutes)
- Third retry: 1800 seconds (30 minutes)
Example Webhook Payload
HTTP Headers
Every webhook request includes these headers:| Header | Description |
|---|---|
X-Webhook-Event | Event type identifier |
X-Webhook-Timestamp | ISO 8601 timestamp in UTC |
X-Webhook-Id | Unique identifier for this webhook |
X-Idempotency-Key | Key for duplicate detection |
X-Webhook-Signature | HMAC SHA256 signature for verification |
User-Agent | TumiPay-Webhooks/1.0 |
Complete Documentation
For detailed information about webhooks, including:- Complete signature verification examples (PHP, Node.js, Python)
- All event payload structures
- Best practices and implementation guides
- Complete webhook handler examples
Support
For more information or to resolve questions about using Card Payment in Colombia, contact the support team:- Email: [email protected]
- Technical email: [email protected]