1. Async
English
  • English
  • Español
  • API Docs Chile 🇨🇱
  • Online Payments
    • Release Notes
    • Kushki API errors
    • ISO errors
    • Card Payments
      • Request a card token
      • Make a charge or deferred charge
      • Create payment (tokenless)
      • Void a transaction
      • Refund a transaction
      • Request deferred options
      • Authorize payments
      • Preauthorization (tokenless)
      • Reauthorize payments
      • Capture an authorized payment
      • Verify Account
      • Validate OTP
      • Bin Info V2
      • Bin Info
      • Voucher
    • One-Click & Scheduled Payments
      • Request a recurring charge token
      • Create a recurring charge
      • Update recurring charge card data
      • Make an One-click payment
      • Cancel a recurring charge
      • Update a recurring charge
      • Add a temporary charge or discount
      • Authorize payments
      • Capture an authorized payment
      • Get recurring charge Info
    • Card Async
      • Request a card async token
      • Init Transaction
      • Authorize payments
      • Capture an authorized payment
      • Get Status
    • Async Card Recurring Charges
      • Request an async card recurring charge token
      • Init an async card recurring charge
      • Authorize payments
      • Capture an authorized payment
    • Chargebacks
      • Query Chargebacks
      • Request Chargeback Export
    • Transfer In
      • Get Bank List
      • Request a Transfer In token
      • Init Transaction
      • Get Status
    • Transfer Out
      • Get Bank List
      • Get Bank List V2
      • Request a Transfer Out token
      • Init Transaction
      • Get Status
      • Balance for Payouts
    • Cash In
      • Request a cash in token
      • Init Transaction
      • Transaction Status
    • Smartlinks V2
      • Create a Smartlink
      • Get a Smartlink
      • Delete a smartlink
      • Update a Smartlink
    • Payment Button
      • Create a payment button
    • Analytics
      • Get transactions list v2
    • Status
      • Get platform status
      • Get gateway status
    • Subscription Transactions
      • Get subscription transactions
    • Payment Credentials
      • Create a credential
      • Search credentials
      • Update credential
      • Regenerate a credential
      • Delete credential
      • Activate or deactivate
      • Advanced search
    • Settlement
      • Query settlement
    • Fraud Report
      • Query fraud alerts
  • API Raw Card Present Payments 🇨🇱
    • Release Notes
    • Error Catalog
    • Test Data
    • Key Exchange Process
    • The Amount Object
    • One-time payments
      • Single payment
    • Two-step-payments
      • Authorization and capture
    • Voids & Refunds
      • Refund a transaction
      • Void & Reverse
    • Card information
      • Get BIN Info
      • Bin Info V2
      • Request deferred options
    • Query Transactions
      • Transaction Search
    • Chargebacks
      • Query Chargebacks
      • Request Chargeback Export
    • Webhooks
      • Introduction
      • Good practices
      • Refunds
      • Card Payments
      • Check your webhooks
    • Fraud Report
      • Query fraud alerts
  • Kushki One
    • Release notes
    • Transaction Examples
    • Webhooks
    • Error Catalog
    • Cloud Services
      • Payment
        • Sync
          • Charge
          • Authorization (Pre-auth)
          • Capture
          • Re-authorization
          • Post-tip
          • Void
          • Abort
        • Search
          • Transaction Search
        • Async
          • Charge (Async)
          • Authorization — Pre-auth (Async)
          • Capture (Async)
          • Re-authorization (Async)
          • Post-tip (Async)
          • Void (Async)
      • Print
        • Create Print Job
        • Get Print Job Status
      • Diagnostics
      • Terminal info
      • Connection test
    • Local Services
      • Payment
        • Sync
          • Charge
          • Authorization (Pre-auth)
          • Capture
          • Re-authorization
          • Post-tip
          • Void
          • Abort
        • Search
          • Transaction Search — Online
          • Transaction Search — Local
        • Async
          • Charge (Async)
            POST
          • Authorization — Pre-auth (Async)
            POST
          • Capture (Async)
            POST
          • Re-authorization (Async)
            POST
          • Post-tip (Async)
            POST
          • Void (Async)
            POST
          • Abort (Async)
            GET
      • Print
        • Create Print Job
        • Get Print Job Status
        • Print Job Webhook (inbound — implemented by your POS)
      • Diagnostics
        • Connection test
        • Terminal info
  • Appian - Submerchant Register
    • Release notes
    • Submerchant Validation in Batch
    • Query submerchant status by requestId/submerchantId
    • Submerchant Document Upload
    • Get submerchantIds
    • Get credentials for submerchants
  • Schemas
    • RequestBodies
      • one-and-two-step-payment
    • documentType
    • Amount-cash-in
    • amount
    • Card
    • ChargebackListResponse
    • Channel
    • StatusComponent
    • SubscriptionTransactionsResponse
    • SettlementDateRangeRequest
    • PrintJobRequest
    • FraudAlertRequest
    • one-and-two-step-payment-1
    • one-and-two-step-payment-1
    • Card Present (CP)
    • TransactionResponse
    • networkToken
    • extra_taxes
    • ChargebackItem
    • SubscriptionTransaction
    • CommandText
    • FraudAlertResponse
    • Card Not Present (CNP)
    • one-and-two-step-payment-11
    • RawResponse
    • webhooks
    • card
    • Amount-CL
    • webhooksItem
    • ErrorResponse400
    • SettlementResponse
    • CommandColumns
    • FraudAlertRecord
    • CardData
    • headers
    • currency
    • Amount
    • card_details
    • ErrorResponse401
    • SettlementRecord
    • ColumnItem
    • ValidationError
    • LinkFailure
    • transactionType
    • enc_tlv
    • ErrorResponse403
    • ErrorResponse
    • CommandDivider
    • TransactionEvent
    • extraTaxes
    • Country
    • binInfo
    • Deferred
    • deferred
    • ErrorResponse500
    • payment_method
    • CommandFeed
    • TransactionStatus
    • SubscriptionUpdate
    • pos_details
    • CommandSpace
    • ReadingType
    • ContactDetails
    • Language
    • contact_details
    • sub_merchant
    • CommandCut
    • FailureReason
    • Subscription
    • metadata
    • CommandImage
    • EventTerminal
    • orderDetails
    • TransactionSearchRequest
    • CommandQR
    • EventOperation
    • Shipping Address
    • payment_submethod
    • CommandBarcode
    • EventAmount
    • Billing-Address
    • EventExtraTaxes
    • PrintJobAccepted
    • EventMetadata
    • PrinterError
    • threeDomainSecure
    • SubscriptionAdjustmentRequest
    • AmountWithTaxes
    • PrintJobStatus
    • PrintJobStatusRequest
    • webhooksChargeback
    • AmountCore
    • ExtraTaxes
    • PrintWebhookPayload
    • Metadata
    • citMit
    • AmountWithTip
    • TransactionSearchOnlineBody
    • TransactionSearchBody
    • AmountWithOptionalTip
    • TransactionSearchLocalBody
    • messageFields
    • TransactionEvent_2
    • UnexpectedErrorResponse
    • FailureReason_2
    • EventTerminal_2
    • ExternalReferenceId
    • EventOperation_2
    • ExternalSubscriptionId
    • EventAmount_2
    • EventExtraTaxes_2
    • EventMetadata_2
    • product
    • network
    • SettlementTicketRequest
    • TransactionEvent_21
    • TransactionStatus2
    • ReadingType3
    • FailureReason_24
    • EventTerminal_25
    • EventOperation_26
    • EventAmount_27
    • EventMetadata_28
    • EventExtraTaxes_29
    • PrintWebhookPayload10
    • TransactionEvent11
    • FailureReason12
    • EventTerminal13
    • EventOperation14
    • EventAmount15
    • EventMetadata16
    • EventExtraTaxes17
    • TransactionEvent_22
    • TransactionStatus3
    • ReadingType4
    • FailureReason_25
    • EventTerminal_26
    • EventOperation_27
    • EventAmount_28
    • EventMetadata_29
    • EventExtraTaxes_210
    • PrintWebhookPayload11
    • TransactionEvent12
    • FailureReason13
    • EventTerminal14
    • EventOperation15
    • EventAmount16
    • EventMetadata17
    • EventExtraTaxes18
