Defacto Billing API

The Billing API from Defacto — 4 operation(s) for billing.

OpenAPI Specification

defacto-billing-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Defacto Accounting Billing API
  version: v1.0.0
  description: Defacto provides instant, embedded financing for SMBs across Europe. This REST API lets partners onboard borrowers, test eligibility and credit limits, upload business/bank data, create invoices, request and manage loans, handle repayments and recollection, issue and manage credit cards, bill fees, and subscribe to webhooks. Reconstructed by API Evangelist from the per-operation OpenAPI fragments published on Defacto's ReadMe developer portal (developers.getdefacto.com/llms.txt). operationId values are the provider's ReadMe reference slugs; summaries are the reference page titles.
  contact:
    email: contact@getdefacto.com
    url: https://developers.getdefacto.com/
servers:
- url: https://api.getdefacto.com
  description: Production
- url: https://api-sandbox.getdefacto.com
  description: Sandbox
security:
- Bearer: []
tags:
- name: Billing
paths:
  /bills:
    get:
      description: 'List your fees invoices (i.e: your Defacto bill) for the loans you performed on the platform.<br/>By default, this endpoint only returns your own bills, but you may request bills for your own specific borrowers (with a business identifier or ID) depending on your contract type.'
      parameters:
      - description: Returns bills with these ids.
        in: query
        name: bill_id
        required: false
        x-nullable: true
        explode: true
        schema:
          type: array
          items:
            format: uuid
            type: string
          default: null
      - description: Return bills for these business ids.
        in: query
        name: business_id
        required: false
        x-nullable: true
        explode: true
        schema:
          type: array
          items:
            format: uuid
            type: string
          default: null
      - description: Return bills for theses business identifiers, such as its SIREN in France.
        in: query
        name: business_identifier
        required: false
        x-nullable: true
        explode: true
        schema:
          type: array
          items:
            type: string
          default: null
      - description: Pagination cursor from the previous response's next_page field. Omit to get the first page.
        in: query
        name: cursor
        required: false
        x-nullable: true
        schema:
          type: string
          default: null
      - description: Returns bills where end_date field is lower to this date.
        in: query
        name: end_date
        required: false
        x-nullable: true
        schema:
          type: string
          format: date-time
          default: null
      - description: Return light bills.
        in: query
        name: light_bills
        required: false
        x-nullable: true
        schema:
          type: boolean
          default: false
      - description: Maximum number of items to return per page.
        in: query
        name: page_size
        required: false
        schema:
          type: integer
          default: 100
      - description: Returns bills where start_date field is greater or equal to this date.
        in: query
        name: start_date
        required: false
        x-nullable: true
        schema:
          type: string
          format: date-time
          default: null
      - in: query
        name: status
        required: false
        explode: true
        schema:
          type: array
          items:
            enum:
            - PAID
            - SENT_TO_PAYER
            - TO_PAY
            - VALIDATED
            type: string
      responses:
        '200':
          description: ''
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/TypedApiPage10'
      security:
      - Bearer: []
      tags:
      - Billing
      operationId: get_bills
      summary: /bills
  /referrer/{referrer_id}:
    get:
      description: Get referrer details by ID
      parameters:
      - in: path
        name: referrer_id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ApiReferrer'
      security:
      - Bearer: []
      tags:
      - Billing
      operationId: get_referrer-referrer-id
      summary: /referrer/{referrer_id}
  /bill/{bill_id}/sent:
    post:
      description: '

        This endpoint enables you to notify Defacto when you sent the bill for the fees of the loans to your user.

        A bill should be sent to the user only when its status is VALIDATED (see GET /bills endpoint).


        It is very important to use this endpoint so that Defacto can proceed to a recollection process

        that will be fair for our users.


        This endpoint is useful only for partners who send the bill themselves.

        By default the bills are sent the the payers of the fees by Defacto.

        If you need to send them by yourself please get in touch with us.

        '
      parameters:
      - in: path
        name: bill_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/APIBillSentByPartnerRequest'
      responses:
        '204':
          description: ''
          content:
            '*/*':
              schema: {}
      security:
      - Bearer: []
      tags:
      - Billing
      operationId: post_bill-bill-id-sent
      summary: /bill/{bill_id}/sent
  /referrer/{referrer_id}/upload-invoice/{revenue_share_id}:
    post:
      description: Upload revenue share invoice for a referrer and update the related revenue share
      parameters:
      - in: path
        name: referrer_id
        required: true
        schema:
          type: string
      - in: path
        name: revenue_share_id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ApiRevenueShare'
      security:
      - Bearer: []
      tags:
      - Billing
      operationId: post_referrer-referrer-id-upload-invoice-revenue-share-id
      summary: /referrer/{referrer_id}/upload-invoice/{revenue_share_id}
