swagger: '2.0'
info:
  title: Marketplace API
  contact:
    email: support@lyra-network.com
  version: 4.4.0
host: secure.lyra.com
schemes:
  - https
basePath: /
consumes:
  - application/json
produces:
  - application/json
securityDefinitions:
  Basic:
    type: basic
security:
  - Basic: []
paths:
  /cashouts/:
    get:
      operationId: cashouts_list
      summary: List of cashouts associated with a marketplace.
      description: |-
        Returns a list of cashouts related to the marketplace(s) managed by the current user, and ordered by `captured_date` descending.

        The query may optionally be restricted to specific temporal boundaries and by seller.
      parameters:
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: page_size
          in: query
          description: Number of results to return per page.
          required: false
          type: integer
        - name: capture_start_date
          in: query
          description: 'Lower date filter boundary (format YYYY-MM-DD. Eg : 2019-01-01).'
          type: string
        - name: capture_end_date
          in: query
          description: 'Upper date filter boundary (format YYYY-MM-DD. Eg : 2019-01-01).'
          type: string
        - name: seller
          in: query
          description: Filter by unique seller identifier.
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Cashout'
      tags:
        - cashouts
    parameters: []
  /cashouts/{uuid}:
    get:
      operationId: cashouts_read
      summary: Detail of a cashout.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Unique identifier of the cashout.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/Cashout'
        '404':
          description: Not Found
        '500':
          description: Inconsistency detected in cash out amount
      tags:
        - cashouts
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /items/:
    post:
      operationId: items_create
      summary: Creates an item.
      description: ''
      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/ItemSerializer'
      responses:
        '201':
          description: ''
          schema:
            $ref: '#/definitions/ItemSerializer'
        '400':
          description: |-
            Bad request on seller|order : Object with uuid does not exist.
            Commission_amount is not allowed in commission item.
            Commission_amount must not be larger than the item amount.
            Field not allowed: No TRD contract defined for this seller.
            No TRD is allowed on commission item.
            Commission only allowed for sellers of type marketplace.
            This field can only contain alphanumeric, space, dash or underscore characters.
      tags:
        - items
    parameters: []
  /items/{item}/transfers:
    get:
      operationId: items_transfers_list
      summary: List of transfers by order, by seller, by item, by transaction or by
        creation date.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: uuid
          in: query
          description: Select the transfer using the transfer unique identifier
          type: string
        - name: item
          in: query
          description: Filter by item using the unique item identifier.
          type: string
        - name: amount
          in: query
          description: Filter by amount of the item.
          type: string
        - name: status
          in: query
          description: Filter by the current status of the item.
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Transfer'
      tags:
        - items
    parameters:
      - name: item
        in: path
        required: true
        type: string
  /items/{uuid}:
    get:
      operationId: items_read
      summary: Retrieves the details of an item.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Unique item identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/ItemSerializer'
      tags:
        - items
    put:
      operationId: items_update
      summary: Updates an existing item.
      description: ''
      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/ItemSerializer'
        - name: uuid
          in: path
          description: Unique item identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/ItemSerializer'
        '405':
          description: Cannot modify an order after full execution
      tags:
        - items
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /items/{uuid}/activate:
    post:
      operationId: items_activate
      summary: Activates the item, i.e. toggles `hold_payment` to false.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Unique item identifier.
          type: string
          required: true
      responses:
        '201':
          description: ''
        '302':
          description: Redirect to item detail if the operation has been successful.
      tags:
        - items
    parameters:
      - name: uuid
        in: path
        description: Unique identifier. This field is automatically generated.
        required: true
        type: string
        format: uuid
  /marketplaces/:
    get:
      operationId: marketplaces_list
      summary: List of marketplace to which you have at least view access privilege.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Marketplace'
      tags:
        - marketplaces
    parameters: []
  /marketplaces/{marketplace}/alias/{alias}:
    get:
      operationId: marketplaces_alias_read
      summary: Retrieves the details of an alias.
      description: ''
      parameters:
        - name: alias
          in: path
          description: Select the alias details using the alias itself.
          type: string
          required: true
        - name: marketplace
          in: path
          description: Select the marketplace using the unique marketplace identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/GetTokenDetails'
        '400':
          description: Bad request
        '404':
          description: Not found
        '500':
          description: Cannot retrieve alias details because an unexpected error occurred.
      tags:
        - marketplaces
    parameters:
      - name: alias
        in: path
        required: true
        type: string
      - name: marketplace
        in: path
        required: true
        type: string
  /marketplaces/{marketplace}/orders:
    get:
      operationId: marketplaces_orders_list
      summary: List of orders related to a single marketplace.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: uuid
          in: query
          description: Select the order using its unique identifier
          type: string
        - name: marketplace
          in: query
          description: Select the marketplace using the unique marketplace identifier.
          type: string
        - name: amount
          in: query
          description: Filter by total amount of the order.
          type: number
        - name: status
          in: query
          description: Filter by the current status of the order.
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/OrderSerializer'
      tags:
        - marketplaces
    parameters:
      - name: marketplace
        in: path
        required: true
        type: string
  /marketplaces/{marketplace}/registrations:
    get:
      operationId: marketplaces_registrations_list
      summary: Retrieves the list of registrations by marketplace.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: uuid
          in: query
          description: Filter by unique registration identifier.
          type: string
        - name: marketplace
          in: query
          description: Filter by unique marketplace identifier
          type: string
        - name: name
          in: query
          description: Filter by registration name.
          type: string
        - name: ref
          in: query
          description: Filter by registration reference.
          type: string
        - name: status
          in: query
          description: Filter by registration status.
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Registration'
      tags:
        - marketplaces
    parameters:
      - name: marketplace
        in: path
        required: true
        type: string
  /marketplaces/{marketplace}/sellers:
    get:
      operationId: marketplaces_sellers_list
      summary: List of sellers by marketplace.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: uuid
          in: query
          description: Select the seller using the unique seller identifier.
          type: string
        - name: status
          in: query
          description: Filter by current status of the seller
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Seller'
      tags:
        - marketplaces
    parameters:
      - name: marketplace
        in: path
        required: true
        type: string
  /marketplaces/{marketplace}/transactions:
    get:
      operationId: marketplaces_transactions_list
      summary: Transaction list by marketplace.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: marketplace
          in: path
          description: Filter by marketplace using the unique marketplace identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Transaction'
      tags:
        - marketplaces
    parameters:
      - name: marketplace
        in: path
        required: true
        type: string
  /marketplaces/{marketplace}/webhooks:
    get:
      operationId: marketplaces_webhooks_list
      summary: List every webhook for the marketplace, set as well as unset.
      description: ''
      parameters:
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: marketplace
          in: path
          description: Marketplace unique identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            type: array
            items:
              $ref: '#/definitions/Webhook'
      tags:
        - marketplaces
    post:
      operationId: marketplaces_webhooks_create
      summary: Create a single webhook for the marketplace.
      description: ''
      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/Webhook'
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/Webhook'
        '400':
          description: Malformed url, or any error returned when checking the connection
            to the target url
        '500':
          description: Internal error
      tags:
        - marketplaces
    put:
      operationId: marketplaces_webhooks_update
      summary: Update a single webhook for the marketplace.
      description: ''
      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/Webhook'
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/Webhook'
        '400':
          description: Malformed url, or any error returned when checking the connection
            to the target url
        '500':
          description: Internal error
      tags:
        - marketplaces
    parameters:
      - name: marketplace
        in: path
        required: true
        type: string
  /marketplaces/{marketplace}/webhooks/{event}:
    delete:
      operationId: marketplaces_webhooks_delete
      description: ''
      parameters: []
      responses:
        '204':
          description: ''
      tags:
        - marketplaces
    parameters:
      - name: event
        in: path
        required: true
        type: string
      - name: marketplace
        in: path
        required: true
        type: string
  /marketplaces/{uuid}:
    get:
      operationId: marketplaces_read
      summary: Retrieves the details of a marketplace
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Select the marketplace using its unique identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/Marketplace'
      tags:
        - marketplaces
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /orders:
    post:
      operationId: orders_create
      summary: Creates a new order.
      description: |-
        **IMPORTANT**: When creating an order with embedded items, you MUST add `expand=items` in the url query.

        > e.g. `https://secure.lyra.com/marketplace/orders?expand=items`

        If this parameter is omitted, the server will return a code 201 CREATED but the order will have no item.
      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/OrderSerializer'
        - name: expand
          in: query
          type: string
          enum:
            - items
            - transactions
      responses:
        '201':
          description: ''
          schema:
            $ref: '#/definitions/OrderResponse'
        '400':
          description: Invalid request.
      tags:
        - orders
    parameters: []
  /orders/:
    get:
      operationId: orders_list
      summary: List of orders related to a single marketplace.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: uuid
          in: query
          description: Select the order using its unique identifier
          type: string
        - name: marketplace
          in: query
          description: Select the marketplace using the unique marketplace identifier.
          type: string
        - name: amount
          in: query
          description: Filter by total amount of the order.
          type: number
        - name: status
          in: query
          description: Filter by the current status of the order.
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/OrderSerializer'
      tags:
        - orders
    post:
      operationId: orders_create
      summary: Creates a new order.
      description: |-
        **IMPORTANT**: When creating an order with embedded items, you MUST add `expand=items` in the url query.

        > e.g. `https://secure.lyra.com/marketplace/orders?expand=items`

        If this parameter is omitted, the server will return a code 201 CREATED but the order will have no item.
      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/OrderSerializer'
        - name: expand
          in: query
          type: string
          enum:
            - items
            - transactions
      responses:
        '201':
          description: ''
          schema:
            $ref: '#/definitions/OrderResponse'
        '400':
          description: Invalid request.
      tags:
        - orders
    parameters: []
  /orders/{order}/items:
    get:
      operationId: orders_items_list
      summary: List of items by order, by seller or by creation date.
      description: |-
        The following selection keys are defined in the path :
         * **/order/<order_uuid>/items** : items by order ;
        * **/seller/<seller_uuid>/items** : items by seller ;

        You may also query all items to which you have access. In that case, they may be filtered by date, by seller, by order, by status, by amount, or directly selected by its uuid.
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: start_date
          in: query
          description: Lower creation date and time boundary, in format YYYY-MM-DD
            HH:MM.
          type: string
        - name: end_date
          in: query
          description: Upper create date and time boundary, in format YYYY-MM-DD HH:MM.
          type: string
        - name: uuid
          in: query
          description: Select the item using the unique item identifier.
          type: string
        - name: seller
          in: query
          description: Filter by seller using the unique seller identifier.
          type: string
        - name: order
          in: query
          description: Filter by order using the Unique order identifier.
          type: string
        - name: amount
          in: query
          description: Filter by amount of the item.
          type: number
        - name: status
          in: query
          description: Filter by the status of the item. May be one of CREATED, PENDING,
            SUCCEEDED, CANCELLED, FAILED, ABANDONED
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/ItemSerializer'
        '400':
          description: |-
            Bad request on start_date : start_date must be in format YYYY-MM-DD ;
            Bad request on end_date : end_date must be in format YYYY-MM-DD ;
            Bad request on status : Select a valid choice. 
      tags:
        - orders
    parameters:
      - name: order
        in: path
        required: true
        type: string
  /orders/{order}/refunds:
    get:
      operationId: orders_refunds_list
      summary: Retrieves the list of refunds related to an order.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: uuid
          in: query
          description: Filter using the unique refund identifier.
          type: string
        - name: transaction
          in: query
          description: Filter using the unique transaction identifier
          type: string
        - name: amount
          in: query
          description: Filter by amount.
          type: number
        - name: status
          in: query
          description: Filter by status.
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Refund'
      tags:
        - orders
    parameters:
      - name: order
        in: path
        required: true
        type: string
  /orders/{order}/transactions:
    get:
      operationId: orders_transactions_list
      summary: Transaction list by order.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: order
          in: path
          description: Filter by order using the unique order identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Transaction'
      tags:
        - orders
    parameters:
      - name: order
        in: path
        required: true
        type: string
  /orders/{order}/transfers:
    get:
      operationId: orders_transfers_list
      summary: List of transfers by order, by seller, by item, by transaction or by
        creation date.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: uuid
          in: query
          description: Select the transfer using the transfer unique identifier
          type: string
        - name: item
          in: query
          description: Filter by item using the unique item identifier.
          type: string
        - name: amount
          in: query
          description: Filter by amount of the item.
          type: string
        - name: status
          in: query
          description: Filter by the current status of the item.
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Transfer'
      tags:
        - orders
    parameters:
      - name: order
        in: path
        required: true
        type: string
  /orders/{uuid}:
    get:
      operationId: orders_read
      summary: Retrieves the details of a single order.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Select the order using the unique order identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/OrderSerializer'
        '400':
          description: This order has been executed and is not cancelable until the
            end of the payment process
        '404':
          description: Order not found
      tags:
        - orders
    put:
      operationId: orders_update
      summary: Updates an existing order
      description: |-
        **IMPORTANT**: When updating an order with nested objects like items or transactions, you MUST add `expand=items`, `expand=transactions` or `expand=items,transactions` in the url query. E.g. : 

        > `https://secure.lyra.com/marketplace/orders/<uuid>?expand=items` or

        > `https://secure.lyra.com/marketplace/orders/<uuid>?expand=transactions` or

        > `https://secure.lyra.com/marketplace/orders/<uuid>?expand=items,transactions`.

        If this parameter is omitted, the server may return a code `200 OK` but the nested objects will remain unchanged.
      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/OrderSerializer'
        - name: uuid
          in: path
          description: Unique order identifier.
          type: string
          required: true
        - name: expand
          in: query
          type: string
          enum:
            - items
            - transactions
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/OrderSerializer'
        '404':
          description: Bad trans_uuid
        '405':
          description: |-
            Once executed, multi-transactional order cannot yet be updated
             Payment configuration cannot be updated after being executed
             Order cannot be modified because of its current status
             Order cannot be updated because the transaction cannot be updated
             CONECS transactions cannot be updated.
        '500':
          description: Order cannot be updated because an error occurred during the
            transaction's update
      tags:
        - orders
    delete:
      operationId: orders_delete
      summary: Delete an order by the given uuid
      description: After a serie of validation checks, the order status is set to
        `CANCELLED`.
      parameters:
        - name: uuid
          in: path
          description: The unique order identifier of the order to be deleted.
          type: string
          required: true
      responses:
        '204':
          description: Success
        '400':
          description: This order has been executed and is not cancelable until the
            end of the payment process
        '405':
          description: |-
            Order cannot be cancelled because its status is SUCCEEDED.
             Order cannot be cancelled because its status is CANCELLED.
             Transaction with trans_uuid cannot be cancelled because its status is SUCCEEDED.
        '500':
          description: Order cannot be cancelled because an error occurred during
            the transaction's cancellation
      tags:
        - orders
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /orders/{uuid}/activate:
    post:
      operationId: orders_activate_items
      summary: Activate items.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Activates every order items that are in a hold status.
          type: string
          required: true
      responses:
        '204':
          description: The activation of every items has been successful.
        '404':
          description: Unable to find the order.
      tags:
        - orders
    parameters:
      - name: uuid
        in: path
        description: Unique identifier. This field is automatically generated.
        required: true
        type: string
        format: uuid
  /orders/{uuid}/execute:
    get:
      operationId: orders_execute
      summary: Submits the order to payment using the PayZen form.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Select the order to be executed using the order unique identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            type: object
            properties:
              payment_url:
                type: string
        '400':
          description: |-
            Ex: Invalid CVE
             Amount cannot be zero or negative...
        '405':
          description: 'Order cannot be executed: Alias not found'
        '423':
          description: An execution request has already been sent and the resource
            is currently locked for processing. Wait for the response before trying
            again.
        '500':
          description: |-
            Unable to contact Payzen
             Payzen responded with an unexpected error
             Error while trying to fetch embedded form token.
      tags:
        - orders
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /orders/{uuid}/execute-embedded:
    get:
      operationId: orders_execute
      summary: Submits the order to payment using the PayZen form.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Select the order to be executed using the order unique identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            type: object
            properties:
              payment_url:
                type: string
        '400':
          description: |-
            Ex: Invalid CVE
             Amount cannot be zero or negative...
        '405':
          description: 'Order cannot be executed: Alias not found'
        '423':
          description: An execution request has already been sent and the resource
            is currently locked for processing. Wait for the response before trying
            again.
        '500':
          description: |-
            Unable to contact Payzen
             Payzen responded with an unexpected error
             Error while trying to fetch embedded form token.
      tags:
        - orders
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /orders/{uuid}/execute-embedded/token:
    get:
      operationId: orders_execute-embedded_execute
      summary: Submits the order to payment using the PayZen form.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Select the order to be executed using the order unique identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            type: object
            properties:
              payment_url:
                type: string
        '400':
          description: |-
            Ex: Invalid CVE
             Amount cannot be zero or negative...
        '405':
          description: 'Order cannot be executed: Alias not found'
        '423':
          description: An execution request has already been sent and the resource
            is currently locked for processing. Wait for the response before trying
            again.
        '500':
          description: |-
            Unable to contact Payzen
             Payzen responded with an unexpected error
             Error while trying to fetch embedded form token.
      tags:
        - orders
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /orders/{uuid}/execute-mit:
    get:
      operationId: orders_execute
      summary: Submits the order to payment using the PayZen form.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Select the order to be executed using the order unique identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            type: object
            properties:
              payment_url:
                type: string
        '400':
          description: |-
            Ex: Invalid CVE
             Amount cannot be zero or negative...
        '405':
          description: 'Order cannot be executed: Alias not found'
        '423':
          description: An execution request has already been sent and the resource
            is currently locked for processing. Wait for the response before trying
            again.
        '500':
          description: |-
            Unable to contact Payzen
             Payzen responded with an unexpected error
             Error while trying to fetch embedded form token.
      tags:
        - orders
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /orders/{uuid}/execute/token:
    get:
      operationId: orders_execute_execute
      summary: Submits the order to payment using the PayZen form.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Select the order to be executed using the order unique identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            type: object
            properties:
              payment_url:
                type: string
        '400':
          description: |-
            Ex: Invalid CVE
             Amount cannot be zero or negative...
        '405':
          description: 'Order cannot be executed: Alias not found'
        '423':
          description: An execution request has already been sent and the resource
            is currently locked for processing. Wait for the response before trying
            again.
        '500':
          description: |-
            Unable to contact Payzen
             Payzen responded with an unexpected error
             Error while trying to fetch embedded form token.
      tags:
        - orders
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /orders/{uuid}/persist:
    get:
      operationId: orders_persist
      summary: Create a persist link
      description: ''
      parameters:
        - name: uuid
          in: path
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/OrderSerializer'
      tags:
        - orders
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /orders/{uuid}/validate:
    post:
      operationId: orders_validate
      summary: Validates a payment.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Select the order to be validated using the order unique identifier.
          type: string
          required: true
      responses:
        '200':
          description: Success
        '400':
          description: Invalid commission amount
        '405':
          description: |-
            Invalid status for order/transaction
            Order does not require validation.Order cannot be validated because the transaction cannot be validated
        '500':
          description: Unable to contact Payzen
      tags:
        - orders
    parameters:
      - name: uuid
        in: path
        description: Unique identifier. This field is automatically generated.
        required: true
        type: string
        format: uuid
  /refunds/:
    get:
      operationId: refunds_list
      summary: Retrieves the list of refunds related to an order.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: uuid
          in: query
          description: Filter using the unique refund identifier.
          type: string
        - name: transaction
          in: query
          description: Filter using the unique transaction identifier
          type: string
        - name: amount
          in: query
          description: Filter by amount.
          type: number
        - name: status
          in: query
          description: Filter by status.
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Refund'
      tags:
        - refunds
    post:
      operationId: refunds_create
      summary: Creates a refund.
      description: ''
      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/Refund'
      responses:
        '201':
          description: ''
          schema:
            $ref: '#/definitions/Refund'
      tags:
        - refunds
    parameters: []
  /refunds/{uuid}:
    get:
      operationId: refunds_read
      summary: Retrieve a single refund.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Unique refund identifier
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/Refund'
      tags:
        - refunds
    put:
      operationId: refunds_update
      summary: Updates a refund.
      description: ''
      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/Refund'
        - name: uuid
          in: path
          description: Unique refund identifier
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/Refund'
      tags:
        - refunds
    delete:
      operationId: refunds_delete
      summary: Cancels a refund.
      description: |-
        This operation sets the refund status to `CANCEL`.

        In order to be cancelled, the status of the refund must be `PENDING`.

        > Note that the status will also be checked up on the fly before actually cancelling the refund. If the refund has been meanwhile authorized or captured, the operation will then throw an error 405.
      parameters:
        - name: uuid
          in: path
          description: Unique refund identifier.
          type: string
          required: true
      responses:
        '204':
          description: No content.
        '405':
          description: Refund cannot be modified because of its current status
      tags:
        - refunds
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /registrations/:
    get:
      operationId: registrations_list
      summary: Retrieves the list of registrations by marketplace.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: uuid
          in: query
          description: Filter by unique registration identifier.
          type: string
        - name: marketplace
          in: query
          description: Filter by unique marketplace identifier
          type: string
        - name: name
          in: query
          description: Filter by registration name.
          type: string
        - name: ref
          in: query
          description: Filter by registration reference.
          type: string
        - name: status
          in: query
          description: Filter by registration status.
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Registration'
      tags:
        - registrations
    post:
      operationId: registrations_create
      summary: Creates a registration.
      description: ''
      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/Registration'
      responses:
        '201':
          description: ''
          schema:
            $ref: '#/definitions/Registration'
        '400':
          description: A board member with email <email> already exists. If you want
            to update an existing board member, please add its uuid in the request.
      tags:
        - registrations
    parameters: []
  /registrations/{registration}/documents:
    get:
      operationId: registrations_documents_list
      summary: List of documents by registration.
      description: ''
      parameters:
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: registration
          in: path
          description: Unique registration identifier
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            type: array
            items:
              $ref: '#/definitions/RegistrationDocument'
        '404':
          description: Not found
      consumes:
        - multipart/form-data
        - application/x-www-form-urlencoded
      tags:
        - registrations
    post:
      operationId: registrations_documents_create
      summary: Creates a registration document.
      description: Adds a document to an existing registration using a multipart form.
      parameters:
        - name: registration
          in: formData
          description: Uuid of the related registration to which the document must
            be added.
          required: false
          type: string
          format: uuid
        - name: board_member
          in: formData
          description: Uuid of the related board member related to the document. This
            field is mandatory when uploading an identity or an address type of document.
          required: false
          type: string
          format: uuid
        - name: type
          in: formData
          description: Type of the document.
          required: true
          type: string
          enum:
            - IBAN
            - KBIS
            - BALANCE
            - STATUS
            - COMPANY_OTHER
            - PROOF_OF_RESIDENCY
            - HOUSING_TAX
            - ENERGY_PHONE_BILL
            - ADDRESS_OTHER
            - JDD
            - IDENTITY_CARD
            - PASSPORT
            - RESIDENCE_PERMIT
            - DRIVING_LICENSE_OLD_GENERATION
            - DRIVING_LICENSE_NEW_GENERATION
            - IDENTITY_OTHER
        - name: reference
          in: formData
          description: Reference of the document.
          required: true
          type: string
          minLength: 1
        - name: description
          in: formData
          description: Optional description of the document.
          required: false
          type: string
          maxLength: 255
          minLength: 1
        - name: file
          in: formData
          description: Document.
          required: true
          type: file
        - name: additional_data
          in: formData
          description: Additional data. Use this field to set the IBAN if you upload
            an IBAN.
          required: false
          type: string
      responses:
        '201':
          description: The document has successfully been created
        '400':
          description: A validation error occurred.
        '500':
          description: Upload of registration document cannot be performed because
            an unexpected error occurred.
      consumes:
        - multipart/form-data
        - application/x-www-form-urlencoded
      tags:
        - registrations
    parameters:
      - name: registration
        in: path
        required: true
        type: string
  /registrations/{uuid}:
    get:
      operationId: registrations_read
      summary: Retrieves a single registration.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Unique registration identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/Registration'
      tags:
        - registrations
    put:
      operationId: registrations_update
      summary: Updates a registration.
      description: |-
        This endpoint can also be used to create or update the board members and the activity of the registration.

        If a `board` is sent with a list of board members without any uuid, this operation will result in creating new board members.

        > Note: The server will return a validation error if the email already exists for this registration.

        If you want to update the board member, you must provide its `uuid`.

         As the `board` field is mandatory, you must send an empty list if do not want to update or create any boardmember.

        > e.g. : `{ ..., "board": [], ... }`

        The `activity` works differently: you just need to provide 1 (and only 1) activity on  each request (POST and PUT).
      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/Registration'
        - name: uuid
          in: path
          description: Unique registration identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/Registration'
      tags:
        - registrations
    patch:
      operationId: registrations_partial_update
      summary: Patches a registration.
      description: |+
        This endpoint can also be used to create or update the board members and the activity of the registration.

        If a `board` is sent with a list of board members without any uuid, this operation will result in creating new board members.

        > Note: The server will return a validation error if the email already exists for this registration.

        If you want to update the board member, you must provide its `uuid`.

      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/Registration'
        - name: uuid
          in: path
          description: Unique registration identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/Registration'
      tags:
        - registrations
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /registrations/{uuid}/status:
    get:
      operationId: registrations_status
      summary: 'Retrieves the status of a single registration. Deprecated: use registration_read
        instead.'
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Unique registration identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/Registration'
      tags:
        - registrations
      deprecated: true
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /registrations/{uuid}/submit:
    post:
      operationId: registrations_submit
      summary: Submits the registration for examination by our services.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Unique registration identifier.
          type: string
          required: true
      responses:
        '201':
          description: ''
      tags:
        - registrations
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /sellers/:
    get:
      operationId: sellers_list
      summary: List of sellers by marketplace.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: uuid
          in: query
          description: Select the seller using the unique seller identifier.
          type: string
        - name: status
          in: query
          description: Filter by current status of the seller
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Seller'
      tags:
        - sellers
    parameters: []
  /sellers/{seller}/cashouts:
    get:
      operationId: sellers_cashouts_list
      summary: List of cashouts associated with a marketplace.
      description: |-
        Returns a list of cashouts related to the marketplace(s) managed by the current user, and ordered by `captured_date` descending.

        The query may optionally be restricted to specific temporal boundaries and by seller.
      parameters:
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: page_size
          in: query
          description: Number of results to return per page.
          required: false
          type: integer
        - name: capture_start_date
          in: query
          description: 'Lower date filter boundary (format YYYY-MM-DD. Eg : 2019-01-01).'
          type: string
        - name: capture_end_date
          in: query
          description: 'Upper date filter boundary (format YYYY-MM-DD. Eg : 2019-01-01).'
          type: string
        - name: seller
          in: query
          description: Filter by unique seller identifier.
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Cashout'
      tags:
        - sellers
    parameters:
      - name: seller
        in: path
        required: true
        type: string
  /sellers/{seller}/items:
    get:
      operationId: sellers_items_list
      summary: List of items by order, by seller or by creation date.
      description: |-
        The following selection keys are defined in the path :
         * **/order/<order_uuid>/items** : items by order ;
        * **/seller/<seller_uuid>/items** : items by seller ;

        You may also query all items to which you have access. In that case, they may be filtered by date, by seller, by order, by status, by amount, or directly selected by its uuid.
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: start_date
          in: query
          description: Lower creation date and time boundary, in format YYYY-MM-DD
            HH:MM.
          type: string
        - name: end_date
          in: query
          description: Upper create date and time boundary, in format YYYY-MM-DD HH:MM.
          type: string
        - name: uuid
          in: query
          description: Select the item using the unique item identifier.
          type: string
        - name: seller
          in: query
          description: Filter by seller using the unique seller identifier.
          type: string
        - name: order
          in: query
          description: Filter by order using the Unique order identifier.
          type: string
        - name: amount
          in: query
          description: Filter by amount of the item.
          type: number
        - name: status
          in: query
          description: Filter by the status of the item. May be one of CREATED, PENDING,
            SUCCEEDED, CANCELLED, FAILED, ABANDONED
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/ItemSerializer'
        '400':
          description: |-
            Bad request on start_date : start_date must be in format YYYY-MM-DD ;
            Bad request on end_date : end_date must be in format YYYY-MM-DD ;
            Bad request on status : Select a valid choice. 
      tags:
        - sellers
    parameters:
      - name: seller
        in: path
        required: true
        type: string
  /sellers/{seller}/transfers:
    get:
      operationId: sellers_transfers_list
      summary: List of transfers by order, by seller, by item, by transaction or by
        creation date.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: uuid
          in: query
          description: Select the transfer using the transfer unique identifier
          type: string
        - name: item
          in: query
          description: Filter by item using the unique item identifier.
          type: string
        - name: amount
          in: query
          description: Filter by amount of the item.
          type: string
        - name: status
          in: query
          description: Filter by the current status of the item.
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Transfer'
      tags:
        - sellers
    parameters:
      - name: seller
        in: path
        required: true
        type: string
  /sellers/{uuid}:
    get:
      operationId: sellers_read
      summary: Retrieves the details of a single seller.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Unique seller identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/Seller'
      tags:
        - sellers
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /tokens/:
    get:
      operationId: tokens_list
      summary: Retrieves the list of tokens related to one marketplace.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/OrderRegister'
      tags:
        - tokens
    post:
      operationId: tokens_create
      summary: Creates a token.
      description: |-
        An 'alias' is an alphanumeric code that allows the re-use of a registered CB.

        A 'token' embodies the registration process, from the request to the handle of the alias.

         It is thus binded to a specific buyer within the scope of a specific marketplace.
      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/OrderRegister'
      responses:
        '201':
          description: ''
          schema:
            $ref: '#/definitions/OrderRegister'
      tags:
        - tokens
    parameters: []
  /tokens/embedded/:
    post:
      operationId: tokens_create_embedded
      description: ''
      parameters:
        - name: data
          in: body
          required: true
          schema:
            $ref: '#/definitions/OrderRegister'
      responses:
        '201':
          description: ''
          schema:
            $ref: '#/definitions/OrderRegister'
      tags:
        - tokens
    parameters: []
  /tokens/{uuid}:
    get:
      operationId: tokens_read
      summary: Retrieves the details of a single token.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Unique token identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/OrderRegister'
      tags:
        - tokens
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
  /transactions/:
    get:
      operationId: transactions_list
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Transaction'
      tags:
        - transactions
    parameters: []
  /transactions/{trans_uuid}:
    get:
      operationId: transactions_read
      summary: Retrieves a transaction detail by trans_uuid.
      description: ''
      parameters:
        - name: trans_uuid
          in: path
          description: Unique transaction identifier.
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/Transaction'
      tags:
        - transactions
    parameters:
      - name: trans_uuid
        in: path
        required: true
        type: string
  /transactions/{transaction}/transfers:
    get:
      operationId: transactions_transfers_list
      summary: List of transfers by order, by seller, by item, by transaction or by
        creation date.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: uuid
          in: query
          description: Select the transfer using the transfer unique identifier
          type: string
        - name: item
          in: query
          description: Filter by item using the unique item identifier.
          type: string
        - name: amount
          in: query
          description: Filter by amount of the item.
          type: string
        - name: status
          in: query
          description: Filter by the current status of the item.
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Transfer'
      tags:
        - transactions
    parameters:
      - name: transaction
        in: path
        required: true
        type: string
  /transfers/:
    get:
      operationId: transfers_list
      summary: List of transfers by order, by seller, by item, by transaction or by
        creation date.
      description: ''
      parameters:
        - name: ordering
          in: query
          description: Which field to use when ordering the results.
          required: false
          type: string
        - name: page
          in: query
          description: A page number within the paginated result set.
          required: false
          type: integer
        - name: uuid
          in: query
          description: Select the transfer using the transfer unique identifier
          type: string
        - name: item
          in: query
          description: Filter by item using the unique item identifier.
          type: string
        - name: amount
          in: query
          description: Filter by amount of the item.
          type: string
        - name: status
          in: query
          description: Filter by the current status of the item.
          type: string
      responses:
        '200':
          description: ''
          schema:
            required:
              - count
              - results
            type: object
            properties:
              count:
                type: integer
              next:
                type: string
                format: uri
                x-nullable: true
              previous:
                type: string
                format: uri
                x-nullable: true
              results:
                type: array
                items:
                  $ref: '#/definitions/Transfer'
      tags:
        - transfers
    parameters: []
  /transfers/{uuid}:
    get:
      operationId: transfers_read
      summary: Retrieves the details of a single transfer.
      description: ''
      parameters:
        - name: uuid
          in: path
          description: Unique transaction identifier (`trans_uuid`).
          type: string
          required: true
      responses:
        '200':
          description: ''
          schema:
            $ref: '#/definitions/Transfer'
      tags:
        - transfers
    parameters:
      - name: uuid
        in: path
        required: true
        type: string