HomePerú 🇵🇪México 🇲🇽Ecuador 🇪🇨Colombia 🇨🇴Chile 🇨🇱
HomePerú 🇵🇪México 🇲🇽Ecuador 🇪🇨Colombia 🇨🇴Chile 🇨🇱
Status
Soporte / Support
English
  • English
  • Español
  1. Async

Post-tip (Async)

Testing
UAT Testing Env
https://api-uat.kushkipagos.com
UAT Testing Env
https://api-uat.kushkipagos.com
POST
/terminal/v1/async/pos_tip
Same body as the sync variant plus events_webhook_url.
Returns 200 with a TERMINAL_ACKNOWLEDGED event as soon as the terminal accepts the payment intent. That acknowledgement is not the transaction result — the outcome, and every intermediate state, arrives as a POST to the events_webhook_url you supply. Omit the URL and the transaction still runs, but you never learn how it ended.

🚧 Beta — Early Access#

This API is in early access. Endpoints, parameters, and response structures
may change without prior notice. Do not deploy to production without
coordinating with the Kushki integration team.

What you encrypt#

The body you send is the encrypted envelope. This is the plaintext object you encrypt — the field contract, not what travels on the wire:
{
    "events_webhook_url": "https://api.negocio.cl/webhook/terminal-events",
    "amount": {
        "iva": 0,
        "subtotal_iva": 0,
        "subtotal_iva0": 45000,
        "tip": 5000,
        "extra_taxes": {
            "airport_tax": 0,
            "iac": 0,
            "ice": 0,
            "travel_agency": 0
        }
    },
    "client_transaction_id": "c5a3f3be-9d6f-4d39-8af5-58dbb589af79",
    "cashback_amount": 0
}
See Authentication and request encryption for the derivation chain and the seven steps.

