---
title: "Create payment request"
method: POST
path: "/api/v1/payments/requests"
tags: ["Payment.Payment Request"]
---

# Create payment request

`POST /api/v1/payments/requests`

Create a payment request with the given values. This endpoint returns an `id` which can be used with Tink Link to create a full payment journey for an end user.

## Request body

- PTCreatePaymentRestRequest — The payment request model represents a request to send payments with the recipient's payment information. It can't be used to make payments directly.
  - `amount` number, required — The [IS0 4217](https://www.iso.org/iso-4217-currency-codes.html) payment amount.
  - `currency` string, required — The [IS0 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the payment.
  - `destinations` PTPaymentDestinationDTO[] — [DEPRECATED] A single-item list of account numbers that can receive the payment. If more than one item is provided, we select the first. Deprecated in favor of `recipient`, which contains `accountNumber` and `accountType`.
    - `accountNumber` string, required — The recipient’s account number.
    - `type` 'bban' | 'email' | 'iban' | 'multibanco-entity' | 'se' | 'se-bg' | 'se-internal' | 'se-pg' | 'sort-code', required — The account type identifier.
  - `executionDate` string — The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) date when the bank should execute the payment. If no date is provided, the payment will be executed as soon as possible. This feature’s availability depends on the market. Check availability in [market-specific information](https://docs.tink.com/resources/payments/one-time-payments/one-time-payments-market-specific-information) or reach out to our [support team](https://tinkab.atlassian.net/servicedesk/customer/portals) for more details.
  - `flowPreference` PTFlowPreference — Controls how the end-user completes Strong Customer Authentication (SCA) within the Tink Link flow.
    - `scaDeviceType` 'SAME_DEVICE' | 'CROSS_DEVICE', required — Device type preference for Strong Customer Authentication (SCA) in the Tink Link flow. `SAME_DEVICE` — SCA is completed on the same device that initiated the payment. `CROSS_DEVICE` — SCA is completed on a separate remote device (e.g. mobile app) from the payment initiation device.
  - `market` 'AT' | 'CZ' | 'DE' | 'DK' | 'EE' | 'ES' | 'FI' | 'FR' | 'GB' | 'IT' | 'LT' | 'LV' | 'NL' | 'NO' | 'PL' | 'PT' | 'SE', required — The [IS0 3166-1](https://www.iso.org/iso-3166-country-codes.html) alpha-2 country code.
  - `merchantId` string — Id of the merchant to affiliate with this payment request.
  - `metadata` object — Custom metadata for the payment request. Keys and values must be strings. For privacy protection, you may not store personal data (e.g., names and addresses) in `metadata`.
  - `paymentScheme` 'DANISH_DOMESTIC_CREDIT_TRANSFER' | 'FASTER_PAYMENTS' | 'INSTANT_DANISH_DOMESTIC_CREDIT_TRANSFER_INTRADAG' | 'INSTANT_DANISH_DOMESTIC_CREDIT_TRANSFER_STRAKS' | 'INSTANT_NORWEGIAN_DOMESTIC_CREDIT_TRANSFER_STRAKS' | 'INSTANT_POLISH_DOMESTIC_CREDIT_TRANSFER' | 'MULTIBANCO_SERVICE' | 'NORWEGIAN_DOMESTIC_CREDIT_TRANSFER' | 'POLISH_DOMESTIC_CREDIT_TRANSFER' | 'SEPA_CREDIT_TRANSFER' | 'SEPA_INSTANT_CREDIT_TRANSFER' | 'SWISS_DOMESTIC_CREDIT_TRANSFER' — The payment scheme identifier.
  - `recipient` PTRecipientDTO, required
    - `accountNumber` string, required — The recipient's account number.
    - `accountType` 'bban' | 'email' | 'iban' | 'multibanco-entity' | 'se' | 'se-bg' | 'se-internal' | 'se-pg' | 'sort-code', required — The account type identifier.
    - `address` PTAddressDTO
      - `city` string, required — The name of the city.
      - `countryCode` string, required — The [IS0 3166-1](https://www.iso.org/iso-3166-country-codes.html) country code of the address in alpha-2 or alpha-3 format.
      - `flatNumber` string — The flat, unit, apartment, or house number.
      - `postCode` string — The postal code.
      - `region` string — The state, district, or other administrative region, if required by the market. For details, see the [S42 International Addressing Standard](https://www.upu.int/UPU/media/upu/documents/PostCode/S42_International-Addressing-Standards.pdf).
      - `streetName` string, required — The name of the street.
      - `streetNumber` string, required — The number of the building.
    - `businessIdentifierCode` string — The recipient’s business identifier code (BIC). Used for cross-border payments.
  - `recipientName` string, required — The recipient name shown to the payer on signing payments. Maximum character count of 30. Special characters such as á, ã or ç can be used.
  - `remittanceInformation` PTRemittanceInformationDTO, required
    - `type` 'INVOICE' | 'KID' | 'MULTIBANCO_REFERENCE' | 'OCR' | 'REFERENCE' | 'RF' | 'UNSTRUCTURED', required — The type of remittance information.
    - `value` string, required — The remittance information. See [market-specific information](https://docs.tink.com/resources/payments/one-time-payments/one-time-payments-market-specific-information) for requirements.
  - `sender` PTPinnedSenderDTO
    - `accountNumber` string — The sender’s account number. Must be provided together with the `accountType`.
    - `accountType` 'bban' | 'email' | 'iban' | 'multibanco-entity' | 'se' | 'se-bg' | 'se-internal' | 'se-pg' | 'sort-code' — The account type identifier.
    - `firstName` string — The sender’s first name. Maximum 30 characters. Special characters such as á, ã or ç can be used.
    - `lastName` string — The sender’s last name. Maximum 30 characters. Special characters such as á, ã or ç can be used.
  - `sourceMessage` string — A description of the transaction that appears on the payer’s account. Supported only in Sweden (`SE`). Maximum 50 characters, though some banks may require fewer.
  - `userConsent` PTUserConsent — User consent information for customer-hosted consent flow. Note: This feature needs to be enabled by support. To enable, [contact Support](https://support.tink.com/).
    - `consentCaptured` boolean — Indicates whether the customer has captured valid user consent. When true, the consent screen in Tink Link will be skipped.
    - `consentText` string — The exact legal text displayed to the user, including URLs to the Terms of Service and Privacy Notice. Maximum length is 1000 characters.

## Response `200`

The payment request was created.

## Other responses

- `400` — One or more request parameters are incorrect or missing. The response body includes an `error_code` and `error_message` that provide more details about the issue. For more information, see [one-time payment error codes](https://docs.tink.com/resources/payments/one-time-payments/handle-one-time-payments-sdk-error-codes).
- `401` — Unauthorized, possibly because of missing “Authorization: Bearer {access token}” HTTP header or expired access token.
- `403` — Forbidden

---

[API](https://skmtc.net/tink/apis/tink-api.md) · [All operations](https://skmtc.net/tink/apis/tink-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tink/tink-api/revisions/23d8982b533d/schema)