components:
  schemas:
    PublicApiAccountNumber:
      properties:
        account_number:
          description: The account identifier. Only IBANs are supported at the moment.
          type: string
        account_number_type:
          default: iban
          description: The type of account number (e.g. IBAN).
          enum:
          - iban
          type: string
        bank_identifier:
          default: null
          description: The identifier of the bank.
          type: string
          nullable: true
        bank_identifier_type:
          default: bic
          description: The type of bank identifier (e.g. BIC).
          enum:
          - bic
          type: string
      required:
      - account_number
      type: object
    PaymentXPaymentIntent:
      properties:
        amount:
          type: integer
        payment_id:
          format: uuid
          type: string
        payment_intent_id:
          format: uuid
          type: string
        payment_type:
          enum:
          - CHANNEL_VERIFICATION
          - CHARGEBACK
          - DEPOSIT_FUNDING
          - DEPOSIT_RELEASE
          - DEPOSIT_WITHDRAWAL
          - EXTRA
          - INTERNAL
          - LENDER_DEBT_RESOLUTION
          - LENDER_PREFUNDING
          - LENDER_REPURCHASE
          - LOAN_PAYMENT
          - LOAN_PURCHASE
          - PAYMENT_PROVIDER_FEES
          - PLATFORM
          - REFUND
          - REPAYMENT_FEES
          - REPAYMENT_FULL
          - REPAYMENT_NOMINAL
          - RETURNED
          - REVENUE_SHARE
          - REVERT
          - SUBSCRIPTION
          type: string
      required:
      - amount
      - payment_id
      - payment_intent_id
      - payment_type
      type: object
    PaymentMethodConfiguration:
      properties:
        direct_debit:
          allOf:
          - $ref: '#/components/schemas/DirectDebitConfiguration'
          default: null
          nullable: true
        payment_method:
          enum:
          - DIRECT_DEBIT
          - SCT
          type: string
        sct:
          allOf:
          - $ref: '#/components/schemas/SctConfiguration'
          default: null
          nullable: true
      required:
      - payment_method
      type: object
    DepositingRule:
      properties:
        base_amount:
          enum:
          - DUE_INTERESTS
          - ESTIMATED_FEES
          - FIXED_AMOUNT
          - LOAN_AMOUNT
          - LOAN_AMOUNT_WITH_DUE_INTERESTS
          - LOAN_AMOUNT_WITH_ESTIMATED_FEES
          type: string
        depositor_role:
          enum:
          - BENEFICIARY
          - BORROWER
          - FEES_PAYER
          - PARTNER
          type: string
        payment_method:
          $ref: '#/components/schemas/PaymentMethodConfiguration'
        purpose:
          enum:
          - FEES_DEPOSIT
          - GUARANTEE_DEPOSIT
          - RECOLLECTION_FEES_DEPOSIT
          type: string
        value:
          type: string
      required:
      - base_amount
      - depositor_role
      - purpose
      - value
      type: object
    ExecutionRule:
      properties:
        frequency:
          default: MONTHLY
          enum:
          - MONTHLY
          - YEARLY
          type: string
        interval:
          type: integer
      required:
      - interval
      type: object
    PaymentApi:
      properties:
        amount:
          type: integer
        charged_back_payment_id:
          default: null
          nullable: true
        currency:
          default: EUR
          enum:
          - EUR
          - GBP
          type: string
        failure_reason:
          default: null
          type: string
          nullable: true
        from_account_details:
          allOf:
          - $ref: '#/components/schemas/APILightAccountDetails'
          default: null
          nullable: true
        from_references:
          items:
            type: string
          type: array
        id:
          format: uuid
          type: string
        is_instant:
          default: false
          type: boolean
        paid_at:
          default: null
          format: date-time
          type: string
          nullable: true
        payment_method:
          default: null
          enum:
          - DIRECT_DEBIT
          - P2P
          - SCT
          - null
          type: string
          nullable: true
        payment_type:
          enum:
          - CHANNEL_VERIFICATION
          - CHARGEBACK
          - DEPOSIT_FUNDING
          - DEPOSIT_RELEASE
          - DEPOSIT_WITHDRAWAL
          - EXTRA
          - INTERNAL
          - LENDER_DEBT_RESOLUTION
          - LENDER_PREFUNDING
          - LENDER_REPURCHASE
          - LOAN_PAYMENT
          - LOAN_PURCHASE
          - PAYMENT_PROVIDER_FEES
          - PLATFORM
          - REFUND
          - REPAYMENT_FEES
          - REPAYMENT_FULL
          - REPAYMENT_NOMINAL
          - RETURNED
          - REVENUE_SHARE
          - REVERT
          - SUBSCRIPTION
          type: string
        provider:
          allOf:
          - $ref: '#/components/schemas/ProviderPaymentID'
          default: null
          nullable: true
        reason:
          default: null
          type: string
          nullable: true
        related_to:
          $ref: '#/components/schemas/PaymentRelationApi'
        scheduled_at:
          default: null
          format: date-time
          type: string
          nullable: true
        status:
          enum:
          - CANCELED
          - FAILED
          - INSTRUCTED
          - IN_TRANSIT
          - PAID
          - PROPOSED
          - SCHEDULED
          type: string
        to_account_details:
          allOf:
          - $ref: '#/components/schemas/APILightAccountDetails'
          default: null
          nullable: true
        to_references:
          items:
            type: string
          type: array
      required:
      - amount
      - id
      - payment_type
      - status
      type: object
    AccountDetails:
      properties:
        account_id:
          default: null
          nullable: true
        account_number:
          description: The account identifier. Only IBANs are supported at the moment.
          type: string
        account_number_type:
          description: The type of account number (e.g. IBAN).
          enum:
          - account_number
          - iban
          - internal_id
          type: string
        bank_identifier:
          description: The identifier of the bank.
          type: string
        bank_identifier_type:
          description: The type of bank identifier (e.g. BIC).
          enum:
          - bic
          - name
          - routing_number
          - undefined
          type: string
        id:
          default: null
          nullable: true
        providers:
          additionalProperties:
            $ref: '#/components/schemas/AccountProvider'
          default: null
          type: object
          nullable: true
        type:
          default: null
          enum:
          - DEFAULT
          - STRIPE_CONNECTED_ACCOUNT
          - TECHNICAL_WALLET
          - VIRTUAL
          - null
          type: string
          nullable: true
      required:
      - account_number
      - account_number_type
      - bank_identifier
      - bank_identifier_type
      type: object
    TypedApiPage10:
      properties:
        count:
          type: integer
        data:
          items:
            $ref: '#/components/schemas/APIBill'
          type: array
        next_page:
          default: null
          type: string
          nullable: true
        page_size:
          type: integer
        previous_page:
          default: null
          type: string
          nullable: true
        total:
          default: null
          type: integer
          nullable: true
      required:
      - count
      - page_size
      type: object
    DueInterestXPaymentIntent:
      properties:
        due_interest_id:
          format: uuid
          type: string
        payment_intent_id:
          format: uuid
          type: string
      required:
      - due_interest_id
      - payment_intent_id
      type: object
    AutomaticSigner:
      properties:
        email:
          type: string
        first_name:
          type: string
        ip_address:
          type: string
        last_name:
          type: string
      required:
      - email
      - first_name
      - ip_address
      - last_name
      type: object
    BillPayment:
      properties:
        amount:
          type: integer
        bill_id:
          format: uuid
          type: string
        payment_id:
          default: null
          nullable: true
      required:
      - amount
      - bill_id
      type: object
    FeesPayerConfig:
      properties:
        billed_business_id:
          default: null
          format: uuid
          type: string
          nullable: true
        fees_payer_role:
          default: PARTNER
          enum:
          - BENEFICIARY
          - BORROWER
          - GUARANTOR
          - PARTNER
          type: string
        interests_tracking_time:
          default: ORIGINATION_DATE
          enum:
          - MONTHLY
          - ORIGINATION_DATE
          type: string
      type: object
    ReferrerRevenueShareConfig:
      properties:
        broker_track:
          allOf:
          - $ref: '#/components/schemas/BrokerTrack'
          default: null
          nullable: true
        execution_rule:
          $ref: '#/components/schemas/ExecutionRule'
        fixed_daily_rate:
          default: null
          type: number
          nullable: true
        max_loan_submitted_at:
          default: null
          format: date-time
          type: string
          nullable: true
        min_loan_submitted_at:
          default: null
          format: date-time
          type: string
          nullable: true
        revenue_share_notification_emails:
          items:
            format: email
            type: string
          type: array
        revenue_share_rate:
          default: null
          type: number
          nullable: true
        revenue_share_type:
          enum:
          - BROKER_REVENUE_SHARE
          - PARTNER_REVENUE_SHARE
          - REFERRAL_CODE_REVENUE_SHARE
          type: string
        shared_to_account:
          $ref: '#/components/schemas/PublicApiAccountNumber'
        sharing_duration:
          default: SIX_MONTHS
          enum:
          - FOREVER
          - SIX_MONTHS
          - TWELVE_MONTHS
          - TWENTY_FOUR_MONTHS
          type: string
        tenant_name:
          default: null
          type: string
          nullable: true
        vat_included:
          type: boolean
      required:
      - revenue_share_notification_emails
      - revenue_share_type
      - shared_to_account
      - vat_included
      type: object
    PaymentIntent:
      properties:
        amount:
          type: integer
        currency:
          default: EUR
          enum:
          - EUR
          - GBP
          type: string
        failure_reason:
          default: null
          type: string
          nullable: true
        from_account_details:
          allOf:
          - $ref: '#/components/schemas/AccountDetails'
          default: null
          nullable: true
        from_business_id:
          format: uuid
          type: string
        id:
          format: uuid
          type: string
        identity_salt:
          default: null
          type: string
          nullable: true
        invoice_id:
          default: null
          format: uuid
          type: string
          nullable: true
        is_instant:
          default: false
          type: boolean
        paid_amount:
          type: integer
        paid_at:
          default: null
          format: date-time
          type: string
          nullable: true
        payment_method:
          enum:
          - DIRECT_DEBIT
          - P2P
          - SCT
          type: string
        payment_type:
          enum:
          - CHANNEL_VERIFICATION
          - CHARGEBACK
          - DEPOSIT_FUNDING
          - DEPOSIT_RELEASE
          - DEPOSIT_WITHDRAWAL
          - EXTRA
          - INTERNAL
          - LENDER_DEBT_RESOLUTION
          - LENDER_PREFUNDING
          - LENDER_REPURCHASE
          - LOAN_PAYMENT
          - LOAN_PURCHASE
          - PAYMENT_PROVIDER_FEES
          - PLATFORM
          - REFUND
          - REPAYMENT_FEES
          - REPAYMENT_FULL
          - REPAYMENT_NOMINAL
          - RETURNED
          - REVENUE_SHARE
          - REVERT
          - SUBSCRIPTION
          type: string
        reference:
          type: string
        related_to:
          $ref: '#/components/schemas/PaymentIntentRelation'
        scheduled_at:
          format: date-time
          type: string
        status:
          enum:
          - CANCELED
          - DRAFT
          - INSTRUCTED
          - IN_TRANSIT
          - ISSUE_DETECTED
          - PAID
          - PARTIALLY_PAID
          - PROPOSED
          - SCHEDULED
          - WAITING
          type: string
        to_account_details:
          $ref: '#/components/schemas/AccountDetails'
        to_business_id:
          format: uuid
          type: string
      required:
      - amount
      - from_business_id
      - id
      - paid_amount
      - payment_method
      - payment_type
      - reference
      - related_to
      - scheduled_at
      - status
      - to_account_details
      - to_business_id
      type: object
    PaymentRelationApi:
      properties:
        bills:
          items:
            $ref: '#/components/schemas/BillPayment'
          type: array
        invoices:
          items:
            format: uuid
            type: string
          type: array
        loans:
          items:
            $ref: '#/components/schemas/LoanPaymentApi'
          type: array
        payment_intents:
          items:
            $ref: '#/components/schemas/PaymentXPaymentIntentApi'
          type: array
        subscriptions:
          items:
            $ref: '#/components/schemas/SubscriptionPaymentRelation'
          type: array
      type: object
    BusinessIdentifierWithName:
      properties:
        identifier:
          type: string
        identifier_type:
          enum:
          - belgium_registration_number
          - bsn
          - cif
          - hr_nummer
          - kvk
          - name
          - nif
          - siren
          - siret
          - steuernummer
          - vat_number
          type: string
        name:
          type: string
      required:
      - identifier
      - identifier_type
      - name
      type: object
    InvoiceCollateralizationRiskMitigator:
      properties:
        triggers:
          items:
            enum:
            - BORROWER_DEFAULT
            - BORROWER_INSOLVENCY
            type: string
          type: array
      required:
      - triggers
      type: object
    ApiReferrer:
      properties:
        business_id:
          format: uuid
          type: string
        business_identifier:
          $ref: '#/components/schemas/BusinessIdentifierRequired'
        config:
          $ref: '#/components/schemas/ReferrerConfig'
        distribution_id:
          format: uuid
          type: string
        financial_products:
          items:
            $ref: '#/components/schemas/FinancialProduct'
          type: array
        id:
          format: uuid
          type: string
        name:
          default: null
          type: string
          nullable: true
        referrer_type:
          default: null
          enum:
          - BROKER
          - CORE_POC
          - DISTRIBUTOR
          - LIQUID_BROKERS_CAB
          - LIQUID_BROKER_NETWORK
          - LIQUID_CORPORATE_FINANCE
          - LIQUID_DAF_CONSULTANT
          - LIQUID_EC
          - TECH_HYBRID
          - TECH_LIQUID
          - TECH_PARTNER
          - null
          type: string
          nullable: true
        shared_to_account_detail_id:
          default: null
          format: uuid
          type: string
          nullable: true
      required:
      - business_id
      - business_identifier
      - config
      - distribution_id
      - financial_products
      - id
      type: object
    APIBill:
      properties:
        amends_bill_id:
          default: null
          type: string
          nullable: true
        billed_borrower_id:
          default: null
          nullable: true
        billed_business:
          $ref: '#/components/schemas/BusinessIdentifier'
        document_url:
          default: null
          type: string
          nullable: true
        due_date:
          format: date-time
          type: string
        email_sent_to_payer_on:
          default: null
          format: date-time
          type: string
          nullable: true
        end_date:
          format: date-time
          type: string
        id:
          format: uuid
          type: string
        invoice:
          allOf:
          - $ref: '#/components/schemas/APIInvoice'
          default: null
          nullable: true
        invoice_number:
          default: null
          type: string
          nullable: true
        payment:
          $ref: '#/components/schemas/PaymentApi'
        ran_at:
          format: date-time
          type: string
        start_date:
          format: date-time
          type: string
        status:
          enum:
          - GENERATED
          - INVALID
          - PAID
          - SENT_TO_PAYER
          - TO_PAY
          - VALIDATED
          type: string
        to_pay_amount:
          type: integer
      required:
      - billed_business
      - due_date
      - end_date
      - id
      - payment
      - ran_at
      - start_date
      - status
      - to_pay_amount
      type: object
    FinancialProductInstallmentsConfiguration:
      properties:
        available_types:
          items:
            enum:
            - INSTALLMENTS
            - IN_FINE
            type: string
          type: array
        maximum_reschedule_payment_in_days:
          default: 30
          type: integer
        minimum_anticipate_payment_in_days:
          default: 1
          type: integer
        minimum_business_days_until_due_date_to_reschedule_payment:
          default: 1
          type: integer
      type: object
    FinancialProductTcsDocument:
      properties:
        country:
          default: null
          enum:
          - AUT
          - BEL
          - BGR
          - CHE
          - CYP
          - CZE
          - DEU
          - DNK
          - ESP
          - EST
          - FIN
          - FRA
          - GBR
          - GRC
          - GUF
          - HRV
          - HUN
          - IRL
          - ISL
          - ITA
          - LTU
          - LUX
          - LVA
          - MAF
          - MLT
          - NLD
          - POL
          - PRT
          - REU
          - ROU
          - SVK
          - SVN
          - SWE
          - null
          type: string
          nullable: true
        document_url:
          type: string
        is_default:
          default: false
          type: boolean
        language:
          default: null
          type: string
          nullable: true
      required:
      - document_url
      type: object
    SignatureConfig:
      properties:
        automatic_signer:
          allOf:
          - $ref: '#/components/schemas/AutomaticSigner'
          default: null
          nullable: true
        contract_template_name:
          enum:
          - DAILLY_CREDIT_AGREEMENT_TEMPLATE
          - DAILLY_ESCOMPTE_TEMPLATE
          - DIRECT_MASTER_LOAN_AGREEMENT_TEMPLATE
          - TERMS_AND_CONDITIONS
          type: string
        signing_fields:
          items:
            $ref: '#/components/schemas/SigningField'
          type: array
      required:
      - contract_template_name
      - signing_fields
      type: object
    LoanPaymentIntent:
      properties:
        amount:
          type: integer
        bill_id:
          default: null
          format: uuid
          type: string
          nullable: true
        deposit_id:
          default: null
          format: uuid
          type: string
          nullable: true
        loan_id:
          format: uuid
          type: string
        payment_intent_id:
          format: uuid
          type: string
        payment_type:
          enum:
          - CHANNEL_VERIFICATION
          - CHARGEBACK
          - DEPOSIT_FUNDING
          - DEPOSIT_RELEASE
          - DEPOSIT_WITHDRAWAL
          - EXTRA
          - INTERNAL
          - LENDER_DEBT_RESOLUTION
          - LENDER_PREFUNDING
          - LENDER_REPURCHASE
          - LOAN_PAYMENT
          - LOAN_PURCHASE
          - PAYMENT_PROVIDER_FEES
          - PLATFORM
          - REFUND
          - REPAYMENT_FEES
          - REPAYMENT_FULL
          - REPAYMENT_NOMINAL
          - RETURNED
          - REVENUE_SHARE
          - REVERT
          - SUBSCRIPTION
          type: string
      required:
      - amount
      - loan_id
      - payment_intent_id
      - payment_type
      type: object
    InsuranceRiskMitigator:
      properties:
        delay_to_call_insurance_after_chargeback:
          default: null
          description: Delay in hours before calling the insurance provider after a chargeback. If None, insurance is not called after chargeback.
          type: integer
          nullable: true
        delay_to_call_insurance_on_insolvency_procedure_opening:
          default: null
          description: Delay in hours before calling the insurance provider when an insolvency procedure is opened. If None, insurance is not called on insolvency procedure opening.
          type: integer
          nullable: true
        insurance_provider:
          description: The insurance provider to use for risk mitigation
          enum:
          - ALLIANZ_TRADE
          - CREDIT_360
          - SANDBOX
          type: string
        triggers:
          items:
            enum:
            - BORROWER_DEFAULT
            - BORROWER_INSOLVENCY
            type: string
          type: array
      required:
      - insurance_provider
      - triggers
      type: object
    ApiRevenueShare:
      properties:
        document_url:
          default: null
          type: string
          nullable: true
        email_sent_on:
          default: null
          format: date-time
          type: string
          nullable: true
        email_sent_to:
          default: null
          items:
            format: email
            type: string
          type: array
          nullable: true
        end_date:
          format: date-time
          type: string
        id:
          format: uuid
          type: string
        payment:
          allOf:
          - $ref: '#/components/schemas/PaymentApi'
          default: null
          nullable: true
        payment_intent:
          allOf:
          - $ref: '#/components/schemas/PaymentIntent'
          default: null
          nullable: true
        revenue_shared_with_business:
          $ref: '#/components/schemas/BusinessIdentifierWithName'
        start_date:
          format: date-time
          type: string
        status:
          enum:
          - CREATED
          - DELETED
          - PAID
          - SENT_BY_EMAIL
          type: string
      required:
      - end_date
      - id
      - revenue_shared_with_business
      - start_date
      - status
      type: object
    PaymentIntentRelation:
      properties:
        due_interests:
          items:
            $ref: '#/components/schemas/DueInterestXPaymentIntent'
          type: array
        installment_plans:
          items:
            $ref: '#/components/schemas/InstallmentPlanXPaymentIntent'
          type: array
        loans:
          items:
            $ref: '#/components/schemas/LoanPaymentIntent'
          type: array
        payments:
          items:
            $ref: '#/components/schemas/PaymentXPaymentIntent'
          type: array
      type: object
    SigningField:
      properties:
        height:
          default: null
          type: integer
          nullable: true
        mention:
          default: null
          type: string
          nullable: true
        page:
          type: integer
        position_x:
          type: integer
        position_y:
          type: integer
        type:
          default: signature
          enum:
          - mention
          - signature
        width:
          type: integer
      required:
      - page
      - position_x
      - position_y
      - width
      type: object
    SctConfiguration:
      properties: {}
      type: object
    FPUXConfiguration:
      properties:
        aggregation_scenarios:
          default: null
          items:
            $ref: '#/components/schemas/FinancialProductUxAggregationScenarioConfiguration'
          type: array
          nullable: true
        fp_status_on_manual_review_eligibility:
          default: READY
          enum:
          - BLOCKED
          - CHURN
          - CLOSED_BY_USER
          - CREATED
          - CUT
          - DEACTIVATED
          - PENDING_USER_ACTION
          - PRODUCT_DISCONTINUED
          - READY
          - TO_SIGN
          type: string
        loan_request:
          $ref: '#/components/schemas/FPLoanRequestConfiguration'
      type: object
    FinancialProductUxAggregationScenarioConfiguration:
      properties:
        payment_aggregation_scenario:
          default: null
          description: Processing type for aggregation scenario
          enum:
          - MERGE_ONLY
          - NET_THEN_MERGE
          - null
          type: string
          nullable: true
        payment_aggregation_timing:
          default: null
          description: When does the aggregation happens
          enum:
          - DAILY
          - LOAN_SCHEDULE
          - null
          type: string
          nullable: true
        payment_types_to_net_and_merge:
          default: null
          description: If payment_aggregation_scenario is NET_AND_MERGE, this should contain the list of payment types
          items:
            enum:
            - CHANNEL_VERIFICATION
       

# --- truncated at 32 KB (59 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/defacto/refs/heads/main/openapi/defacto-billing-api-openapi.yml