definitions:
  CashoutItemSerializer:
    required:
      - ref
    type: object
    properties:
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      ref:
        title: Reference
        type: string
        pattern: ^[a-zA-Z0-9_\-]+$
        maxLength: 32
        minLength: 1
      desc:
        title: Description
        type: string
        pattern: '[-\w ]+$'
        maxLength: 255
  TransactionCashoutSerializer:
    type: object
    properties:
      trans_uuid:
        title: Trans uuid
        type: string
        maxLength: 36
        x-nullable: true
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      paid_at:
        title: Paid at
        type: string
        format: date-time
        x-nullable: true
  CashoutOrderSerializer:
    required:
      - ref
    type: object
    properties:
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      ref:
        title: Reference
        type: string
        pattern: ^[a-zA-Z0-9_ \-]+$
        maxLength: 32
        minLength: 1
      desc:
        title: Description
        type: string
        maxLength: 255
  CashoutTransfer:
    required:
      - item
      - transaction
      - order
      - amount
    type: object
    properties:
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      created_at:
        title: Created at
        description: Creation date. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      updated_at:
        title: Updated at
        description: Date of the last modification. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      item:
        $ref: '#/definitions/CashoutItemSerializer'
      transaction:
        $ref: '#/definitions/TransactionCashoutSerializer'
      order:
        $ref: '#/definitions/CashoutOrderSerializer'
      amount:
        title: Amount
        type: integer
        maximum: 2147483647
        minimum: 0
      currency:
        title: Currency
        type: string
        readOnly: true
  CashoutTransactionSerializer:
    required:
      - order
    type: object
    properties:
      trans_uuid:
        title: Trans uuid
        type: string
        maxLength: 36
        x-nullable: true
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      order:
        $ref: '#/definitions/CashoutOrderSerializer'
  CashoutRefundItem:
    required:
      - item
      - transaction
      - amount
    type: object
    properties:
      uuid:
        title: Uuid
        type: string
        readOnly: true
      created_at:
        title: Created at
        type: string
        readOnly: true
      updated_at:
        title: Updated at
        type: string
        readOnly: true
      item:
        $ref: '#/definitions/CashoutItemSerializer'
      order:
        title: Order
        type: string
        readOnly: true
      transaction:
        $ref: '#/definitions/CashoutTransactionSerializer'
      amount:
        title: Amount
        type: integer
        maximum: 2147483647
        minimum: 0
      currency:
        title: Currency
        type: string
        readOnly: true
  Cashout:
    required:
      - ref
      - amount
      - currency
    type: object
    properties:
      href:
        title: Href
        type: string
        readOnly: true
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      seller:
        title: Seller
        type: string
        format: uuid
        readOnly: true
      seller_external_ref:
        title: Seller external ref
        type: string
        readOnly: true
      ref:
        title: Ref
        type: string
        maxLength: 255
        minLength: 1
      status:
        title: Status
        type: string
        enum:
          - CREATED
          - PENDING
          - SUCCEEDED
          - CANCELLED
          - FAILED
          - REJECTED
      amount:
        title: Amount
        type: integer
        maximum: 2147483647
        minimum: 0
      currency:
        title: Currency
        type: string
      executed_at:
        title: Executed at
        type: string
        format: date-time
        x-nullable: true
      captured_at:
        title: Captured at
        type: string
        format: date
        x-nullable: true
      capture_label:
        title: Capture label
        type: string
        maxLength: 255
        x-nullable: true
      external_ref:
        title: External ref
        type: string
        maxLength: 255
        x-nullable: true
      transfers:
        type: array
        items:
          $ref: '#/definitions/CashoutTransfer'
        readOnly: true
      refunds:
        type: array
        items:
          $ref: '#/definitions/CashoutRefundItem'
        readOnly: true
  Href:
    required:
      - href
    type: object
    properties:
      href:
        title: Href
        type: string
        format: uri
        minLength: 1
  TransferLinks:
    required:
      - item
    type: object
    properties:
      item:
        $ref: '#/definitions/Href'
  Transfer:
    required:
      - item
    type: object
    properties:
      href:
        title: Href
        type: string
        readOnly: true
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      created_at:
        title: Created at
        description: Creation date. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      updated_at:
        title: Updated at
        description: Date of the last modification. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      item:
        title: Item
        type: string
        format: uuid
      amount:
        title: Amount
        type: integer
        readOnly: true
      status:
        title: Status
        type: string
        enum:
          - CREATED
          - PENDING
          - SUCCEEDED
          - CANCELLED
          - FAILED
        readOnly: true
      links:
        $ref: '#/definitions/TransferLinks'
  ItemVoucher:
    required:
      - contract_type
    type: object
    properties:
      contract_type:
        title: Contract type
        type: string
      eligible_amount:
        title: Eligible amount
        description: 'Applies only to CONECS type vouchers: maximum amount eligible
          at the item level.'
        type: integer
        maximum: 2147483647
        minimum: 0
        x-nullable: true
      actual_amount:
        title: Actual amount
        description: Amount actually paid by the buyer. This is set by the API when
          processing the IPN request.
        type: integer
        readOnly: true
        x-nullable: true
      is_selected:
        title: Is selected
        description: Only one contract type (e.g. CONECS, CVCONNECT, etc.) is applicable
          at the order level. The contract with the highest cumulated amount is automatically
          selected by the API at execution time.
        type: boolean
        readOnly: true
        x-nullable: true
  ItemLinks:
    description: Urls for transfers
    required:
      - transfers
    type: object
    properties:
      transfers:
        $ref: '#/definitions/Href'
  ItemSerializer:
    required:
      - reference
      - description
      - amount
    type: object
    properties:
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      href:
        title: Href
        description: Url of the resource. This field is automatically generated.
        type: string
        readOnly: true
      created_at:
        title: Created at
        description: Creation date. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      updated_at:
        title: Updated at
        description: Date of the last modification. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      seller:
        title: Seller
        description: uuid of the related seller. You may use seller_external_ref instead.
        type: string
        format: uuid
      seller_external_ref:
        title: Seller external ref
        description: External reference of the seller.
        type: string
        maxLength: 50
        minLength: 1
      order:
        title: Order
        description: uuid of the order.
        type: string
        format: uuid
      reference:
        title: Reference
        description: Reference of the item.
        type: string
        pattern: ^[a-zA-Z0-9_\-]+$
        maxLength: 32
        minLength: 1
      description:
        title: Description
        description: Description of the item.
        type: string
        pattern: '[-\w ]+$'
        maxLength: 255
        minLength: 1
      type:
        title: Type
        description: Type of item (eg. ENTERTAINMENT, SPORT, etc.).
        type: string
        enum:
          - FOOD_AND_GROCERY
          - AUTOMOTIVE
          - ENTERTAINMENT
          - HOME_AND_GARDEN
          - HOME_APPLIANCE
          - AUCTION_AND_GROUP_BUYING
          - FLOWERS_AND_GIFTS
          - COMPUTER_AND_SOFTWARE
          - HEALTH_AND_BEAUTY
          - SERVICE_FOR_INDIVIDUAL
          - SERVICE_FOR_BUSINESS
          - SPORTS
          - CLOTHING_AND_ACCESSORIES
          - TRAVEL
          - HOME_AUDIO_PHOTO_VIDEO
          - TELEPHONY
        x-nullable: true
      amount:
        title: Amount
        description: Total amount (price) of the item.
        type: integer
        maximum: 2147483647
        minimum: 0
      quantity:
        title: Quantity
        description: Quantity of items ordered. This field is for information only
          and has no effect on the amount of the order.
        type: integer
        maximum: 32767
        minimum: 0
      is_commission:
        title: Is commission
        description: If set to true, this item represents a commission owed to the
          marketplace.
        type: boolean
        x-nullable: true
      commission_amount:
        title: Commission amount
        description: Commission amount related to this item and included in the total
          amount. A non-null value is incompatible with is_commission = True.
        type: integer
        maximum: 2147483647
        minimum: 0
      status:
        title: Status
        description: Current status of the item.
        type: string
        enum:
          - CREATED
          - PENDING
          - SUCCEEDED
          - CANCELLED
          - FAILED
          - ABANDONED
        readOnly: true
      hold_payment:
        title: Hold payment
        description: If true, the cashout to the corresponding seller will be hold
          until this item is activated.
        type: boolean
        x-nullable: true
      transfers:
        type: array
        items:
          $ref: '#/definitions/Transfer'
        readOnly: true
      vouchers:
        type: array
        items:
          $ref: '#/definitions/ItemVoucher'
      links:
        $ref: '#/definitions/ItemLinks'
  MarketplaceLinks:
    required:
      - sellers
      - orders
    type: object
    properties:
      sellers:
        $ref: '#/definitions/Href'
      orders:
        $ref: '#/definitions/Href'
  MarketplaceCurrency:
    required:
      - currency
    type: object
    properties:
      currency:
        title: Currency
        type: string
      commission_prorata:
        title: Commission prorata
        type: number
        readOnly: true
      commission_fix:
        title: Commission fix*
        description: "Marketplace commission fix for this currency, expressed in the
          smallest fraction possible for the related currency. For instance: 10 'EUR'
          is 0,10€."
        type: integer
        maximum: 2147483647
        minimum: 0
        x-nullable: true
      is_active:
        title: Is active
        type: string
        readOnly: true
      cashout_frequency:
        title: Cashout frequency
        type: string
        readOnly: true
  MarketplaceVoucher:
    required:
      - contract_type
    type: object
    properties:
      contract_type:
        title: Contract type
        type: string
  Marketplace:
    required:
      - reference
      - description
      - currencies
      - vouchers
    type: object
    properties:
      href:
        title: Href
        type: string
        readOnly: true
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      created_at:
        title: Created at
        description: Creation date. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      updated_at:
        title: Updated at
        description: Date of the last modification. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      reference:
        title: Reference
        type: string
        minLength: 1
      description:
        title: Description
        type: string
        minLength: 1
      billing_method:
        title: Billing method
        description: Defines whether commission is computed against each order or
          monthly.
        type: string
        enum:
          - CASHOUT
          - MONTHLY
        readOnly: true
      bic:
        title: Bic
        description: Bank code of the marketplace.
        type: string
        maxLength: 11
      iban:
        title: Iban
        description: Account number of the marketplace.
        type: string
        maxLength: 34
      vads_key:
        title: Vads key
        description: Marketplace identifier with Lyra Collect. This field is generated
          by Lyra Collect.
        type: string
        readOnly: true
        minLength: 1
      vads_cert:
        title: VADS certificate
        description: Marketplace certificate with Lyra Collect. This field is generated
          by Lyra Collect
        type: string
        readOnly: true
        minLength: 1
      status:
        title: Status
        description: Current status of the marketplace. This field is managed by Lyra
          Collect.
        type: string
        enum:
          - ACTIVE
          - INACTIVE
        readOnly: true
      links:
        $ref: '#/definitions/MarketplaceLinks'
      max_capture_delay:
        title: Max capture delay
        type: integer
        readOnly: true
        x-nullable: true
      tva_rate:
        title: Tva rate
        description: 'VAT rate, expressed in %. For example: 20,4 means 20,4% of TVA
          rate.'
        type: string
        format: decimal
        readOnly: true
        x-nullable: true
      currencies:
        type: array
        items:
          $ref: '#/definitions/MarketplaceCurrency'
      vouchers:
        type: array
        items:
          $ref: '#/definitions/MarketplaceVoucher'
  GetTokenDetails:
    required:
      - brand
      - expiry_month
      - expiry_year
      - number
      - creation_date
    type: object
    properties:
      brand:
        title: Brand
        type: string
        minLength: 1
      expiry_month:
        title: Expiry month
        type: string
        minLength: 1
      expiry_year:
        title: Expiry year
        type: string
        minLength: 1
      number:
        title: Number
        type: string
        minLength: 1
      first_name:
        title: First name
        type: string
        minLength: 1
      last_name:
        title: Last name
        type: string
        minLength: 1
      email:
        title: Email
        type: string
        minLength: 1
      creation_date:
        title: Creation date
        type: string
        format: date-time
  Address:
    type: object
    properties:
      street_number:
        title: Street number
        type: string
        maxLength: 5
        x-nullable: true
      street:
        title: Street
        type: string
        maxLength: 255
        x-nullable: true
      district:
        title: District
        type: string
        maxLength: 127
        x-nullable: true
      zipcode:
        title: Zipcode
        type: string
        maxLength: 64
        x-nullable: true
      city:
        title: City
        type: string
        maxLength: 128
        x-nullable: true
      state:
        title: State
        type: string
        maxLength: 127
        x-nullable: true
      country:
        title: Country
        type: string
        maxLength: 2
        x-nullable: true
  BuyerSerializerLegacy:
    required:
      - type
      - phone_number
      - email
    type: object
    properties:
      reference:
        title: Reference
        type: string
        maxLength: 63
        x-nullable: true
      title:
        title: Title
        type: string
        maxLength: 63
        x-nullable: true
      type:
        title: Type
        type: string
        enum:
          - PRIVATE
          - COMPANY
      first_name:
        title: First name
        type: string
        maxLength: 63
        x-nullable: true
      last_name:
        title: Last name
        type: string
        maxLength: 63
        x-nullable: true
      legal_name:
        title: Legal name
        type: string
        maxLength: 127
        x-nullable: true
      phone_number:
        title: Phone number
        type: string
        maxLength: 32
        minLength: 1
      email:
        title: Email
        type: string
        format: email
        maxLength: 150
        minLength: 1
      address:
        $ref: '#/definitions/Address'
  ShippingSerializerLegacy:
    required:
      - shipping_method
    type: object
    properties:
      shipping_method:
        title: Shipping method
        type: string
        enum:
          - RECLAIM_IN_SHOP
          - RELAY_POINT
          - RECLAIM_IN_STATION
          - PACKAGE_DELIVERY_COMPANY
          - ETICKET
      delivery_company_name:
        title: Delivery company name
        type: string
        maxLength: 127
        x-nullable: true
      shipping_speed:
        title: Shipping speed
        type: string
        enum:
          - STANDARD
          - EXPRESS
          - PRIORITY
        x-nullable: true
      shipping_delay:
        title: Shipping delay
        type: string
        enum:
          - INFERIOR_EQUALS
          - SUPERIOR
          - IMMEDIATE
          - ALWAYS
        x-nullable: true
      type:
        title: Type
        type: string
        enum:
          - PRIVATE
          - COMPANY
        x-nullable: true
      first_name:
        title: First name
        type: string
        maxLength: 63
        x-nullable: true
      last_name:
        title: Last name
        type: string
        maxLength: 63
        x-nullable: true
      legal_name:
        title: Legal name
        type: string
        maxLength: 127
        x-nullable: true
      phone_number:
        title: Phone number
        type: string
        maxLength: 32
        x-nullable: true
      address:
        $ref: '#/definitions/Address'
  OrderLinks:
    required:
      - items
      - transactions
      - refunds
      - execute
      - execute_embedded
      - execute_mit
    type: object
    properties:
      items:
        $ref: '#/definitions/Href'
      transactions:
        $ref: '#/definitions/Href'
      refunds:
        $ref: '#/definitions/Href'
      execute:
        $ref: '#/definitions/Href'
      execute_embedded:
        $ref: '#/definitions/Href'
      execute_mit:
        $ref: '#/definitions/Href'
  OrderSerializer:
    required:
      - marketplace
      - reference
      - buyer
      - currency
    type: object
    properties:
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      href:
        title: Href
        type: string
        readOnly: true
      created_at:
        title: Created at
        description: Creation date. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      updated_at:
        title: Updated at
        description: Date of the last modification. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      marketplace:
        title: Marketplace
        description: Unique identifier (uuid) of the related marketplace.
        type: string
        format: uuid
      reference:
        title: Reference
        description: Marketplace reference of the order. Its uniqueness is enforced
          when using use the embedded form, and is in any case recommended.
        type: string
        pattern: ^[a-zA-Z0-9_ \-]+$
        maxLength: 32
        minLength: 1
      description:
        title: Description
        description: Marketplace description of the order.
        type: string
        maxLength: 255
        minLength: 1
      language:
        title: Language
        description: If no language is defined, the payment page will be displayed
          according to the user's browser default settings.
        type: string
        enum:
          - de
          - en
          - es
          - fr
          - it
          - ja
          - nl
          - pl
          - pt
          - ru
          - sv
          - tr
          - zh
      alias:
        title: Alias
        description: This field can be used to define the alias in case of a one or
          zero-clic (MIT) payment.
        type: string
        maxLength: 50
        x-nullable: true
      awaiting_validation:
        title: Awaiting validation
        description: Creates a payment with manual validation.
        type: boolean
        x-nullable: true
      buyer:
        $ref: '#/definitions/BuyerSerializerLegacy'
      shipping:
        $ref: '#/definitions/ShippingSerializerLegacy'
      payment_config:
        title: Payment config
        description: Determine if the payment is spread on several transactions. Default
          is SINGLE.
        type: string
        x-nullable: true
      amount:
        title: Amount
        description: Total amount of the order, i.e. sum of the amounts of its items.
        type: integer
        readOnly: true
        x-nullable: true
      initial_amount:
        title: Initial amount
        description: Total order amount when executed. Updated amounts cannot exceed
          it.
        type: integer
        readOnly: true
        x-nullable: true
      currency:
        title: Currency
        type: string
      status:
        title: Status
        description: Current status of the marketplace.
        type: string
        enum:
          - CREATED
          - PENDING
          - SUCCEEDED
          - CANCELLED
          - FAILED
          - ABANDONED
        readOnly: true
      webhook_result:
        title: Webhook result
        description: Status code of the marketplace notification.
        type: integer
        readOnly: true
        x-nullable: true
      url_return:
        title: Url return
        description: Default URL to which the customer is redirected after the payment
          process.
        type: string
        format: uri
        maxLength: 512
      url_success:
        title: Url success
        description: URL to which the customer is redirected after the payment process
          if it was successful.
        type: string
        format: uri
        maxLength: 200
        x-nullable: true
      url_refused:
        title: Url refused
        description: URL to which the customer is redirected after the payment process
          if it was refused.
        type: string
        format: uri
        maxLength: 200
        x-nullable: true
      url_cancel:
        title: Url cancel
        description: URL to which the customer is redirected after the payment process
          if it was cancelled.
        type: string
        format: uri
        maxLength: 200
        x-nullable: true
      url_error:
        title: Url error
        description: URL to which the customer is redirected after the payment process
          if it was in error.
        type: string
        format: uri
        maxLength: 200
        x-nullable: true
      return_mode:
        title: Return mode
        description: Data transmission method used for the return URL.
        type: string
        enum:
          - GET
          - POST
          - NONE
        x-nullable: true
      shop_url:
        title: Shop url
        description: Overrides the shop url field set at the marketplace level.
        type: string
        format: uri
        maxLength: 200
        x-nullable: true
      links:
        $ref: '#/definitions/OrderLinks'
      vads_transaction_id:
        title: Vads transaction id
        type: string
        readOnly: true
      vads_transaction_date:
        title: Vads transaction date
        type: string
        readOnly: true
      expected_capture_date:
        title: Expected capture date
        description: The expected capture may be used to adjust the capture date after
          the payment.
        type: string
        pattern: ^[\d]{14}$
        maxLength: 14
        x-nullable: true
      capture_delay:
        title: Capture delay
        description: Number of days between the payment and the capture. Can only
          be set before the payment. After the payment, the capture delay should be
          updating using expected_capture_date. The maximum value is defined at the
          marketplace level (see max_capture_delay, default is 6 days).
        type: integer
        maximum: 90
        minimum: 0
        x-nullable: true
      persist_url:
        title: Persist url
        description: Persistent payment link, if applicable.
        type: string
        readOnly: true
      expiry_date:
        title: Expiry date
        description: Represents the expiry date of the persist token, if exists.
        type: string
        format: date-time
        readOnly: true
        x-nullable: true
  BoardMemberAddress:
    required:
      - country
    type: object
    properties:
      street_number:
        title: Street number
        type: string
        maxLength: 5
        x-nullable: true
      street:
        title: Street
        type: string
        maxLength: 255
        x-nullable: true
      district:
        title: District
        type: string
        maxLength: 127
        x-nullable: true
      zipcode:
        title: Zipcode
        type: string
        maxLength: 64
        x-nullable: true
      city:
        title: City
        type: string
        maxLength: 128
        x-nullable: true
      state:
        title: State
        type: string
        maxLength: 127
        x-nullable: true
      country:
        title: Country
        type: string
        pattern: '[A-Z]{2}'
        maxLength: 2
        minLength: 1
  BoardMember:
    required:
      - title
      - first_name
      - last_name
      - birth_date
      - birth_city
      - nationality
      - address
    type: object
    properties:
      uuid:
        title: Uuid
        type: string
        minLength: 1
      registration:
        title: Registration
        type: string
        format: uuid
      title:
        title: Title
        type: string
        maxLength: 63
        minLength: 1
      first_name:
        title: First name
        type: string
        maxLength: 63
        minLength: 1
      last_name:
        title: Last name
        type: string
        maxLength: 63
        minLength: 1
      birth_date:
        title: Birth date
        type: string
        format: date
      birth_city:
        title: Birth city
        type: string
        maxLength: 128
        minLength: 1
      nationality:
        title: Nationality
        type: string
        pattern: '[A-Z]{2}'
        maxLength: 2
        minLength: 1
      role:
        title: Role
        type: string
        enum:
          - LEGAL_REP
          - BENEFICIARY
      phone_number:
        title: Phone number
        type: string
        maxLength: 32
      email:
        title: Email
        type: string
        format: email
        maxLength: 150
      address:
        $ref: '#/definitions/BoardMemberAddress'
      status:
        title: Status
        type: string
        enum:
          - ACTIVE
          - INACTIVE
        readOnly: true
  Activity:
    required:
      - name
    type: object
    properties:
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      registration:
        title: Registration
        type: string
        format: uuid
      name:
        title: Name
        type: string
        minLength: 1
      url:
        title: Url
        type: string
        format: uri
        maxLength: 200
        x-nullable: true
      registration_date:
        title: Registration date
        type: string
        format: date
        x-nullable: true
      siret:
        title: Siret
        description: Siret number. Must be set if legal_identifier is not set.
        type: string
        maxLength: 14
        x-nullable: true
      legal_identifier:
        title: Legal identifier
        description: Legal identifier. Must be set if siret is not set.
        type: string
        maxLength: 20
        x-nullable: true
      mcc:
        title: Mcc
        type: integer
        maximum: 2147483647
        minimum: 0
        x-nullable: true
      naf:
        title: Naf
        type: string
        maxLength: 5
        x-nullable: true
      is_principal:
        title: Is principal
        type: boolean
        x-nullable: true
  RegistrationIBAN:
    description: List of ibans associated with their currencies.
    required:
      - iban
      - currencies
    type: object
    properties:
      registration:
        title: Registration
        type: string
        format: uuid
      iban:
        title: Iban
        type: string
        maxLength: 34
        minLength: 1
      currencies:
        type: array
        items:
          title: Currencies
          type: string
          maxLength: 3
          minLength: 1
  RegistrationVoucher:
    description: Eligible vouchers with their contract numbers.
    required:
      - contract_number
      - contract_type
    type: object
    properties:
      registration:
        title: Registration
        type: string
        format: uuid
      contract_number:
        title: Contract number
        type: string
        maxLength: 128
        minLength: 1
      contract_type:
        title: Contract type
        type: string
  RegistrationLinks:
    required:
      - documents
    type: object
    properties:
      documents:
        $ref: '#/definitions/Href'
  Registration:
    required:
      - marketplace
      - name
      - person_type
      - description
      - vat_number
      - board
      - activities
    type: object
    properties:
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      seller:
        title: Seller
        type: string
        format: uuid
        x-nullable: true
      href:
        title: Href
        type: string
        readOnly: true
      created_at:
        title: Created at
        description: Creation date. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      updated_at:
        title: Updated at
        description: Date of the last modification. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      marketplace:
        title: Marketplace
        description: Uuid of the marketplace.
        type: string
        format: uuid
      name:
        title: Name
        description: Company name (name of the company as indicated on the KBIS).
        type: string
        maxLength: 255
        minLength: 1
      person_type:
        title: Person type
        description: Seller's type, either natural person ('PP') or legal entity ('PM').
          Default is 'PM'.
        type: string
        enum:
          - PM
          - PP
      title:
        title: Title
        description: Seller's title, if a natural person.
        type: string
        maxLength: 63
        x-nullable: true
      first_name:
        title: First name
        description: Seller's first_name, if a natural person.
        type: string
        maxLength: 63
        x-nullable: true
      last_name:
        title: Last name
        description: Seller's last name, if a natural person.
        type: string
        maxLength: 63
        x-nullable: true
      trading_name:
        title: Trading name
        description: Seller's trading name, if it is a legal entity.
        type: string
        maxLength: 255
        x-nullable: true
      nature:
        title: Nature
        description: Company name (name of the company as indicated on the KBIS).
        type: string
        maxLength: 255
        x-nullable: true
      reference:
        title: Reference
        description: 'WARNING: this field will be read-only as it returns the seller
          reference (e.g. "SL012345") as soon as the registration has been created.'
        type: string
        maxLength: 255
        minLength: 1
      description:
        title: Description
        description: Description of the seller.
        type: string
        minLength: 1
      iban:
        title: Iban
        description: Iban of the seller. Applicable only if the marketplace supports
          only one currency. Otherwise the 'ibans' property must be set instead.
        type: string
        maxLength: 34
        x-nullable: true
      status:
        title: Status
        description: Current status of the registration.
        type: string
        enum:
          - CREATED
          - AWAITING_SUBMISSION
          - PENDING_VERIFICATION
          - SUCCEEDED
          - CANCELLED
          - FAILED
          - ABANDONED
          - CLOSED
          - SUSPENDED
          - REJECTED
        readOnly: true
      status_comment:
        title: Status comment
        description: Comments explaining the reasons for a referral to the marketplace.
        type: string
        readOnly: true
        minLength: 1
        x-nullable: true
      legal_form:
        title: Legal form
        description: Legal form of the seller. See documentation.
        type: integer
        maximum: 2147483647
        minimum: 0
        x-nullable: true
      economic_agent:
        title: Economic agent
        description: Economic agent ISO code.
        type: string
        maxLength: 255
        x-nullable: true
      vat_number:
        title: Vat number
        description: VAT number. When the seller is not subject to VAT, indicate the
          VAT number of the Marketplace.
        type: string
        maxLength: 16
        minLength: 1
      cashout_delay:
        title: Cashout delay
        description: Delay between the capture of a transaction and the cashout to
          the seller.
        type: integer
        maximum: 2147483647
        minimum: 0
        x-nullable: true
      external_ref:
        title: External ref
        description: Your ID of the seller. This allows you to avoid having to use
          the seller uuid when ordering.
        type: string
        maxLength: 50
        x-nullable: true
      turnover:
        title: Turnover
        description: Expected turnover, expressed in the smallest existing monetary
          unit (e.g. cents).
        type: integer
        maximum: 2147483647
        minimum: 0
        x-nullable: true
      address:
        $ref: '#/definitions/Address'
      board:
        type: array
        items:
          $ref: '#/definitions/BoardMember'
      activities:
        type: array
        items:
          $ref: '#/definitions/Activity'
      ibans:
        description: List of ibans associated with their currencies.
        type: array
        items:
          $ref: '#/definitions/RegistrationIBAN'
      vouchers:
        description: Eligible vouchers with their contract numbers.
        type: array
        items:
          $ref: '#/definitions/RegistrationVoucher'
      links:
        $ref: '#/definitions/RegistrationLinks'
  SellerLinks:
    required:
      - items
      - transfers
    type: object
    properties:
      items:
        $ref: '#/definitions/Href'
      transfers:
        $ref: '#/definitions/Href'
  SellerVoucher:
    required:
      - contract_type
      - contract_number
    type: object
    properties:
      contract_type:
        title: Contract type
        type: string
      contract_number:
        title: Contract number
        type: string
        maxLength: 128
        minLength: 1
  Seller:
    required:
      - marketplace
    type: object
    properties:
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      external_ref:
        title: External ref
        type: string
        maxLength: 50
        minLength: 1
      href:
        title: Href
        type: string
        readOnly: true
      created_at:
        title: Created at
        description: Creation date. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      updated_at:
        title: Updated at
        description: Date of the last modification. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      marketplace:
        title: Marketplace
        type: string
        format: uuid
      reference:
        title: Reference
        type: string
        maxLength: 255
        minLength: 1
      description:
        title: Description
        type: string
        maxLength: 255
        minLength: 1
      bic:
        title: Bic
        type: string
        maxLength: 11
      iban:
        title: Iban
        type: string
        maxLength: 34
      status:
        title: Status
        type: string
        enum:
          - ACTIVE
          - INACTIVE
        readOnly: true
      cashout_delay:
        title: Cashout delay
        type: integer
        maximum: 2147483647
        minimum: 0
        x-nullable: true
      is_marketplace_seller:
        title: Is marketplace seller
        type: boolean
        x-nullable: true
      links:
        $ref: '#/definitions/SellerLinks'
      vouchers:
        type: array
        items:
          $ref: '#/definitions/SellerVoucher'
        readOnly: true
  TransactionLinks:
    required:
      - transfers
    type: object
    properties:
      transfers:
        $ref: '#/definitions/Href'
  Transaction:
    required:
      - expected_capture_date
    type: object
    properties:
      trans_uuid:
        title: Trans uuid
        type: string
        maxLength: 36
        x-nullable: true
      order:
        title: Order
        type: string
        format: uuid
        readOnly: true
      sequence_number:
        title: Sequence number
        type: integer
        maximum: 32767
        minimum: 0
      paid_at:
        title: Paid at
        type: string
        format: date-time
        readOnly: true
        x-nullable: true
      auto_code:
        title: Auto code
        type: string
        readOnly: true
        minLength: 1
        x-nullable: true
      payment_scheme:
        title: Payment scheme
        type: string
        readOnly: true
        minLength: 1
      amount:
        title: Amount
        type: integer
        maximum: 2147483647
        minimum: -2147483648
        x-nullable: true
      initial_amount:
        title: Initial amount
        type: integer
        readOnly: true
      expected_capture_date:
        title: Expected capture date
        type: string
        maxLength: 14
        minLength: 1
      status:
        title: Status
        type: string
        enum:
          - CREATED
          - PENDING
          - SUCCEEDED
          - CANCELLED
          - FAILED
          - EXPIRED
          - TO_VALIDATE
        readOnly: true
      links:
        $ref: '#/definitions/TransactionLinks'
      created_at:
        title: Created at
        description: Creation date. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      updated_at:
        title: Updated at
        description: Date of the last modification. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
  Webhook:
    required:
      - event_type
      - target
    type: object
    properties:
      event_type:
        title: Event type
        type: string
        enum:
          - order
          - token
          - registration
          - refund
          - kyc
      target:
        title: Target
        type: string
        format: uri
        maxLength: 200
        minLength: 1
  Buyer:
    required:
      - type
      - phone_number
      - email
    type: object
    properties:
      reference:
        title: Reference
        type: string
        maxLength: 63
        x-nullable: true
      title:
        title: Title
        type: string
        maxLength: 63
        x-nullable: true
      type:
        title: Type
        type: string
        enum:
          - PRIVATE
          - COMPANY
      first_name:
        title: First name
        type: string
        maxLength: 63
        x-nullable: true
      last_name:
        title: Last name
        type: string
        maxLength: 63
        x-nullable: true
      legal_name:
        title: Legal name
        type: string
        maxLength: 127
        x-nullable: true
      phone_number:
        title: Phone number
        type: string
        maxLength: 32
        minLength: 1
      email:
        title: Email
        type: string
        format: email
        maxLength: 150
        minLength: 1
      address:
        $ref: '#/definitions/Address'
  Shipping:
    required:
      - shipping_method
    type: object
    properties:
      shipping_method:
        title: Shipping method
        type: string
        enum:
          - RECLAIM_IN_SHOP
          - RELAY_POINT
          - RECLAIM_IN_STATION
          - PACKAGE_DELIVERY_COMPANY
          - ETICKET
      delivery_company_name:
        title: Delivery company name
        type: string
        maxLength: 127
        x-nullable: true
      shipping_speed:
        title: Shipping speed
        type: string
        enum:
          - STANDARD
          - EXPRESS
          - PRIORITY
        x-nullable: true
      shipping_delay:
        title: Shipping delay
        type: string
        enum:
          - INFERIOR_EQUALS
          - SUPERIOR
          - IMMEDIATE
          - ALWAYS
        x-nullable: true
      type:
        title: Type
        type: string
        enum:
          - PRIVATE
          - COMPANY
        x-nullable: true
      first_name:
        title: First name
        type: string
        maxLength: 63
        x-nullable: true
      last_name:
        title: Last name
        type: string
        maxLength: 63
        x-nullable: true
      legal_name:
        title: Legal name
        type: string
        maxLength: 127
        x-nullable: true
      phone_number:
        title: Phone number
        type: string
        maxLength: 32
        x-nullable: true
      address:
        $ref: '#/definitions/Address'
  OrderResponse:
    required:
      - marketplace
      - reference
      - buyer
      - currency
      - items
      - transactions
    type: object
    properties:
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      href:
        title: Href
        type: string
        readOnly: true
      created_at:
        title: Created at
        description: Creation date. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      updated_at:
        title: Updated at
        description: Date of the last modification. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      marketplace:
        title: Marketplace
        description: Unique identifier (uuid) of the related marketplace.
        type: string
        format: uuid
      reference:
        title: Reference
        description: Marketplace reference of the order. Its uniqueness is enforced
          when using use the embedded form, and is in any case recommended.
        type: string
        pattern: ^[a-zA-Z0-9_ \-]+$
        maxLength: 32
        minLength: 1
      description:
        title: Description
        description: Marketplace description of the order.
        type: string
        maxLength: 255
        minLength: 1
      language:
        title: Language
        description: If no language is defined, the payment page will be displayed
          according to the user's browser default settings.
        type: string
        enum:
          - de
          - en
          - es
          - fr
          - it
          - ja
          - nl
          - pl
          - pt
          - ru
          - sv
          - tr
          - zh
      alias:
        title: Alias
        description: This field can be used to define the alias in case of a one or
          zero-clic (MIT) payment.
        type: string
        maxLength: 50
        x-nullable: true
      awaiting_validation:
        title: Awaiting validation
        description: Creates a payment with manual validation.
        type: boolean
        x-nullable: true
      buyer:
        type: array
        items:
          $ref: '#/definitions/Buyer'
      shipping:
        type: array
        items:
          $ref: '#/definitions/Shipping'
      payment_config:
        title: Payment config
        description: Determine if the payment is spread on several transactions. Default
          is SINGLE.
        type: string
        x-nullable: true
      amount:
        title: Amount
        description: Total amount of the order, i.e. sum of the amounts of its items.
        type: integer
        maximum: 2147483647
        minimum: -2147483648
        x-nullable: true
      initial_amount:
        title: Initial amount
        description: Total order amount when executed. Updated amounts cannot exceed
          it.
        type: integer
        maximum: 2147483647
        minimum: -2147483648
        x-nullable: true
      currency:
        title: Currency
        type: string
      status:
        title: Status
        description: Current status of the marketplace.
        type: string
        enum:
          - CREATED
          - PENDING
          - SUCCEEDED
          - CANCELLED
          - FAILED
          - ABANDONED
      webhook_result:
        title: Webhook result
        description: Status code of the marketplace notification.
        type: integer
        maximum: 32767
        minimum: 0
        x-nullable: true
      url_return:
        title: Url return
        description: Default URL to which the customer is redirected after the payment
          process.
        type: string
        format: uri
        maxLength: 512
      url_success:
        title: Url success
        description: URL to which the customer is redirected after the payment process
          if it was successful.
        type: string
        format: uri
        maxLength: 200
        x-nullable: true
      url_refused:
        title: Url refused
        description: URL to which the customer is redirected after the payment process
          if it was refused.
        type: string
        format: uri
        maxLength: 200
        x-nullable: true
      url_cancel:
        title: Url cancel
        description: URL to which the customer is redirected after the payment process
          if it was cancelled.
        type: string
        format: uri
        maxLength: 200
        x-nullable: true
      url_error:
        title: Url error
        description: URL to which the customer is redirected after the payment process
          if it was in error.
        type: string
        format: uri
        maxLength: 200
        x-nullable: true
      return_mode:
        title: Return mode
        description: Data transmission method used for the return URL.
        type: string
        enum:
          - GET
          - POST
          - NONE
        x-nullable: true
      shop_url:
        title: Shop url
        description: Overrides the shop url field set at the marketplace level.
        type: string
        format: uri
        maxLength: 200
        x-nullable: true
      items:
        type: array
        items:
          $ref: '#/definitions/ItemSerializer'
      links:
        $ref: '#/definitions/OrderLinks'
      vads_transaction_id:
        title: Vads transaction id
        type: string
        readOnly: true
      vads_transaction_date:
        title: Vads transaction date
        type: string
        readOnly: true
      expected_capture_date:
        title: Expected capture date
        description: The expected capture may be used to adjust the capture date after
          the payment.
        type: string
        pattern: ^[\d]{14}$
        maxLength: 14
        x-nullable: true
      capture_delay:
        title: Capture delay
        description: Number of days between the payment and the capture. Can only
          be set before the payment. After the payment, the capture delay should be
          updating using expected_capture_date. The maximum value is defined at the
          marketplace level (see max_capture_delay, default is 6 days).
        type: integer
        maximum: 90
        minimum: 0
        x-nullable: true
      transactions:
        type: array
        items:
          $ref: '#/definitions/Transaction'
      persist_url:
        title: Persist url
        description: Persistent payment link, if applicable.
        type: string
        readOnly: true
      expiry_date:
        title: Expiry date
        description: Represents the expiry date of the persist token, if exists.
        type: string
        format: date-time
        readOnly: true
        x-nullable: true
  RefundItem:
    required:
      - reference
      - amount
    type: object
    properties:
      seller:
        title: Seller
        description: Uuid of the seller. Alternatively, use seller_external_ref.
        type: string
        format: uuid
      refund:
        title: Refund
        type: string
        format: uuid
      item:
        title: Item
        description: Uuid of the item.
        type: string
        format: uuid
      reference:
        title: Reference
        description: Refund item reference.
        type: string
        maxLength: 32
        minLength: 1
      description:
        title: Description
        description: Refund item description.
        type: string
        maxLength: 255
        minLength: 1
      amount:
        title: Amount
        type: integer
        maximum: 2147483647
        minimum: 0
      is_commission:
        title: Is commission
        type: boolean
        x-nullable: true
      seller_external_ref:
        title: Seller external ref
        description: External reference of the seller. This field is mandatory if
          seller is not set.
        type: string
        maxLength: 255
        minLength: 1
  Refund:
    required:
      - reference
      - currency
      - items
    type: object
    properties:
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      href:
        title: Href
        type: string
        readOnly: true
      created_at:
        title: Created at
        description: Creation date. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      updated_at:
        title: Updated at
        description: Date of the last modification. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      order:
        title: Order
        description: Uuid of the related order.
        type: string
        minLength: 1
      transaction:
        title: Transaction
        description: Uuid of the related transaction.
        type: string
      reference:
        title: Reference
        description: Reference of the refund.
        type: string
        maxLength: 32
        minLength: 1
      description:
        title: Description
        description: Description
        type: string
        maxLength: 255
        minLength: 1
      amount:
        title: Amount
        type: integer
        readOnly: true
      currency:
        title: Currency
        description: Currency of the refund transaction.
        type: string
      status:
        title: Status
        type: string
        enum:
          - CREATED
          - PENDING
          - SUCCEEDED
          - CANCELLED
          - FAILED
          - ABANDONED
        readOnly: true
      items:
        type: array
        items:
          $ref: '#/definitions/RefundItem'
  RegistrationDocument:
    required:
      - type
      - reference
    type: object
    properties:
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      created_at:
        title: Created at
        description: Creation date. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      updated_at:
        title: Updated at
        description: Date of the last modification. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      registration:
        title: Registration
        description: Uuid of the related registration to which the document must be
          added.
        type: string
        format: uuid
      board_member:
        title: Board member
        description: Uuid of the related board member related to the document. This
          field is mandatory when uploading an identity or an address type of document.
        type: string
        format: uuid
      type:
        title: Type
        description: Type of the document.
        type: string
        enum:
          - IBAN
          - KBIS
          - BALANCE
          - STATUS
          - COMPANY_OTHER
          - PROOF_OF_RESIDENCY
          - HOUSING_TAX
          - ENERGY_PHONE_BILL
          - ADDRESS_OTHER
          - JDD
          - IDENTITY_CARD
          - PASSPORT
          - RESIDENCE_PERMIT
          - DRIVING_LICENSE_OLD_GENERATION
          - DRIVING_LICENSE_NEW_GENERATION
          - IDENTITY_OTHER
      reference:
        title: Reference
        description: Reference of the document.
        type: string
        minLength: 1
      description:
        title: Description
        description: Optional description of the document.
        type: string
        maxLength: 255
        minLength: 1
      file:
        title: File
        description: Document.
        type: string
        readOnly: true
        format: uri
      additional_data:
        title: Additional data
        description: Additional data. Use this field to set the IBAN if you upload
          an IBAN.
        type: string
      status:
        title: Status
        type: string
        enum:
          - UNKNOWN
          - CREATED
          - PENDING
          - REJECTED
          - VALIDATED
          - EXPIRED
        readOnly: true
      reject_reason:
        title: Reject reason
        description: If the document is REJECTED, this field may be set with the reason.
        type: string
        enum:
          - ILLEGIBLE
          - INCOMPLETE
          - INCONSISTENT
          - OTHER
        readOnly: true
        x-nullable: true
  OrderRegister:
    required:
      - marketplace
      - buyer
    type: object
    properties:
      uuid:
        title: Uuid
        description: Unique identifier. This field is automatically generated.
        type: string
        format: uuid
        readOnly: true
      created_at:
        title: Created at
        description: Creation date. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      updated_at:
        title: Updated at
        description: Date of the last modification. This field is automatically generated.
        type: string
        format: date-time
        readOnly: true
      marketplace:
        title: Marketplace
        type: string
        format: uuid
      buyer:
        $ref: '#/definitions/Buyer'
      language:
        title: Language
        description: If no language is defined, the payment page will be displayed
          according to the user's browser default settings.
        type: string
        enum:
          - de
          - en
          - es
          - fr
          - it
          - ja
          - nl
          - pl
          - pt
          - ru
          - sv
          - tr
          - zh
      url_return:
        title: Url return
        description: Default URL to which the customer is redirected after the payment
          process.
        type: string
        format: uri
        maxLength: 512
      status:
        title: Status
        type: string
        maxLength: 10
        minLength: 1
      alias:
        title: Alias
        type: string
        maxLength: 50
        minLength: 1
      alias_to_update:
        title: Alias to update
        type: string
        maxLength: 50
        minLength: 1
      payment_url:
        title: Payment url
        description: URL address of the Payzen payment Form.
        type: string
        maxLength: 255
        x-nullable: true
      currency:
        title: Currency
        type: string
