> ## Documentation Index
> Fetch the complete documentation index at: https://docs.frankieone.com/llms.txt
> Use this file to discover all available pages before exploring further.

# (International) Order document from catalogue

> Orders a document relevant to the entity. To discover what documents are available, you should list document catalogue first. On success, will return a 202 response. Frankie systems will poll the provider in the background for the document and attach it to the entity once it is ready, sending you a push notification on completion (if configured).

For further details of this process and document retrieval, see https://docs.frankieone.com/docs/order-a-document




## OpenAPI

````yaml POST /business/{entityId}/report
openapi: 3.0.0
info:
  description: >
    ------  

    This API allows developers to integrate the Frankie Financial Compliance
    Utility into their applications. The API allows:
      - Checking name, address, date of birth against national databases
      - Validating Australian driver's licences, passports, medicare, visas and other Australian national ID documents
      - Validating Australian electricity bills
      - Validating NZ driver's licences
      - Validating Chinese bank cards and national ID card
      - Validating International passports and national ID documents
      - PEP, Sanctions, Watchlist and adverse media checking
      - Australian visa checks 
      - Fraud list and fraud background checks
      - ID validation and selfie check comparisons.
      
    ------  
     
    KYB specific services

      - Query organisation ownership
      - Perform KYC & AML checks on shareholders, beneficial owners and office bearers.
      - Query credit score and credit reports
      - International company searches
      - International company profiles
      
    ------  

    The full version of this documentation along with supplemental articles can
    be found here:
      - https://docs.frankieone.com/

    ------

    Sandbox base URL is:
      - https://api.uat.frankie.one/compliance/v1.2
      
      - All calls are the same as production, only with test data. You can download the latest test data here: https://docs.frankieone.com/docs/test-data

      - Full Swagger definition, along with test data for playing in the sandbox can be obtained once initial commercial discussions have commenced.

      - Production and optional UAT access will be opened up only to those with a signed commercial contract.
      
    ------  

    Contact us at hello@frankiefinancial.com to speak with a sales rep about
    issuing a Customer ID and Sandbox api key.
  title: Frankie Financial API
  contact:
    email: help@frankieone.com
  version: 1.15.3
servers:
  - url: https://api.uat.frankie.one/compliance/v1.2
security:
  - api_key: []
tags:
  - description: >-
      Service status functions you can use to make sure things are up and
      running.
    name: Status
  - description: Operations on specific ID documents, specific to an entity (people).
    name: Document
  - description: Operations on specific entities (people / companies / etc)
    name: Entity
  - description: Operations on entities that are set to type ORGANISATION
    name: Business
  - description: >-
      These are callback/webhook functions. If you've requested a callback, this
      will be what is sent to you. You do not need to implement these as a
      client, but you do need to be able to accept them as a server.
    name: Push Notification
  - description: Functions used for retrieving past results
    name: Retrieve
  - description: Operations on entities to set specific flags and states.
    name: Flag
paths:
  /business/{entityId}/report:
    post:
      tags:
        - Business
      summary: (International) Order document from catalogue
      description: >
        Orders a document relevant to the entity. To discover what documents are
        available, you should list document catalogue first. On success, will
        return a 202 response. Frankie systems will poll the provider in the
        background for the document and attach it to the entity once it is
        ready, sending you a push notification on completion (if configured).


        For further details of this process and document retrieval, see
        https://docs.frankieone.com/docs/order-a-document
      operationId: OrderBusinessDocument
      parameters:
        - description: >
            Customer ID issued by Frankie Financial. This will never change.
            Your API key, which is mapped to this identity, will change over
            time.
          name: X-Frankie-CustomerID
          in: header
          required: true
          schema:
            type: string
            format: uuid
        - description: >
            If, as a Frankie Customer, you are acting on behalf of your own
            customers, then you can populate this field with a Frankie-assigned
            ID.


            Note: If using a CustomerChildID, you will also need a separate
            api_key for each child.


            Any documents, checks, entities that are created when this field has
            been populated will now be tied to this CustomerID + CustomerChildID
            combination. Just as Customers cannot see data created by other
            Customers, so too a Customer's Children will not be able to see each
            other's data.


            A Customer can see the documents/entities and checks of all their
            Children.
          name: X-Frankie-CustomerChildID
          in: header
          schema:
            type: string
            format: uuid
        - description: >-
            The entityId of a business entity returned by a successful call to
            /business/international/profile
          name: entityId
          in: path
          required: true
          schema:
            type: string
            format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/dummyA0111'
        description: |
          Details required to order the document. The reportCode should come
          from the catalogue request.
        required: true
      responses:
        '202':
          description: >-
            The request was valid and can potentially be fulfilled. The Frankie
            service has now accepted responsibility for processing and we will
            either push the results to you, or send you a notification,
            depending on the request and your configuration.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AcceptedResultObject'
        '400':
          description: >-
            Bad request. One or more request fields is either missing or
            incorrect. Details are in the error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorObject'
        '401':
          description: >
            The request has failed an authorisation check. This can happen for a
            variety of reasons, such as an invalid or expired API key, or
            invalid Customer/CustomerChildIDs. 

            * NOTE: This does not include attempts to read/write data you don't
            have access to - that's a 404 error (as we don't want to leak
            information through guessing)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorObject'
        '404':
          description: >-
            Cannot return response. In the case of a query, or reference to a
            specific entity/check/etc, it means that the requested item was not
            found, or you don't have access to it. Please check your query
            before trying again.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorObject'
        '405':
          description: >-
            A request to POST an update to an object was not allowed due to it's
            state. This may indicate an already completed check, or a document
            that has been processed. You need to create a new document/check if
            you wish to update the object in question.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorObject'
        '422':
          description: >
            Unprocessable request. This can be triggered in a number of ways.

            * An attempt to force a check or scan to run, but there is
            insufficient data to be able to do so.

            * An attempt to run a document/entity specific scan or process on an
            unsupported document type (e.g. electricity comparison on a
            passport)

            Details of what is required will be in the issues list of the error
            response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorObject'
        '429':
          description: >-
            The API client is making too many concurrent requests, and some are
            being throttled. Throttled requests can be retried after a short
            delay.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorObject'
        '500':
          description: Unexpected error. Something went wrong during the checking process.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorObject'
        '503':
          description: >-
            All of the ID sources configured by the customer are unavailable, or
            there is no available document processor.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorObject'
