PPRO Authorization Endpoints API

The Authorization Endpoints API from PPRO — 5 operation(s) for authorization endpoints.

Business capability
Card Transaction Processing Management BC-1340.70

Operations 7

POST /v1/payment-agreements/{agreementId}/authorizations Update authorization #
GET /v1/payment-charges List payment charges #
POST /v1/payment-charges Create a payment charge #
GET /v1/payment-charges/{paymentChargeId}/authorizations List authorizations #
POST /v1/payment-charges/{paymentChargeId}/authorizations Update authorization #
GET /v1/payment-charges/{paymentChargeId} Get Payment Charge #
GET /v1/payment-charges/{paymentChargeId}/authorizations/{authorizationId} Get authorization #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ppro-authorization-endpoints-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ppro-authorization-endpoints-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Ppro Authorization Endpoints API
  version: v1
  description: 'Operations tagged Authorization Endpoints across 2 of this provider''s published API definitions: ppro-payment-agreements-openapi.yml, ppro-payment-charges-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.sandbox.eu.ppro.com
  description: Production - Sandbox environment for integration testing
- url: https://api.qa.eu.ppro.com/v1/payment-agreements
  description: QA
- url: https://api.eu.ppro.com
  description: Production endpoint for EU customers
security:
- bearer_token: []
tags:
- name: Authorization Endpoints
paths:
  /v1/payment-agreements/{agreementId}/authorizations:
    post:
      tags:
      - Authorization Endpoints
      summary: Update authorization
      description: Provide additional data required to proceed with the authorization.
      operationId: confirm
      parameters:
      - name: agreementId
        in: path
        required: true
        schema:
          type: string
      - name: Merchant-Id
        in: header
        description: The merchant identifier.
        required: true
        schema:
          type: string
        example: merch_cb6RQnZbBwSBkn34QYXhr
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfirmationRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ConfirmationResponse'
    servers:
    - url: https://api.sandbox.eu.ppro.com
      description: Production - Sandbox environment for integration testing
    - url: https://api.qa.eu.ppro.com/v1/payment-agreements
      description: QA
  /v1/payment-charges:
    get:
      tags:
      - Authorization Endpoints
      summary: List payment charges
      description: Returns all payment charges that match the given search criteria.
      operationId: searchPaymentCharge
      parameters:
      - name: merchantPaymentChargeReference
        in: query
        required: false
        schema:
          type: string
      - name: agreementId
        in: query
        required: false
        schema:
          type: string
      - name: page
        in: query
        required: false
        schema:
          type: string
      - name: Merchant-Id
        in: header
        description: The merchant identifier.
        required: true
        schema:
          type: string
        example: merch_cb6RQnZbBwSBkn34QYXhr
      - name: Request-Reference
        in: header
        description: Unique request reference to facilitate debugging.
        schema:
          type: string
        example: abc-unique-value-for-tracing
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/GetPaymentChargesResponse'
        '409':
          description: Duplicate request received with the same idempotency key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionResponseBody'
        '504':
          description: Call to the upstream dependency timed out.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionResponseBody'
    post:
      tags:
      - Authorization Endpoints
      summary: Create a payment charge
      description: Creates a payment charge.
      operationId: authorize
      parameters:
      - name: Merchant-Id
        in: header
        description: The merchant identifier.
        required: true
        schema:
          type: string
        example: merch_cb6RQnZbBwSBkn34QYXhr
      - name: Request-Reference
        in: header
        description: Unique request reference to facilitate debugging.
        schema:
          type: string
        example: abc-unique-value-for-tracing
      - name: Request-Idempotency-Key
        in: header
        description: Optional Idempotency Key for the request. Sending duplicate requests will result in 409 HTTP status code.
        schema:
          type: string
        example: xyz-unique-value-for-idempotency
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthorizationRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/PaymentChargeResponse'
        '409':
          description: Duplicate request received with the same idempotency key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionResponseBody'
        '504':
          description: Call to the upstream dependency timed out.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionResponseBody'
    servers:
    - url: https://api.sandbox.eu.ppro.com
      description: Production - Sandbox environment for integration testing
    - url: https://api.eu.ppro.com
      description: Production endpoint for EU customers
  /v1/payment-charges/{paymentChargeId}/authorizations:
    get:
      tags:
      - Authorization Endpoints
      summary: List authorizations
      description: Returns all authorizations associated with the payment charge.
      operationId: getAuthorizations
      parameters:
      - name: paymentChargeId
        in: path
        required: true
        schema:
          type: string
      - name: Merchant-Id
        in: header
        description: The merchant identifier.
        required: true
        schema:
          type: string
        example: merch_cb6RQnZbBwSBkn34QYXhr
      - name: Request-Reference
        in: header
        description: Unique request reference to facilitate debugging.
        schema:
          type: string
        example: abc-unique-value-for-tracing
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/GetAuthorizationsResponse'
        '409':
          description: Duplicate request received with the same idempotency key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionResponseBody'
        '504':
          description: Call to the upstream dependency timed out.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionResponseBody'
    post:
      tags:
      - Authorization Endpoints
      summary: Update authorization
      description: Provide additional data required to proceed with the authorization.
      operationId: confirm
      parameters:
      - name: paymentChargeId
        in: path
        required: true
        schema:
          type: string
      - name: Merchant-Id
        in: header
        description: The merchant identifier.
        required: false
        schema:
          type: string
        example: merch_cb6RQnZbBwSBkn34QYXhr
      - name: Request-Reference
        in: header
        description: Unique request reference to facilitate debugging.
        schema:
          type: string
        example: abc-unique-value-for-tracing
      - name: Request-Idempotency-Key
        in: header
        description: Optional Idempotency Key for the request. Sending duplicate requests will result in 409 HTTP status code.
        schema:
          type: string
        example: xyz-unique-value-for-idempotency
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfirmationRequest_2'
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/PaymentChargeAuthorizationResponse'
        '409':
          description: Duplicate request received with the same idempotency key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionResponseBody'
        '504':
          description: Call to the upstream dependency timed out.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionResponseBody'
    servers:
    - url: https://api.sandbox.eu.ppro.com
      description: Production - Sandbox environment for integration testing
    - url: https://api.eu.ppro.com
      description: Production endpoint for EU customers
  /v1/payment-charges/{paymentChargeId}:
    get:
      tags:
      - Authorization Endpoints
      summary: Get Payment Charge
      description: Returns the payment charge, given the charge ID.
      operationId: getPaymentCharge
      parameters:
      - name: paymentChargeId
        in: path
        required: true
        schema:
          type: string
      - name: Merchant-Id
        in: header
        description: The merchant identifier.
        required: true
        schema:
          type: string
        example: merch_cb6RQnZbBwSBkn34QYXhr
      - name: Request-Reference
        in: header
        description: Unique request reference to facilitate debugging.
        schema:
          type: string
        example: abc-unique-value-for-tracing
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/PaymentChargeResponse'
        '409':
          description: Duplicate request received with the same idempotency key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionResponseBody'
        '504':
          description: Call to the upstream dependency timed out.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionResponseBody'
    servers:
    - url: https://api.sandbox.eu.ppro.com
      description: Production - Sandbox environment for integration testing
    - url: https://api.eu.ppro.com
      description: Production endpoint for EU customers
  /v1/payment-charges/{paymentChargeId}/authorizations/{authorizationId}:
    get:
      tags:
      - Authorization Endpoints
      summary: Get authorization
      description: Returns a specific authorization operation associated with the payment charge
      operationId: getAuthorization
      parameters:
      - name: paymentChargeId
        in: path
        required: true
        schema:
          type: string
      - name: authorizationId
        in: path
        required: true
        schema:
          type: string
      - name: Merchant-Id
        in: header
        description: The merchant identifier.
        required: true
        schema:
          type: string
        example: merch_cb6RQnZbBwSBkn34QYXhr
      - name: Request-Reference
        in: header
        description: Unique request reference to facilitate debugging.
        schema:
          type: string
        example: abc-unique-value-for-tracing
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/PaymentChargeAuthorizationResponse'
        '409':
          description: Duplicate request received with the same idempotency key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionResponseBody'
        '504':
          description: Call to the upstream dependency timed out.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionResponseBody'
    servers:
    - url: https://api.sandbox.eu.ppro.com
      description: Production - Sandbox environment for integration testing
    - url: https://api.eu.ppro.com
      description: Production endpoint for EU customers
