Payments
The Payments API enables you to simulate, initiate, and manage the lifecycle of a payment—from defining the flow to receiving real-time updates.
It provides a structured way to move funds from one or more origins to one or more destinations using a chosen method. The flow begins with defining the source (payment-origins) and destination (payment-destinations), optionally proceeds with a payment-attempt for simulation or validation, and then transitions to a payment for actual execution.
Payments can follow multi-step flows including authorization, capture, and receipt confirmation depending on the provider and method. Each stage is explicitly controlled via the API. Once the payment is confirmed by the provider, final reconciliation is handled separately in a settlement layer.
To support real-time processing, the client-url webhook endpoint allows your system to receive updates when a payment transitions between states, such as being authorized, captured, received, or failed.
Use this section to:
Define where money is coming from and going to.
Simulate and validate a payment attempt before execution.
Create, authorize, capture, and track payments.
Handle asynchronous provider notifications through webhooks.
GET /payment-origins
GET /payment-destinations
POST /payment-attempts
GET /payment-attempts
GET /payment-attempts/:id
GET /payments
GET /payments/:id
POST /payments
POST /payments/:id/authorized
POST /payments/:id/captured
POST /payments/:id/received
POST client-url
Schema representing a financial transaction, including details about the transaction's origins, destinations, amounts, fees, and status.
Unique identifier for the internal service.
External reference identifier for integrations.
Identifier linking the transaction to a specific user or organization.
External reference identifier for the identity associated with the transaction.
The account number involved in the transaction.
The total amount of the transaction.
Specifies the currency used, following the ISO 4217 standard for fiat currencies (e.g., CLP
, ARS
, MXN
). Go to the currencies page for the complete list of supported values.
A brief description of the transaction.
The product or service related to the transaction. purchaseCurrency:Currency
The current status of the transaction (e.g., PENDING, AUTHORIZED, CAPTURED, ATTEMPT, REFUNDED).
Indicates the purpose of the payment. This field defines how the payment should be processed within the system, based on its intent—such as funding an account, withdrawing funds, transferring between users, collecting funds, or applying fees. Go to the payment types page for the complete list of supported values.
The amount paid in the transaction.
Specifies the currency used, following the ISO 4217 standard for fiat currencies (e.g., CLP
, ARS
, MXN
). Go to the currencies page for the complete list of supported values.
Timestamp indicating when the transaction was created.
Timestamp indicating the last update to the transaction.
Timestamp indicating when the transaction expires, if applicable.
Timestamp indicating when the transaction was captured.
Timestamp indicating when the transaction was authorized.
Timestamp indicating when the transaction was refunded, if applicable.
Settlement period for the transaction.
The payment object
{
"id": "text",
"externalId": "text",
"identityId": "text",
"identityExternalId": "text",
"accountNumber": "text",
"totalAmount": "text",
"currency": "text",
"description": "text",
"product": "text",
"status": "text",
"type": "PURCHASE",
"purchaseAmount": "text",
"purchaseCurrency": "text",
"fees": [
{
"name": "text",
"type": "FIXED",
"value": "text",
"amount": "text",
"currency": "text"
}
],
"createdAt": "text",
"updatedAt": "text",
"expiresAt": "text",
"capturedAt": "text",
"authorizedAt": "text",
"refundedAt": "text",
"origins": [
{
"externalId": "text",
"name": "text",
"type": "PAYMENT_LINK",
"amount": "text",
"currency": "text",
"settlement": "text",
"fee": {
"name": "text",
"type": "FIXED",
"value": "text",
"amount": "text",
"currency": "text"
},
"identity": {},
"metadata": {
"image": "text",
"description": "text",
"category": "text"
},
"amountOut": "text",
"card": {
"holder": "text",
"scheme": "text",
"type": "text",
"mask": "text",
"country": "text",
"tokenized": "text"
}
}
],
"destinations": [
{
"externalId": "text",
"name": "text",
"type": "PAYMENT_LINK",
"amount": "text",
"currency": "text",
"settlement": "text",
"fee": {
"name": "text",
"type": "FIXED",
"value": "text",
"amount": "text",
"currency": "text"
},
"identity": {},
"metadata": {
"image": "text",
"description": "text",
"category": "text"
},
"amountOut": "text",
"card": {
"holder": "text",
"scheme": "text",
"type": "text",
"mask": "text",
"country": "text",
"tokenized": "text"
}
}
],
"settlement": "text"
}
Details about any fees applied to the transaction.
The name of the fee.
The type of fee applied (e.g., FIXED, PERCENTAGE).
The value of the fee.
The calculated amount of the fee.
Specifies the currency used, following the ISO 4217 standard for fiat currencies (e.g., CLP
, ARS
, MXN
). Go to the currencies page for the complete list of supported values.
The fee object
{
"name": "text",
"type": "FIXED",
"value": "text",
"amount": "text",
"currency": "text"
}
Last updated