components:
  schemas:
    dummyA0111:
      description: |
        Details of the report to be ordered
      type: object
      properties:
        provider:
          description: The name of the service provider from which to order the report.
          type: string
          example: kyckr
        reportCode:
          description: >-
            product code with which to order the report. This should come from
            the reportCode returned in the BusinessReportCatalogue endpoint
          type: string
          example: >-
            ASICON_QVNJQ19Db21wYW55UHJvZmlsZUhpc3RvcmljYWxfRGF0YXN0cmVhbQ==_QVNJQ19DUEhfRFM=_NjAwMDk0OTYwX1ZPREFGT05FIFBUWSBMVEQ=
        reportFormat:
          description: 'report format (optional). eg: html, pdf'
          type: string
          example: PDF
      x-go-gen-location: models
      x-go-type:
        import:
          alias: models_common
          package: bitbucket.org/ff_common/models/common
        type: BusinessReportOrder
    AcceptedResultObject:
      description: >
        The following fields represent the data you need in order to retrieve
        the results of the requested function.
      type: object
      properties:
        requestId:
          $ref: '#/components/schemas/RequestIDObject'
      x-go-type:
        import:
          alias: models_common
          package: bitbucket.org/ff_common/models/common
        type: AcceptedResultObject
    ErrorObject:
      type: object
      required:
        - requestId
        - errorCode
        - errorMsg
      properties:
        commit:
          description: Server version indication
          type: string
          example: 2af478ed
        errorCode:
          description: Frankie error code
          type: string
          example: CORE-5990
        errorMsg:
          description: Will describe the error
          type: string
          example: Everything went kaflooey. Stay clam.
        httpStatusCode:
          description: |
            Deprecated:
            HTTP status code. Same as that which is passed back in the header.
          type: integer
          example: 501
        issues:
          type: array
          items:
            $ref: '#/components/schemas/ErrorObjectIssues'
          x-omitempty: true
        requestId:
          $ref: '#/components/schemas/RequestIDObject'
      x-go-type:
        import:
          alias: models_common
          package: bitbucket.org/ff_common/models/common
        type: ErrorObject
    RequestIDObject:
      description: >
        Unique identifier for every request. Can be used for tracking down
        answers with technical support. 


        Uses the ULID format (a time-based, sortable UUID)


        Note: this will be different for every request.
      type: string
      format: ulid
      x-go-type:
        import:
          alias: models_common
          package: bitbucket.org/ff_common/models/common
        type: RequestIDObject
      example: 01BFJA617JMJXEW6G7TDDXNSHX
    ErrorObjectIssues:
      type: object
      required:
        - issueLocation
      properties:
        issue:
          description: Description of the problem
          type: string
          example: Invalid format. Must be YYYY-MM-DD
        issueLocation:
          description: Will describe the field or data location of the issue
          type: string
          example: dateOfBirth
      x-go-type:
        import:
          alias: models_common
          package: bitbucket.org/ff_common/models/common
        type: ErrorObjectIssues
  securitySchemes:
    api_key:
      description: API key issued by Frankie Financial. This will rotate regularly.
      type: apiKey
      name: api_key
      in: header

````