Callbacks

transactionEvents

Request

Header Params

Body Params application/jsonRequired

Examples

Responses

🟢200OK
application/json
Accepted by the terminal. Returns a TERMINAL_ACKNOWLEDGED event immediately — this is not the transaction result. The outcome arrives via webhook.
Bodyapplication/json

🟠400Bad Request
🟠401Unauthorized
🟠409
🔴500Server Error
Request Request Example
Shell
JavaScript
Java
Swift
curl --location 'https://api-uat.kushkipagos.com/terminal/v1/async/pos_tip' \
--header 'Authorization: Basic 9f2c4e1b7a63d8f05c2e9b41a7d3086fbe15c4d29a7e0b38f6c1d52a94e7b3c0' \
--header 'timestamp: 1748476800' \
--header 'encrypted_http_communication: true' \
--header 'Content-Type: application/json' \
--data '{
    "data": "a3f14c7e9b02d85fbc1e46a9d370f28b:9e0d7f21c4a8b653e17d902fac48b5d6e83c1704a9f26db8"
}'
Response Response Example
200 - TERMINAL_ACKNOWLEDGED
{
    "event_id": "c08211a1-344c-4f1c-850b-41e33fb08cca",
    "previous_status": "",
    "occurred_at": "2026-08-03T20:53:34.859Z",
    "status": "TERMINAL_ACKNOWLEDGED",
    "merchant_id": "20000000109815430000",
    "client_transaction_id": "c5a3f3be-9d6f-4d39-8af5-58dbb589af79",
    "terminal": {
        "serialNumber": "TJ54241P20911",
        "model": "P2SE-BPKT",
        "wifiMac": "",
        "room": "3.0.10"
    },
    "operation": {
        "type": "charge",
        "amount": {
            "extraTaxes": {
                "airportTax": 0,
                "iac": 0,
                "ice": 0,
                "travelAgency": 0
            },
            "iva": 0,
            "subtotalIva": 0,
            "subtotalIva0": 12000
        },
        "clientTransactionId": "c5a3f3be-9d6f-4d39-8af5-58dbb589af79",
        "eventsWebHook": "https://api.negocio.cl/webhook/terminal-events",
        "metadata": {
            "customerEmail": "user@example.com",
            "device": "SUNMI-P3",
            "reference": "ORD-20240317-001"
        }
    }
}
Modified at 2026-10-07 15:32:42
Previous
Re-authorization (Async)
Next
Void (Async)
Built with