Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.compago.com/llms.txt

Use this file to discover all available pages before exploring further.

The List Payments endpoint allows you to retrieve a paginated list of payments across all organizations managed by your sales partner account. It supports a wide range of filters for building custom reports, dashboards, and integrations.

What You Can Do

With the List Payments endpoint, you can:
  • Query all payments across every organization in your sales partner account
  • Filter by status to track pending, confirmed, cancelled, or refunded payments
  • Filter by date range to generate period-based reports
  • Filter by organization to view payments for specific merchants
  • Search by text to find payments by amount or organization name
  • Paginate results using offset-based pagination for large datasets

Use Cases

  • Reconciliation dashboards: Pull payment data into your internal tools for reconciliation
  • Periodic reporting: Generate daily, weekly, or monthly payment reports filtered by date range
  • Organization monitoring: Track payment activity for specific organizations
  • Transaction lookup: Find specific payments by ID or operation code

Endpoint

GET /api/developer/payment
API Reference: GET /payment

Authentication

Include your API key in the request headers:
x-api-key: YOUR_API_KEY

Query Parameters

ParameterTypeDescription
idstringFilter by a specific payment ID (UUID)
statusstring | string[]Filter by status: PENDING, CANCELLED, CONFIRMED, REFUNDED
typestring | string[]Filter by type: CARD_NOT_PRESENT, CARD_PRESENT
financingMethodstring | string[]Filter by financing method: INSTALLMENTS, PAY_NOW
termsnumber | number[]Filter by number of installment terms (e.g. 3, 6, 12)
issuingBankstring | string[]Filter by the card’s issuing bank
organizationIdstring | string[]Filter by organization ID (UUID)
createdAtFromdateFilter payments created on or after this date
createdAtTodateFilter payments created on or before this date
operationCodeSearchstringSearch by operation code (partial match)
qstringFree text search (matches amount and organization name)
limitnumberNumber of results per page (default: 20, max: 100)
offsetnumberNumber of results to skip (default: 0)
Array parameters are passed by repeating the parameter: ?status=PENDING&status=CONFIRMED

Response Structure

The response contains a data array with payment objects and a pagination object:

Payment Object

FieldTypeDescription
idstringUnique payment identifier
statusstringPayment status: PENDING, CANCELLED, CONFIRMED, REFUNDED
typestringCARD_NOT_PRESENT or CARD_PRESENT
financingMethodstringINSTALLMENTS or PAY_NOW
operationCodenumberUnique operation code
amountnumberPayment amount
currencystringCurrency code (e.g. MXN)
termsnumberNumber of installment terms
periodicitystringInstallment periodicity (e.g. MONTHLY)
createdAtstringISO 8601 timestamp
organizationobjectOrganization id and name
cardInformationobject | nullCard details: lastFourDigits, networkType, issuingBank, fundingSource, entryMode
paymentDisbursementobject | nullFee breakdown and disbursement amounts
transactionobject | nullBank reference and processor response
terminalobject | nullPOS terminal details (only for card-present payments)
billingInformationobject | nullCustomer billing details captured at checkout
salespersonobject | nullSalesperson who processed the payment (POS only)
businessStoreBranchobject | nullStore branch where the payment was processed (POS only)

Payment Disbursement Object

The paymentDisbursement object contains the full fee breakdown:
FieldTypeDescription
feePercentagenumberTotal fee percentage
promotionFeeDiscountnumberFee discount from promotions
finalFeePercentageForMerchantnumberEffective merchant fee percentage
finalFeePercentageForManufacturernumberEffective manufacturer fee percentage
promotionBusinessTakenumberManufacturer’s promotion allocation percentage
feeAmountstringTotal fee amount
merchantFeeAmountstringMerchant’s fee amount
manufacturerFeeAmountstringManufacturer’s fee amount
merchantIvaFeeAmountstringIVA on merchant’s fee
manufacturerIvaFeeAmountstringIVA on manufacturer’s fee
totalFeeIvastringTotal IVA (16%) on the total fee
promotionTakeAmountstringAmount allocated to manufacturer from promotion
merchantTakeAmountstringNet amount the merchant receives
manufacturerTakeAmountstringNet amount the manufacturer receives

Card Information Object

The cardInformation object provides details about the card used for the payment:
FieldTypeDescription
lastFourDigitsstringMasked last four digits of the card number
networkTypestringCard network brand: VISA, MASTERCARD, AMEX, DISCOVER, UNKNOWN
issuingBankstring | nullName of the bank that issued the card
fundingSourcestring | nullFunding source: DEBIT or CREDIT
entryModestring | nullHow the card was captured: MAGNETIC, CHIP, CONTACTLESS

Transaction Object

The transaction object provides details about the payment transaction:
FieldTypeDescription
bankReferencestring | nullBank reference number
rawResponseTextstring | nullResponse text from the payment processor
authResultstring | nullAuthorization result code
createdAtstringISO 8601 timestamp of the transaction
authCodestring | nullAuthorization code returned by the card network
resultCodestring | nullProcessor result code for the transaction

Terminal Object

The terminal object is populated for card-present payments and identifies the POS terminal used to capture the charge:
FieldTypeDescription
serialNumberstringSerial number of the POS terminal

Billing Information Object

The billingInformation object contains the customer details captured at checkout:
FieldTypeDescription
emailstringCustomer email address
firstNamestringCustomer first name
lastNamestringCustomer last name
phoneNumberstringCustomer phone number
addressobject | nullCustomer billing address with addressLine, city, state, and zip

Salesperson Object

