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

# Send a Stand-In Processing (STIP) Transaction

> Send a request to this endpoint to simulate a STIP transaction. The card Scheme
processes the authorisation request on behalf of the processor, when the processor is unavailable.

The `decision` parameter denotes the Scheme response:
- `APPROVAL` — The Scheme approved the transaction.
- `DECLINE` — The Scheme declined the transaction.

The `initiator` parameter denotes who triggered the STIP:
- `SCHEME_INITIATED` — the Scheme initiated the stand-in processing request.
- `CUSTOMER_INITIATED` — the Customer initiated the stand-in processing request.

The authorisation response code (ISO 8583 DE39) reported in the transaction event follows from the
decision and the initiator, because a STIP decision is made by the Scheme and not by the issuer:

| decision | initiator | Visa | Mastercard |
|---|---|---|---|
| `APPROVAL` | any | `00` | `00` |
| `DECLINE` | `SCHEME_INITIATED` | `N0` | `96` |
| `DECLINE` | `CUSTOMER_INITIATED` | `N0` | `91` |




## OpenAPI

````yaml json-files/mycore-test-api.openapi.json post /v1/authorizations/stip
openapi: 3.0.3
info:
  version: '1'
  title: Test API
  description: >
    Available in the integration environment. Use this API to simulate payment
    card transactions

    for integration testing and card programme.


    All endpoints require **HTTP Basic Authentication** with the `CAT2_API_ALL`
    role.
servers:
  - url: https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api
security:
  - basicAuth: []
tags:
  - name: authorizations
    description: Send authorisation, reversal, advice, and adjustment messages.
  - name: incremental
    description: >-
      Incremental authorisation — add authorized amount on top of an existing
      authorization.
  - name: stip
    description: Stand-In Processing — simulate scheme-initiated authorization decisions.
  - name: batch-transactions
    description: Run a full transaction lifecycle in one call.
  - name: legacy
    description: Legacy load-testing endpoint.
paths:
  /v1/authorizations/stip:
    post:
      tags:
        - stip
      summary: Send a Stand-In Processing (STIP) Transaction
      description: >
        Send a request to this endpoint to simulate a STIP transaction. The card
        Scheme

        processes the authorisation request on behalf of the processor, when the
        processor is unavailable.


        The `decision` parameter denotes the Scheme response:

        - `APPROVAL` — The Scheme approved the transaction.

        - `DECLINE` — The Scheme declined the transaction.


        The `initiator` parameter denotes who triggered the STIP:

        - `SCHEME_INITIATED` — the Scheme initiated the stand-in processing
        request.

        - `CUSTOMER_INITIATED` — the Customer initiated the stand-in processing
        request.


        The authorisation response code (ISO 8583 DE39) reported in the
        transaction event follows from the

        decision and the initiator, because a STIP decision is made by the
        Scheme and not by the issuer:


        | decision | initiator | Visa | Mastercard |

        |---|---|---|---|

        | `APPROVAL` | any | `00` | `00` |

        | `DECLINE` | `SCHEME_INITIATED` | `N0` | `96` |

        | `DECLINE` | `CUSTOMER_INITIATED` | `N0` | `91` |
      operationId: postStipAuthorization
      parameters:
        - $ref: '#/components/parameters/auditUser'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/stipAuthorizationRequest'
            example:
              card:
                id: abc123
              merchantData:
                id: '123456789012345'
                name: Coffee Shop
                city: Helsinki
                country: FIN
                categoryCode: '5812'
                acquirerId: '12345678901'
                acquirerCountry: FIN
                terminalId: TERM0001
              transactionData:
                amount:
                  value: 25
                  currency: EUR
                type: RETAIL
                cardEntryMode: CONTACTLESS
              decision: APPROVAL
              initiator: SCHEME_INITIATED
      responses:
        '200':
          description: STIP authorization processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/authorizationResponse'
        '400':
          $ref: '#/components/responses/badRequest'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/notFound'
        '500':
          $ref: '#/components/responses/internalServerError'
