Send payment request
Payment Flow
The cloud terminal payment process involves communication between your system and the terminal:1. Payment Initiation (via API)
Your system initiates the payment remotely via the PayPay API:
- The system sends the request to the PayPay API:
 
Endpoint
POST /terminals/{uuid}/payments
Basic Example
{
  "amount": 100,
  "code": "sale-code",
  "summary": "sale-description"
}
Parameters
| Parameter | Type | Required | Description | 
|---|---|---|---|
uuid | string | ✅ Yes | UUID of the terminal to which the payment request will be sent | 
amount | integer | ✅ Yes | Amount | 
code | string | ❌ No | Code provided by the merchant, e.g., system order code | 
summary | string | ❌ No | Description provided by the merchant, e.g., system order description | 
- The PayPay API communicates with the terminal in a assíncrona;
 - The terminal receives and automatically displays the amount to the operator;
 
information
The terminal waits 1 minute for the card to be presented.
- The PayPay API returns the success or failure response of the asynchronous request, while the terminal waits for the card to be presented.
 
API Response
{
  "date": "2025-09-01T13:06:22+01:00",
  "success": true,
  "data": {
      "id": "1",
      "clientId": "502056800",
      "type": "payment",
      "amount": 100,
      "stateDetails": {
          "state": "pending_confirmation",
          "createdAt": "2025-09-01T13:06:22+01:00"
      },
      "paymentMethod": {
          "code": "CC",
          "type": "TPA"
      },
      "code": "order-code",
      "summary": "product-description",
      "availableMethods": [
        {
          "code": "CC",
          "type": "TPA",
          "name": "Credit\/Debit card Physical TPA"
        }
      ],
      "bankAccount": {
        "code": "O9uFVmSZ",
        "bankName": "Banco",
        "last4digits": "8513"
      },
      "createdAt": "2025-09-01T13:06:22+01:00",
      "updatedAt": "2025-09-01T13:06:22+01:00"
  }
}
Response Structure
| Field | Type | Description | 
|---|---|---|
id | string | PayPay Payment ID | 
clientId | string | Entity TIN associated with the payment | 
type | string | Operation Type | 
stateDetails.state | string | Payment Status | 
stateDetails.createdAt | datetime | Status Date | 
paymentMethod | object | Payment method selected for the payment | 
code | string | Code provided by the merchant | 
summary | string | Description provided by the merchant | 
availableMethods | object | Available payment methods for the payment | 
bankAccount | object | Identification of the bank that will receive the funds | 
createdAt | datetime | Record creation date | 
updatedAt | datetime | Date of last update | 
information
The response structure varies depending on the parameters sent in the request. For example, if you send customer information (customer) this is also returned.