Fintecture · Arazzo Workflow

Fintecture Request To Pay and Track Status

Version 1.0.0

Generate a payment link, find the resulting payment by status filter, then read its details.

1 workflow 1 source API 1 provider
View Spec View on GitHub Open BankingPaymentsPSD2FranceAccount InformationPayment InitiationInstant PaymentsSEPASmart TransferRequest To PayBuy Now Pay LaterE-MandatesAccount-to-AccountKYCArazzoWorkflows

Provider

fintecture

Workflows

request-to-pay-status
Create a request-to-pay link, locate its payment, and read the payment status.
Generates a payment link, lists payments filtered by status to find the created payment, and reads the matched payment's detailed status.
3 steps inputs: accessToken, amount, communication, currency, psuEmail, psuName, requestId, statusFilter outputs: linkUrl, sessionId, status
1
createLink
createPisV2RequestToPay
Generate a Fintecture payment link and deliver it to the customer by email.
2
findPayment
getPisV2Payments
List payments filtered by status to locate the payment the link created.
3
getPayment
getPaymentSession
Read the matched payment back to surface its current detailed status.

Source API Descriptions

Arazzo Workflow Specification

fintecture-request-to-pay-status-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Fintecture Request To Pay and Track Status
  summary: Generate a payment link, find the resulting payment by status filter, then read its details.
  description: >-
    A pay-by-link flow. It generates a Fintecture payment link delivered to the
    customer by email or SMS, then lists payments filtered by a pending status to
    locate the payment the link created, and finally reads that payment back to
    surface its current lifecycle status. Every step spells out its request
    inline so the flow can be read and executed without opening the underlying
    OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: pisApi
  url: ../openapi/fintecture-pis-api-openapi.yml
  type: openapi
workflows:
- workflowId: request-to-pay-status
  summary: Create a request-to-pay link, locate its payment, and read the payment status.
  description: >-
    Generates a payment link, lists payments filtered by status to find the
    created payment, and reads the matched payment's detailed status.
  inputs:
    type: object
    required:
    - accessToken
    - amount
    - currency
    - communication
    - psuName
    - psuEmail
    - requestId
    properties:
      accessToken:
        type: string
        description: A valid PIS-scoped bearer access token.
      amount:
        type: string
        description: Payment amount as a string in the given currency.
      currency:
        type: string
        description: ISO currency code (EUR, GBP, or PLN).
      communication:
        type: string
        description: Free-form remittance information shown on the payment link.
      psuName:
        type: string
        description: Full name of the customer the link is sent to.
      psuEmail:
        type: string
        description: Email address the payment link is delivered to.
      requestId:
        type: string
        description: Unique request identifier (UUID v4) for the request-to-pay call.
      statusFilter:
        type: string
        description: Payment status used to filter the payment list (e.g. "payment_pending").
  steps:
  - stepId: createLink
    description: Generate a Fintecture payment link and deliver it to the customer by email.
    operationId: createPisV2RequestToPay
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    - name: x-request-id
      in: header
      value: $inputs.requestId
    requestBody:
      contentType: application/json
      payload:
        meta:
          psu_name: $inputs.psuName
          psu_email: $inputs.psuEmail
        data:
          type: PIS
          attributes:
            amount: $inputs.amount
            currency: $inputs.currency
            communication: $inputs.communication
            payment_method: immediate_transfer
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      sessionId: $response.body#/meta/session_id
      linkUrl: $response.body#/meta/url
      linkId: $response.body#/meta/link_id
  - stepId: findPayment
    description: List payments filtered by status to locate the payment the link created.
    operationId: getPisV2Payments
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    - name: filter[status]
      in: query
      value: $inputs.statusFilter
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      payments: $response.body#/data
      firstPaymentId: $response.body#/data/0/id
  - stepId: getPayment
    description: Read the matched payment back to surface its current detailed status.
    operationId: getPaymentSession
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    - name: payment_id
      in: path
      value: $steps.findPayment.outputs.firstPaymentId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      status: $response.body#/status
  outputs:
    sessionId: $steps.createLink.outputs.sessionId
    linkUrl: $steps.createLink.outputs.linkUrl
    status: $steps.getPayment.outputs.status