components:
  parameters:
    auditUser:
      name: auditUser
      in: query
      description: Identifier of the user performing the action, used for audit logging.
      required: true
      schema:
        type: string
  schemas:
    stipAuthorizationRequest:
      description: Stand-In Processing authorisation request payload.
      type: object
      required:
        - card
        - merchantData
        - transactionData
        - decision
        - initiator
      properties:
        card:
          type: object
          required:
            - id
          properties:
            id:
              type: string
              description: Card identifier.
        merchantData:
          type: object
          required:
            - id
            - name
            - city
            - country
            - categoryCode
            - acquirerId
            - acquirerCountry
            - terminalId
          properties:
            id:
              type: string
              description: Uniquely identifies the card acceptor (ISO 8583 DE42).
              maxLength: 15
            name:
              type: string
              description: Merchant name (part of ISO 8583 DE43).
              maxLength: 25
            city:
              type: string
              description: City where the transaction occurred (part of ISO 8583 DE43).
              maxLength: 13
            country:
              $ref: '#/components/schemas/country'
            categoryCode:
              type: string
              description: Merchant category code (ISO 8583 DE18).
              maxLength: 4
              example: '5812'
            acquirerId:
              type: string
              description: Financial institution acting as the acquirer (ISO 8583 DE32).
              maxLength: 11
            acquirerCountry:
              $ref: '#/components/schemas/country'
            terminalId:
              type: string
              description: Uniquely identifies the terminal (ISO 8583 DE41).
              maxLength: 8
        transactionData:
          type: object
          required:
            - amount
            - type
            - cardEntryMode
          properties:
            amount:
              type: object
              required:
                - value
                - currency
              properties:
                value:
                  type: number
                  minimum: 0
                  example: 25
                currency:
                  type: string
                  description: ISO 4217 currency code.
                  example: EUR
            settlementAmount:
              type: object
              properties:
                value:
                  type: number
                  minimum: 0
                  example: 25
                currency:
                  type: string
                  description: ISO 4217 currency code.
                  example: EUR
            type:
              $ref: '#/components/schemas/stipTransactionType'
            cardEntryMode:
              $ref: '#/components/schemas/cardEntryMode'
            transactionDateTime:
              type: string
              format: date-time
              description: >-
                Date and time of the transaction in ISO 8601 format (e.g.
                `2025-05-21T14:30:00Z`).
        decision:
          type: string
          description: The STIP decision to simulate.
          enum:
            - APPROVAL
            - DECLINE
        initiator:
          type: string
          description: Denotes who triggered the STIP authorisation.
          enum:
            - SCHEME_INITIATED
            - CUSTOMER_INITIATED
        transactionId:
          type: string
          description: Optional reference to an existing transaction.
    authorizationResponse:
      description: Response to the request.
      type: object
      properties:
        metadata:
          type: object
          properties:
            mti:
              type: string
              description: ISO 8583 Message Type Indicator of the response.
              maxLength: 4
              example: '0110'
            id:
              $ref: '#/components/schemas/docId'
        transactionData:
          type: object
          properties:
            authResponseCode:
              $ref: '#/components/schemas/authResponseCode'
            retrievalReferenceNumber:
              $ref: '#/components/schemas/retrievalReferenceNumber'
    country:
      type: string
      description: ISO 3166-1 alpha-3 country code.
      example: FIN
    stipTransactionType:
      type: string
      description: Transaction type for STIP authorizations.
      enum:
        - RETAIL
        - CASH
        - ATM
        - CREDIT
        - P2P_CREDIT
        - P2P_DEBIT
        - UNIQUE
    cardEntryMode:
      type: string
      description: How card credentials were captured.
      enum:
        - MANUAL_ENTRY
        - MAGNETIC_STRIPE_READ
        - CHIP_READ
        - CONTACTLESS
        - ELECTRONIC_COMMERCE
    docId:
      type: string
      description: Unique authorization identifier (internal docId / ISO 8583 DE37).
      maxLength: 18
    authResponseCode:
      type: string
      description: |
        ISO 8583 DE39 response code. Common values:
        - `00` — Approved
        - `05` — Do not honour
        - `51` — Insufficient funds
        - `54` — Expired card
      maxLength: 2
      example: '00'
    retrievalReferenceNumber:
      type: string
      description: |
        Merchant/acquirer reference number (ISO 8583 DE37).
        Stays the same across all messages in a transaction lifecycle.
      maxLength: 12
    errorResponse:
      description: Standard error response.
      type: object
      properties:
        code:
          type: string
        message:
          type: string
        id:
          type: string
          format: uuid
        errorCode:
          type: string
        errorType:
          type: string
          enum:
            - STATIC_VALIDATION_ERROR
            - DYNAMIC_VALIDATION_ERROR
            - INTEGRATION_ERROR
            - SECURITY_ERROR
            - UNEXPECTED_ERROR
        errorReason:
          type: string
        timestamp:
          type: string
          format: date-time
  responses:
    badRequest:
      description: Bad request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/errorResponse'
    unauthorized:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/errorResponse'
    forbidden:
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/errorResponse'
    notFound:
      description: Not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/errorResponse'
    internalServerError:
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/errorResponse'
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic Auth. Credentials must carry the `CAT2_API_ALL` role.

````