Temenos Pricing Quotation API

Simulate account or arrangement creation and transaction events to determine applicable pricing details including interest rates, fees, and cashback with negotiation support.

Documentation

Specifications

Other Resources

OpenAPI Specification

temenos-pricing-quotation-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Temenos Buy Now Pay Later Accounts Pricing Quotation API
  description: APIs for buy now pay later services with embedded Explainable AI for automated decisioning and credit offer matching. Supports interest-free and interest-bearing BNPL products with point-of-sale integration and full loan lifecycle management. Core banking agnostic and deployable on Temenos Banking Cloud.
  version: 1.0.0
  contact:
    name: Temenos Developer Support
    url: https://developer.temenos.com/
    email: api.support@temenos.com
  license:
    name: Temenos Terms of Service
    url: https://www.temenos.com/legal-information/website-terms-and-conditions/
  termsOfService: https://www.temenos.com/legal-information/website-terms-and-conditions/
servers:
- url: https://api.temenos.com/bnpl/v1
  description: Temenos BNPL API - Production
security:
- bearerAuth: []
tags:
- name: Pricing Quotation
  description: Simulate account or arrangement creation and transaction events to determine applicable pricing details including interest rates, fees, and cashback with negotiation support.
paths:
  /quotations/simulate:
    post:
      operationId: simulateArrangementCreation
      summary: Simulate Account Creation Pricing
      description: Simulate the creation of an arrangement or account to determine applicable pricing details including interest rates, fees, and cashback. Returns a quotation reference that can be used for negotiating or adjusting pricing details or for creating a new account.
      tags:
      - Pricing Quotation
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuotationSimulateRequest'
      responses:
        '200':
          description: Quotation simulation completed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuotationResult'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /quotations/simulateEvent:
    post:
      operationId: simulateEventPricing
      summary: Simulate Event Pricing
      description: Simulate an activity or transaction event such as an ATM withdrawal, partial redemption, or funds transfer to determine applicable pricing details and returns a quotation reference.
      tags:
      - Pricing Quotation
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EventSimulateRequest'
      responses:
        '200':
          description: Event simulation completed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuotationResult'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /quotations/{quotationReference}:
    get:
      operationId: getQuotationDetails
      summary: Get Quotation Details
      description: Retrieve pricing details of a simulated quotation. If the quotation has been negotiated, returns final pricing details including any adjustments applied.
      tags:
      - Pricing Quotation
      parameters:
      - name: quotationReference
        in: path
        required: true
        description: Quotation reference identifier
        schema:
          type: string
      responses:
        '200':
          description: Successful retrieval of quotation details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuotationResult'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  schemas:
    FeeDetail:
      type: object
      description: Fee detail
      properties:
        feeType:
          type: string
          description: Fee type
        description:
          type: string
          description: Fee description
        amount:
          type: number
          format: double
          description: Fee amount
        currency:
          type: string
          description: Fee currency
        frequency:
          type: string
          description: Fee frequency
    EventSimulateRequest:
      type: object
      description: Event simulation request
      required:
      - arrangementId
      - eventType
      properties:
        arrangementId:
          type: string
          description: Existing arrangement identifier
        eventType:
          type: string
          description: Type of event to simulate
          enum:
          - ATM_WITHDRAWAL
          - FUNDS_TRANSFER
          - PARTIAL_REDEMPTION
          - FULL_REDEMPTION
          - PAYMENT
        amount:
          type: number
          format: double
          description: Event amount
        currency:
          type: string
          description: Event currency
    QuotationResult:
      type: object
      description: Quotation pricing result
      properties:
        quotationReference:
          type: string
          description: Quotation reference identifier
        productId:
          type: string
          description: Product identifier
        interestRates:
          type: array
          description: Applicable interest rates
          items:
            $ref: '#/components/schemas/InterestRateDetail'
        fees:
          type: array
          description: Applicable fees
          items:
            $ref: '#/components/schemas/FeeDetail'
        cashback:
          type: array
          description: Applicable cashback offers
          items:
            type: object
            properties:
              type:
                type: string
                description: Cashback type
              amount:
                type: number
                format: double
                description: Cashback amount
        negotiated:
          type: boolean
          description: Whether pricing has been negotiated
    QuotationSimulateRequest:
      type: object
      description: Arrangement creation simulation request
      required:
      - productId
      - currency
      properties:
        productId:
          type: string
          description: Product identifier to simulate
        customerId:
          type: string
          description: Customer identifier for personalized pricing
        currency:
          type: string
          description: Arrangement currency
          pattern: ^[A-Z]{3}$
        amount:
          type: number
          format: double
          description: Initial amount
        term:
          type: integer
          description: Arrangement term in months
        quotationReference:
          type: string
          description: User-defined quotation reference
    InterestRateDetail:
      type: object
      description: Individual interest rate detail
      properties:
        rateType:
          type: string
          description: Rate type
          enum:
          - FIXED
          - VARIABLE
          - PROMOTIONAL
        baseRate:
          type: number
          format: double
          description: Base rate percentage
        benefit:
          type: number
          format: double
          description: Benefit adjustment
        netRate:
          type: number
          format: double
          description: Effective net rate
        effectiveDate:
          type: string
          format: date
          description: Rate effective date
    Error:
      type: object
      description: Error response
      properties:
        errorCode:
          type: string
          description: Error code
        errorMessage:
          type: string
          description: Error description
  responses:
    Unauthorized:
      description: Authentication required
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    BadRequest:
      description: Invalid request parameters
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
externalDocs:
  description: Temenos BNPL API Documentation
  url: https://developer.temenos.com/service/buy-now-pay-later