Skip to content

🚀 HG.Cash Transaction API

Modern REST API for users to create outbound transactions from their accounts.

🔐 Authentication

This API uses Bearer Token authentication. Include your user API token in the Authorization header:

Authorization: Bearer cash_your_token_here

📊 Getting Started

  1. Generate your API token in the account settings page
  2. Test endpoints using the interactive documentation below
  3. Implement in your backend services (never expose tokens in frontend)
  4. Monitor your integration and handle errors appropriately

⚠️ Important Security Notes

  • Never share or expose your user API authentication token
  • Store tokens securely on your backend servers only
  • All API calls must be made from secure backend services
  • Contact administrators immediately if your token is compromised
Download OpenAPI description
Overview
HG.Cash API Support
License
Languages
Servers
Mock server
https://docs.hg.cash/_mock/openapi/
Production server
https://hg.cash/api/v1/
Development server
http://dev.hg.cash/api/v1/

Transactions

Transaction Management - Create and manage transactions in the HG.Cash system. All transaction endpoints require authentication.

Operations

Reference Data

Reference Data - Get reference data like transaction statuses and types. These endpoints require authentication.

Operations

Webhooks

Webhooks - Event notifications sent to your HTTP endpoint.

Webhooks

Transaction Request Status UpdatedWebhook

Request

HG.Cash will send this webhook when a transaction request status changes. The request body contains the request details and current status. You can provide a webhookUrl in the create request payload, or configure a default in user settings.

Security
bearerAuth
Bodyapplication/jsonrequired
idstring(uuid)required

Internal transaction ID

Example: "789e0123-e89b-12d3-a456-426614174999"
externalIDstringrequired

External ID provided when creating the transaction

Example: "TXN-2024-001234"
amountstringrequired

Transaction amount as a decimal string

Example: "15000.50"
currencystring^[A-Z]{3}$required

ISO 4217 currency code

Example: "ARS"
directionstringrequired

Transaction direction

Enum"Inbound""Outbound"
Example: "Inbound"
statusstringrequired

Current transaction request status

Example: "PENDING"
typestringrequired

Type of notification. Always "request" for transaction requests

Example: "request"
accountIdstring(uuid)required

HG.Cash account ID associated with the transaction

Example: "550e8400-e29b-41d4-a716-446655440123"
errorstring

Optional error message when status is ERROR

Example: "Insufficient funds on destination account"
errorCodestring

Machine-readable error code when status is ERROR

Enum"INSUFFICIENT_BALANCE""DESTINATION_ERROR"
Example: "INSUFFICIENT_BALANCE"
fromNamestring

Name of the sender

Example: "Juan Pérez"
toNamestring

Name of the recipient

Example: "María García"
fromCBUstring^\d{22}$

Sender CBU (22-digit). Sent as string.

Example: "1700015400000000000010"
toCBUstring^\d{22}$

Recipient CBU (22-digit). Sent as string.

Example: "1100015400000000000021"
toCVUstring^\d{22}$

Recipient CVU (22-digit). Sent as string.

Example: "0000003100012345678901"
fromCUITstring^\d{11}$

Sender CUIT/CUIL (11-digit). Sent as string.

Example: "20123456789"
toCUITstring^\d{11}$

Recipient CUIT/CUIL (11-digit). Sent as string.

Example: "27987654321"
conceptstring

Transaction concept or description

Example: "Payment for services"
coelsaCodestring

Coelsa transaction code

Example: "COELSA123456"
application/json
{ "id": "789e0123-e89b-12d3-a456-426614174999", "externalID": "REQ-2024-001234", "amount": "15000.50", "currency": "ARS", "direction": "Inbound", "status": "PENDING", "type": "request", "accountId": "550e8400-e29b-41d4-a716-446655440123", "fromName": "Juan Pérez", "toName": "María García", "fromCBU": "1700015400000000000010", "toCBU": "1100015400000000000021", "error": "Insufficient funds on destination account", "fromCUIT": "20123456789", "toCUIT": "27987654321", "concept": "Payment for services", "coelsaCode": "COELSA123456" }