The salesperson object identifies the salesperson who processed the payment on a POS device:
FieldTypeDescription
idstringUnique identifier of the salesperson
namestringDisplay name of the salesperson
usernamestringUsername used by the salesperson to sign in on POS apps

Business Store Branch Object

The businessStoreBranch object identifies the store branch where the payment was processed:
FieldTypeDescription
idstringUnique identifier of the store branch
namestringDisplay name of the store branch

Examples

Basic Request

curl -H "x-api-key: YOUR_API_KEY" \
  "https://api.honor.compago.com/api/developer/payment?limit=10"

Filter by Status

# Single status
curl -H "x-api-key: YOUR_API_KEY" \
  "https://api.honor.compago.com/api/developer/payment?status=CONFIRMED"

# Multiple statuses
curl -H "x-api-key: YOUR_API_KEY" \
  "https://api.honor.compago.com/api/developer/payment?status=PENDING&status=CONFIRMED"

Filter by Date Range

curl -H "x-api-key: YOUR_API_KEY" \
  "https://api.honor.compago.com/api/developer/payment?createdAtFrom=2026-03-01&createdAtTo=2026-03-31"

Filter by Organization

curl -H "x-api-key: YOUR_API_KEY" \
  "https://api.honor.compago.com/api/developer/payment?organizationId=11111111-2222-3333-4444-555555555555"

Lookup by Payment ID

curl -H "x-api-key: YOUR_API_KEY" \
  "https://api.honor.compago.com/api/developer/payment?id=aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"

Combined Filters with Pagination

curl -H "x-api-key: YOUR_API_KEY" \
  "https://api.honor.compago.com/api/developer/payment?status=CONFIRMED&type=CARD_NOT_PRESENT&terms=3&limit=20&offset=40"

Example Response

{
  "data": [
    {
      "id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
      "status": "CONFIRMED",
      "type": "CARD_NOT_PRESENT",
      "financingMethod": "INSTALLMENTS",
      "operationCode": 10000000001,
      "amount": 1500,
      "currency": "MXN",
      "terms": 6,
      "periodicity": "MONTHLY",
      "createdAt": "2026-01-15T10:30:00.000Z",
      "organization": {
        "id": "11111111-2222-3333-4444-555555555555",
        "name": "Acme Store"
      },
      "cardInformation": {
        "lastFourDigits": "**89",
        "networkType": "VISA",
        "issuingBank": "Bank of Example",
        "fundingSource": "CREDIT",
        "entryMode": "CHIP"
      },
      "paymentDisbursement": {
        "feePercentage": 3.5,
        "promotionFeeDiscount": 0,
        "finalFeePercentageForMerchant": 3.5,
        "finalFeePercentageForManufacturer": 0,
        "promotionBusinessTake": 0,
        "feeAmount": "52.50",
        "merchantFeeAmount": "52.50",
        "manufacturerFeeAmount": "0.00",
        "merchantIvaFeeAmount": "8.40",
        "manufacturerIvaFeeAmount": "0.00",
        "totalFeeIva": "8.40",
        "promotionTakeAmount": "0.00",
        "merchantTakeAmount": "1439.10",
        "manufacturerTakeAmount": "0.00"
      },
      "transaction": {
        "bankReference": "123456789012",
        "rawResponseText": "Approved",
        "authResult": null,
        "createdAt": "2026-01-15T10:30:45.000Z",
        "authCode": "123456",
        "resultCode": "00"
      },
      "terminal": {
        "serialNumber": "TERM-00000001"
      },
      "billingInformation": {
        "email": "customer@example.com",
        "firstName": "Jane",
        "lastName": "Doe",
        "phoneNumber": "+5215555555555",
        "address": {
          "addressLine": "Calle Example 123",
          "city": "Ciudad de Mexico",
          "state": "CDMX",
          "zip": "01000"
        }
      },
      "salesperson": {
        "id": "dddddddd-eeee-ffff-0000-111111111111",
        "name": "Maria Garcia",
        "username": "maria.garcia"
      },
      "businessStoreBranch": {
        "id": "eeeeeeee-ffff-0000-1111-222222222222",
        "name": "Polanco Branch"
      }
    }
  ],
  "pagination": {
    "limit": 10,
    "offset": 0,
    "count": 1
  }
}

Pagination

The API uses offset-based pagination. Use limit and offset to navigate through results.
# Page 1 (first 20 results)
?limit=20&offset=0

# Page 2 (results 21-40)
?limit=20&offset=20

# Page 3 (results 41-60)
?limit=20&offset=40
The pagination.count field in the response tells you how many results were returned in the current page. If count is less than limit, you have reached the last page.

Important Notes

Security Scope

All requests are automatically scoped to your sales partner account. You can only access payments belonging to organizations under your account, regardless of the filters you apply. The organizationId filter lets you narrow results further, but it cannot access organizations outside your scope.

Date Filtering

Date range filters (createdAtFrom, createdAtTo) use Mexico City timezone (CST/CDT). The filter is inclusive: createdAtFrom matches from the start of the given day, and createdAtTo matches until the end of the given day.

Error Handling

Status CodeDescriptionSolution
400Invalid query parametersCheck enum values, UUID format, and date format
401Missing or invalid API keyVerify your API key is correct and included in the x-api-key header

Example Validation Error

curl -H "x-api-key: YOUR_API_KEY" \
  "https://api.honor.compago.com/api/developer/payment?status=INVALID"
{
  "success": false,
  "error": {
    "issues": [
      {
        "code": "invalid_enum_value",
        "options": ["PENDING", "CANCELLED", "CONFIRMED", "REFUNDED"],
        "path": ["status"],
        "message": "Invalid enum value"
      }
    ]
  }
}