components:
  schemas:
    ProcessingFailure:
      type: object
      properties:
        failureType:
          type: string
          description: The failure type.
          enum:
          - INTERNAL_ERROR
          - INTERNAL_DECLINE
          - PROVIDER_ERROR
          - PROVIDER_DECLINE
        failureCode:
          type: string
          description: The failure code.
        providerFailureCode:
          type: string
          description: The payment provider failure code.
        failureMessage:
          type: string
          description: The failure message.
        isRetryable:
          type: boolean
          description: Indicates whether the merchant should create a fresh new attempt, where initiating a fresh new attempt at a later time may potentially result in a successful outcome.
        additionalData:
          $ref: '#/components/schemas/AdditionalData'
    AdditionalData:
      type: object
      properties:
        merchantAdviceCode:
          type: string
          description: Merchant Advice Code (MAC) returned by the payment network on decline, indicating whether and when the payment may be retried.
        merchantAdviceCodeText:
          type: string
          description: Human-readable explanation of the Merchant Advice Code (MAC).
    AuthenticationResult:
      type: object
      properties:
        type:
          type: string
          description: The type of authentication result
          enum:
          - APP_NOTIFICATION
          - MULTI_FACTOR
        details:
          type: object
          additionalProperties: {}
          description: A map containing the authentication result details which format is understood by the payment processor of the associated payment method
      required:
      - details
    ConfirmationResponse:
      type: object
      properties:
        id:
          type: string
          description: The notification identifier.
        agreementStatus:
          type: string
          description: Resulting payment-agreement status after processing the notification.
          enum:
          - INITIALIZING
          - AUTHENTICATION_PENDING
          - AUTHORIZATION_PROCESSING
          - ACTIVE
          - REVOKED_BY_CONSUMER
          - REVOKED_BY_MERCHANT
          - REVOKED_BY_PROVIDER
          - FAILED
        failure:
          $ref: '#/components/schemas/ProcessingFailure'
          description: The processing failure if the notification operation failed.
        createdAt:
          type: string
          format: date-time
          description: The notification timestamp in ISO 8601 format.
          example: '2023-03-26T20:24:27.123Z'
    ConfirmationRequest:
      type: object
      properties:
        authenticationResult:
          $ref: '#/components/schemas/AuthenticationResult'
          description: 'The outcome of processing the payment authentication challenge (eg: a payment provider generated token or a 3DS challenge response).'
          example:
            type: APP_NOTIFICATION
            details:
              instrumentProviderIdentity: '+34700000000'
    RawCardInstrument:
      allOf:
      - $ref: '#/components/schemas/PaymentInstrument'
      - properties:
          details:
            description: The card details
            properties:
              brand:
                description: The card brand.<br>The value must be provided in uppercase.
                example: VISA
              number:
                description: The primary account number (PAN) of the card used for the payment.
                example: '4444333322221111'
              cvv:
                description: Card Verification Value used to authenticate the card during a payment.
                example: '123'
              holderName:
                description: The full name of the cardholder as it appears on the card.
                example: John Smith
              expiryMonth:
                format: int32
                description: The two-digit expiration month of the card.
                example: '1'
                maximum: 12
                minimum: 1
              expiryYear:
                format: int32
                description: The four-digit expiration year of the card.
                example: '2031'
                minimum: 2000
            required:
            - expiryMonth
            - expiryYear
            - holderName
            - number
          validate:
            description: If included, PPRO will try to validate the instrument with a nominal-amount authorization. If validation fails, the instrument creation request will fail
            properties:
              currency:
                description: ISO 4217 3-letter currency code.
                example: EUR
                maxLength: 3
                minLength: 3
              taxIdentification:
                description: The consumer's tax identification number, like CUIT in Argentina, CPF in Brazil, RUT in Chile, NIF in Spain or Portugal, Numéro fiscal in France, and Codice Fiscale in Italy, or the equivalent tax identifier applicable in the consumer's country.
                example: '798154336790'
            required:
            - currency
          type:
            description: The `RAW_CARD` payment instrument type.
            enum:
            - RAW_CARD
      required:
      - details
      title: Payment Instrument (RAW_CARD)
    AppIntentAuthenticationSettings:
      allOf:
      - $ref: '#/components/schemas/AuthenticationSettings'
      - type: object
        properties:
          settings:
            $ref: '#/components/schemas/AppIntentAuthenticationSettingsDetails'
            description: The `APP_INTENT` authentication type.
          type:
            type: string
            description: The APP_INTENT authentication type.
            enum:
            - APP_INTENT
    ScanCodeAuthenticationSettingsDetails:
      type: object
      properties:
        scanBy:
          type: string
          format: date-time
          description: The date and time at which the associated code expires. Must be provided in ISO 8601 format.
          example: '2022-11-03T11:23:47.123Z'
    MultiFactorAuthenticationDetails: {}
    PaymentChargeCaptureResponse:
      type: object
      properties:
        id:
          type: string
          description: The capture identifier.
          example: 5c019979-0751-469e-96e0-b67f1d95c577
        amount:
          type: integer
          format: int64
          description: The capture amount in the payment charge currency's smallest unit.
          example: 1000
        status:
          type: string
          description: The capture status.
          enum:
          - CAPTURED
          - FAILED
        merchantCaptureReference:
          type: string
          description: The merchant provided capture reference.
          example: 5c019979-0751-469e-96e0-b67f1d95c577
        failure:
          $ref: '#/components/schemas/GatewayProcessingFailureResponse'
          description: The capture processing failure if the capture operation failed.
        createdAt:
          type: string
          format: date-time
          description: The capture creation timestamp in ISO 8601 format.
          example: '2022-11-03T11:23:47.123Z'
        updatedAt:
          type: string
          format: date-time
          description: The capture update timestamp in ISO 8601 format.
          example: '2022-11-03T11:23:47.123Z'
        labels:
          type: object
          additionalProperties:
            type: string
          description: Custom labels associated with the capture.
          example:
            consumer_origin: GTM_Campaign
        _links:
          $ref: '#/components/schemas/Links'
          readOnly: true
    RedirectAuthenticationSettings:
      allOf:
      - $ref: '#/components/schemas/AuthenticationSettings'
      - type: object
        properties:
          settings:
            $ref: '#/components/schemas/RedirectAuthenticationSettingsDetails'
            description: The REDIRECT authentication settings.
          type:
            type: string
            description: The `REDIRECT` authentication type.
            enum:
            - REDIRECT
    AppNotificationAuthenticationSettingsDetails:
      type: object
      properties:
        instrumentProviderIdentity:
          type: string
          description: App identifier, for instance email, phone number
          example: '+34700000000'
    IndustryData:
      discriminator:
        propertyName: type
      properties:
        type:
          type: string
      required:
      - type
    AuthenticationResult_2:
      type: object
      properties:
        type:
          type: string
          description: The type of authentication result
        details:
          type: object
          additionalProperties: {}
          description: A map containing the authentication result details which format is understood by the payment processor of the associated payment method
      required:
      - details
    RedirectAuthenticationSettingsDetails:
      type: object
      properties:
        returnUrl:
          type: string
          description: The URL to which the consumer is redirected after completing an action, such as a payment or authentication flow.
          example: https://www.webshop.com/order-results-page
    BancontactAccountInstrument:
      allOf:
      - $ref: '#/components/schemas/PaymentInstrument'
      - type: object
        properties:
          details:
            $ref: '#/components/schemas/BancontactAccountDetails'
            description: The bancontact account details
          type:
            type: string
            description: The `BANCONTACT_ACCOUNT` payment instrument type.
            enum:
            - BANCONTACT_ACCOUNT
      title: Payment Instrument (BANCONTACT_ACCOUNT)
    PaymentChargeDiscardResponse:
      type: object
      properties:
        id:
          type: string
          description: The discard identifier.
          example: 5c019979-0751-469e-96e0-b67f1d95c577
        status:
          type: string
          description: The discard status.
          enum:
          - DISCARDED
          - FAILED
        merchantDiscardReference:
          type: string
          description: The merchant provided discard reference.
          example: 5c019979-0751-469e-96e0-b67f1d95c577
        type:
          type: string
          description: The type of the discard.
          enum:
          - AUTHENTICATION_TIMEOUT
          - PROVIDER_CONFIRMATION_TIMEOUT
          - MERCHANT_INITIATED_DISCARD
          example: MERCHANT_INITIATED_DISCARD
        failure:
          $ref: '#/components/schemas/GatewayProcessingFailureResponse'
          description: The discard processing failure if the discard operation failed.
        createdAt:
          type: string
          format: date-time
          description: The discard creation timestamp in ISO 8601 format.
          example: '2022-11-03T11:23:47.123Z'
        updatedAt:
          type: string
          format: date-time
          description: The discard update timestamp in ISO 8601 format.
          example: '2022-11-03T11:23:47.123Z'
        _links:
          $ref: '#/components/schemas/Links'
          readOnly: true
    CardNetworkTokenDetails:
      type: object
      properties:
        brand:
          type: string
          description: The card brand.<br>The value must be provided in uppercase.
          example: VISA
          minLength: 1
        holderName:
          type: string
          description: The full name of the cardholder.
          example: John Smith
          minLength: 1
        expiryMonth:
          type: integer
          format: int32
          description: The two-digit expiration month of the token.
          example: 1
          maximum: 12
          minimum: 1
        expiryYear:
          type: integer
          format: int32
          description: The four-digit expiration year of the token.
          example: 2031
          minimum: 2000
        tokenNumber:
          type: string
          description: Unique identifier for the token.
          example: '5598830000009001'
          minLength: 1
        eci:
          type: string
          description: A dynamic code to authorize payments using the token.
          example: '07'
        cryptogram:
          type: string
          description: The network token cryptogram
          example: CCADBxYzRTBBXXXXXXXYZa0AbZD=
      required:
      - brand
      - expiryMonth
      - expiryYear
      - holderName
      - tokenNumber
    OutOfScope:
      type: object
      properties:
        reason:
          type: string
          description: The 3DS out of scope reason, to be used to indicate the reason if the payment is out of scope of SCA
          enum:
          - MIT
          - MOTO
          - ONE_LEG_OUT
          - ANONYMOUS
    Address:
      type: object
      properties:
        firstName:
          type: string
          description: The first name of the individual associated with the address.
          example: John
        lastName:
          type: string
          description: The last name of the individual associated with the address.
          example: Smith
        phoneNumber:
          type: string
          description: The phone number of the individual associated with the address.
          example: '+491521111111'
        street:
          type: string
          description: The street name and number of the address.
          example: Maple Street 102/B
        postalCode:
          type: string
          description: The postal or ZIP code.
          example: '41460'
        city:
          type: string
          description: The city of the address.
          example: Berlin
        region:
          type: string
          description: The region of the address.
          example: Berlin
        country:
          type: string
          description: The country of the address, represented as a two-letter ISO 3166-1 alpha-2 country code.
          example: DE
          pattern: ^[A-Z]{2}$
    OrderItem:
      type: object
      properties:
        sku:
          type: string
          description: The Stock Keeping Unit (SKU) that uniquely identifies the product in the order.
          example: SKU-12345-WHITE
        category:
          type: string
          description: The category or classification of the product or service in the order.
          example: Clothing
        subCategory:
          type: string
          description: The sub category or classification of the product or service in the order.
          example: Sports Wear
        name:
          type: string
          description: The product or service name in the order.
          example: White T-Shirt
          minLength: 1
        quantity:
          type: integer
          format: int32
          description: The product or service quantity in the order.
          example: 1
        amount:
          type: integer
          format: int64
          description: The monetary value of the individual product or service, expressed in the smallest currency unit (e.g., cents for EUR).
          example: 1000
      required:
      - amount
      - name
      - quantity
    EducationDetails:
      type: object
      properties:
        admissionNoticeUrl:
          type: string
          description: The admission notice url
        courseStartDate:
          type: string
          format: date
          description: Course start date
          example: '2025-06-10'
        courseEndDate:
          type: string
          format: date
          description: Course end date
          example: '2025-10-10'
        financedCourse:
          type: boolean
          description: Whether the course is financed?
          example: true
        diplomaCourse:
          type: boolean
          description: Whether the course is diploma?
          example: true
        postHighSchoolCourse:
          type: boolean
          description: Whether the course is post high school?
          example: true
    GetPaymentChargesResponse:
      type: object
      properties:
        data:
          type: array
          description: The payment charges.
          items:
            $ref: '#/components/schemas/PaymentChargeResponse'
        nextPage:
          type: string
        _links:
          $ref: '#/components/schemas/Links'
          readOnly: true
    AppNotificationAuthenticationDetails: {}
    PassthroughWalletDetails:
      type: object
      properties:
        fundingType:
          type: string
          description: The type of funding to be used by the provider for the agreement or the charge
          enum:
          - CREDIT
          - DEBIT
    ScanCodeAuthenticationSettings:
      allOf:
      - $ref: '#/components/schemas/AuthenticationSettings'
      - type: object
        properties:
          settings:
            $ref: '#/components/schemas/ScanCodeAuthenticationSettingsDetails'
            description: The SCAN_CODE authentication details.
          type:
            type: string
            description: The `SCAN_CODE` authentication type.
            enum:
            - SCAN_CODE
    Profile:
      type: object
      properties:
        createdDate:
          type: string
          format: date
          description: The date when the consumer profile was created.
          example: '2025-01-01'
        firstOrderDate:
          type: string
          format: date
          description: The consumer’s first order date.
          example: '2025-01-05'
        lastOrderDate:
          type: string
          format: date
          description: The consumer’s last order date.
          example: '2025-06-06'
        lifetimeOrderCount:
          type: integer
          format: int64
          description: The consumer’s total number of orders.
          example: 10
        lifetimeOrderValue:
          type: integer
          format: int64
          description: The consumer’s total value of orders, expressed in the smallest currency unit.
          example: 1000
        lifetimeCanceledOrderCount:
          type: integer
          format: int64
          description: The consumer’s total number of cancelled orders.
          example: 1
    ThreeDsAuthenticationSettingsDetails:
      type: object
      properties:
        returnUrl:
          type: string
          description: The URL to which the consumer is redirected after completing the 3D Secure authentication flow.
          example: https://www.ppro.com/
        preference:
          type: string
          description: The preferred 3D Secure authentication flow.
          enum:
          - CHALLENGE
          - FRICTIONLESS
    AppNotificationAuthenticationMethod:
      allOf:
      - $ref: '#/components/schemas/AuthenticationMethod'
      - type: object
        properties:
          details:
            $ref: '#/components/schemas/AppNotificationAuthenticationDetails'
            description: The APP_NOTIFICATION authentication details.
          type:
            type: string
            description: The APP_NOTIFICATION authentication type.
            enum:
            - APP_NOTIFICATION
      title: Authentication Method (APP_NOTIFICATION)
    AirlineTripSegment:
      type: object
      properties:
        fareBasisCode:
          type: string
          description: The fare basis code is an alphanumeric identifier used by airlines to specify the fare rules, booking class, and restrictions associated with a ticket.
          example: M3L7X
        departureAirportCode:
          type: string
          description: The three-letter IATA airport code representing the departure airport for the flight.
          example: LHR
        destinationAirportCode:
          type: string
          description: The three-letter IATA airport code representing the destination airport for the flight.
          example: JFK
        flightNumber:
          type: string
          description: The flight number.
          example: BA117
        departureDate:
          type: string
          format: date
          description: The departure date of the flight.
          example: '2025-01-01'
        flightCarrierCode:
          type: string
          description: The two-letter IATA airline code representing the carrier operating the flight.
          example

# --- truncated at 32 KB (80 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ppro/refs/heads/main/openapi/ppro-authorization-endpoints-api-openapi.yml