curl --request POST \
--url https://api.pgw-sandbox.finventi.com/v3/payments/sepa \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"amount": 12550,
"creditor": {
"account": {
"iban": "LT029990200000000001"
},
"name": "Recipient Ltd"
},
"currencyCode": "EUR",
"debtor": {
"account": {
"iban": "LT409990100000000001"
},
"address": {
"country": "LT",
"structured": {
"buildingName": "Quadrum North",
"buildingNumber": "5",
"countrySubDivision": "Vilniaus apskritis",
"postCode": "08303",
"street": "Upes g."
},
"town": "Vilnius"
},
"name": "Payer Ltd"
},
"instant": false
}
'{
"createdAt": "2025-11-21T12:46:54.321667Z",
"creditor": {
"account": {
"iban": "<string>",
"other": {
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
},
"agent": {
"bic": "DEMOLT1XXXX",
"name": "<string>"
},
"address": {
"country": "LT",
"line": "<string>",
"structured": {
"buildingName": "<string>",
"buildingNumber": "<string>",
"countrySubDivision": "<string>",
"department": "<string>",
"districtName": "<string>",
"floor": "<string>",
"postBox": "<string>",
"postCode": "<string>",
"room": "<string>",
"street": "<string>",
"subDepartment": "<string>",
"townLocationName": "<string>"
},
"town": "Vilnius"
},
"name": "<string>",
"organisationIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"bic": "<string>",
"lei": "<string>"
},
"privateIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"birthInformation": {
"city": "<string>",
"country": "<string>",
"date": "<string>",
"province": "<string>"
}
}
},
"debtor": {
"account": {
"iban": "<string>",
"other": {
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
},
"agent": {
"bic": "DEMOLT1XXXX",
"name": "<string>"
},
"address": {
"country": "LT",
"line": "<string>",
"structured": {
"buildingName": "<string>",
"buildingNumber": "<string>",
"countrySubDivision": "<string>",
"department": "<string>",
"districtName": "<string>",
"floor": "<string>",
"postBox": "<string>",
"postCode": "<string>",
"room": "<string>",
"street": "<string>",
"subDepartment": "<string>",
"townLocationName": "<string>"
},
"town": "Vilnius"
},
"name": "<string>",
"organisationIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"bic": "<string>",
"lei": "<string>"
},
"privateIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"birthInformation": {
"city": "<string>",
"country": "<string>",
"date": "<string>",
"province": "<string>"
}
}
},
"direction": "OUTBOUND",
"endToEndId": "<string>",
"id": 10300007,
"instructedAmount": 100,
"instructedCurrency": "EUR",
"metadata": [
"<string>"
],
"scheme": "SEPA_CT",
"sddActionOptions": [
{
"reasons": [
{
"available": true,
"code": "MD06",
"deadline": "2026-10-15T11:15:00+03:00"
}
],
"type": "RETURN",
"deadline": "2026-08-27T11:15:00+03:00",
"settlementDate": "2023-12-25",
"windowEndDate": "2026-12-25"
}
],
"settlementAmount": 100,
"settlementCurrency": "EUR",
"status": "COMPLETED",
"type": "PAYMENT",
"categoryPurposeCode": "BONU",
"categoryPurposeProprietary": "<string>",
"chargesAndAdjustments": {
"compensation": 25,
"returnCharges": 50,
"unaccountedTax": 123
},
"creditTransferType": "CUSTOMER",
"directDebit": {
"amendmentIndicator": true,
"amendmentInformationDetails": {
"originalCreditorSchemeId": "<string>",
"originalDebtorAccount": "<string>",
"originalMandateId": "<string>"
},
"esignature": "<string>",
"mandateId": "MANDATE-2026-001",
"sequenceType": "RCUR",
"signatureDate": "2026-01-15"
},
"instructionId": "<string>",
"messageId": "<string>",
"originBic": "<string>",
"originName": "<string>",
"originReasonCode": "AC04",
"originReasonInfo": "<string>",
"parentPaymentId": 123,
"parentTransactionAmount": 123,
"purpose": "Invoice #12345",
"purposeCode": "<string>",
"settlementDate": "2023-12-25",
"statusReason": {
"code": "ACSC",
"message": "Accepted settlement completed"
},
"structuredReference": {
"issuer": "ISO",
"reference": "RF123456"
},
"swift": {
"businessMessageId": "BIZ-MSG-001",
"charges": {
"items": [
{
"amount": 50,
"currency": "EUR",
"bic": "<string>"
}
],
"bearer": "SHAR"
},
"messageDefinition": "pacs.008.001.08",
"receiverBic": "<string>",
"senderBic": "<string>",
"settlementAccount": {
"currency": "EUR",
"iban": "<string>",
"other": {
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
},
"settlementMethod": "INDA",
"uetr": "<string>"
},
"t2": {
"priority": "HIGH",
"uetr": "a1b2c3d4-1111-4222-8333-000000000001"
},
"ultimateCreditor": {
"name": "<string>",
"organisationIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"bic": "<string>",
"lei": "<string>"
},
"privateIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"birthInformation": {
"city": "<string>",
"country": "<string>",
"date": "<string>",
"province": "<string>"
}
}
},
"ultimateDebtor": {
"name": "<string>",
"organisationIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"bic": "<string>",
"lei": "<string>"
},
"privateIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"birthInformation": {
"city": "<string>",
"country": "<string>",
"date": "<string>",
"province": "<string>"
}
}
},
"updatedAt": "2025-11-21T12:46:54.612954Z"
}{
"code": "<string>",
"data": {
"errors": [
{
"code": "<string>",
"field_name": "<string>",
"message": "<string>",
"value": "<string>"
}
],
"message": "<string>"
},
"message": "<string>"
}{
"code": "<string>",
"data": {
"errors": [
{
"code": "<string>",
"field_name": "<string>",
"message": "<string>",
"value": "<string>"
}
],
"message": "<string>"
},
"message": "<string>"
}Create SEPA payment
Creates a SEPA Credit Transfer or SEPA Instant payment and submits it to the clearing system.
curl --request POST \
--url https://api.pgw-sandbox.finventi.com/v3/payments/sepa \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"amount": 12550,
"creditor": {
"account": {
"iban": "LT029990200000000001"
},
"name": "Recipient Ltd"
},
"currencyCode": "EUR",
"debtor": {
"account": {
"iban": "LT409990100000000001"
},
"address": {
"country": "LT",
"structured": {
"buildingName": "Quadrum North",
"buildingNumber": "5",
"countrySubDivision": "Vilniaus apskritis",
"postCode": "08303",
"street": "Upes g."
},
"town": "Vilnius"
},
"name": "Payer Ltd"
},
"instant": false
}
'{
"createdAt": "2025-11-21T12:46:54.321667Z",
"creditor": {
"account": {
"iban": "<string>",
"other": {
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
},
"agent": {
"bic": "DEMOLT1XXXX",
"name": "<string>"
},
"address": {
"country": "LT",
"line": "<string>",
"structured": {
"buildingName": "<string>",
"buildingNumber": "<string>",
"countrySubDivision": "<string>",
"department": "<string>",
"districtName": "<string>",
"floor": "<string>",
"postBox": "<string>",
"postCode": "<string>",
"room": "<string>",
"street": "<string>",
"subDepartment": "<string>",
"townLocationName": "<string>"
},
"town": "Vilnius"
},
"name": "<string>",
"organisationIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"bic": "<string>",
"lei": "<string>"
},
"privateIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"birthInformation": {
"city": "<string>",
"country": "<string>",
"date": "<string>",
"province": "<string>"
}
}
},
"debtor": {
"account": {
"iban": "<string>",
"other": {
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
},
"agent": {
"bic": "DEMOLT1XXXX",
"name": "<string>"
},
"address": {
"country": "LT",
"line": "<string>",
"structured": {
"buildingName": "<string>",
"buildingNumber": "<string>",
"countrySubDivision": "<string>",
"department": "<string>",
"districtName": "<string>",
"floor": "<string>",
"postBox": "<string>",
"postCode": "<string>",
"room": "<string>",
"street": "<string>",
"subDepartment": "<string>",
"townLocationName": "<string>"
},
"town": "Vilnius"
},
"name": "<string>",
"organisationIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"bic": "<string>",
"lei": "<string>"
},
"privateIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"birthInformation": {
"city": "<string>",
"country": "<string>",
"date": "<string>",
"province": "<string>"
}
}
},
"direction": "OUTBOUND",
"endToEndId": "<string>",
"id": 10300007,
"instructedAmount": 100,
"instructedCurrency": "EUR",
"metadata": [
"<string>"
],
"scheme": "SEPA_CT",
"sddActionOptions": [
{
"reasons": [
{
"available": true,
"code": "MD06",
"deadline": "2026-10-15T11:15:00+03:00"
}
],
"type": "RETURN",
"deadline": "2026-08-27T11:15:00+03:00",
"settlementDate": "2023-12-25",
"windowEndDate": "2026-12-25"
}
],
"settlementAmount": 100,
"settlementCurrency": "EUR",
"status": "COMPLETED",
"type": "PAYMENT",
"categoryPurposeCode": "BONU",
"categoryPurposeProprietary": "<string>",
"chargesAndAdjustments": {
"compensation": 25,
"returnCharges": 50,
"unaccountedTax": 123
},
"creditTransferType": "CUSTOMER",
"directDebit": {
"amendmentIndicator": true,
"amendmentInformationDetails": {
"originalCreditorSchemeId": "<string>",
"originalDebtorAccount": "<string>",
"originalMandateId": "<string>"
},
"esignature": "<string>",
"mandateId": "MANDATE-2026-001",
"sequenceType": "RCUR",
"signatureDate": "2026-01-15"
},
"instructionId": "<string>",
"messageId": "<string>",
"originBic": "<string>",
"originName": "<string>",
"originReasonCode": "AC04",
"originReasonInfo": "<string>",
"parentPaymentId": 123,
"parentTransactionAmount": 123,
"purpose": "Invoice #12345",
"purposeCode": "<string>",
"settlementDate": "2023-12-25",
"statusReason": {
"code": "ACSC",
"message": "Accepted settlement completed"
},
"structuredReference": {
"issuer": "ISO",
"reference": "RF123456"
},
"swift": {
"businessMessageId": "BIZ-MSG-001",
"charges": {
"items": [
{
"amount": 50,
"currency": "EUR",
"bic": "<string>"
}
],
"bearer": "SHAR"
},
"messageDefinition": "pacs.008.001.08",
"receiverBic": "<string>",
"senderBic": "<string>",
"settlementAccount": {
"currency": "EUR",
"iban": "<string>",
"other": {
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
},
"settlementMethod": "INDA",
"uetr": "<string>"
},
"t2": {
"priority": "HIGH",
"uetr": "a1b2c3d4-1111-4222-8333-000000000001"
},
"ultimateCreditor": {
"name": "<string>",
"organisationIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"bic": "<string>",
"lei": "<string>"
},
"privateIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"birthInformation": {
"city": "<string>",
"country": "<string>",
"date": "<string>",
"province": "<string>"
}
}
},
"ultimateDebtor": {
"name": "<string>",
"organisationIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"bic": "<string>",
"lei": "<string>"
},
"privateIdentification": {
"otherIdentifications": [
{
"id": "<string>",
"issuer": "<string>",
"scheme": {
"code": "<string>",
"proprietary": "<string>"
}
}
],
"birthInformation": {
"city": "<string>",
"country": "<string>",
"date": "<string>",
"province": "<string>"
}
}
},
"updatedAt": "2025-11-21T12:46:54.612954Z"
}{
"code": "<string>",
"data": {
"errors": [
{
"code": "<string>",
"field_name": "<string>",
"message": "<string>",
"value": "<string>"
}
],
"message": "<string>"
},
"message": "<string>"
}{
"code": "<string>",
"data": {
"errors": [
{
"code": "<string>",
"field_name": "<string>",
"message": "<string>",
"value": "<string>"
}
],
"message": "<string>"
},
"message": "<string>"
}instant to true for a SEPA Instant payment. Omit it or set it to false for a SEPA Credit Transfer.
Idempotency
Send a UUID v4 in theIdempotency-Key header. If you need to retry the request, reuse the same key. The API returns the original payment instead of creating a duplicate.
Remittance information
Send eitherpurpose for unstructured remittance information or structuredReference for a structured creditor reference. Do not send both fields in the same request. The API returns 400 Bad Request when both are present.
Financial category purposes
When you setcategoryPurposeCode to FCIN, FCOL, or INTE:
- Set
structuredReference.reference. - Set
debtor.organisationIdentification.bicandcreditor.organisationIdentification.bic. - Omit
purpose,ultimateDebtor, andultimateCreditor.
400 Bad Request when these requirements are not met.
Address formats
You can omit an address. When you provide one, includecountry and town, then choose one of these formats:
- Fully structured: Set
structuredand omitline. - Hybrid: Set one
lineand omitstructured.
country or town and rejects requests containing both line and structured.
Fully structured address
{
"instant": false,
"amount": 12550,
"currencyCode": "EUR",
"debtor": {
"name": "Payer Ltd",
"account": { "iban": "LT961010012345678901" },
"address": {
"country": "LT",
"town": "Vilnius",
"structured": {
"street": "Upes g.",
"buildingNumber": "5",
"buildingName": "Quadrum North",
"postCode": "08303",
"countrySubDivision": "Vilniaus apskritis"
}
}
},
"creditor": {
"name": "Recipient Ltd",
"account": { "iban": "LT123450010000000004" }
}
}
Hybrid address
{
"instant": true,
"amount": 10657,
"currencyCode": "EUR",
"debtor": {
"name": "Sender Name",
"account": { "iban": "LT543210010000000003" }
},
"creditor": {
"name": "Janis Berzins",
"account": { "iban": "LV06PERF0000000000001" },
"address": {
"country": "LV",
"town": "Riga",
"line": "Brivibas iela 1-2, LV-1010"
}
}
}
line of up to 140 characters and preserves it as one line in the payment resource. In the outgoing clearing message, PGW splits it into at most two lines of 70 characters each.
Migrate from v0
ReplacePOST /gateway/createSepaPmt with POST /v3/payments/sepa and map the request as follows:
Legacy createSepaPmt field | v3 field |
|---|---|
inst: true | instant: true |
dr_amount / cr_amount pair | amount |
dr_ccy_isocode / cr_ccy_isocode | Single currencyCode |
dr_acc | debtor.account.iban |
dr_name | debtor.name |
dr_bank_bic | debtor.agent.bic |
dr_address | debtor.address.line (hybrid, maximum 140 characters) or debtor.address.structured.* |
dr_address_city / dr_address_country | debtor.address.town / debtor.address.country |
dr_code_person + dr_code_issuer | debtor.privateIdentification.otherIdentifications[0] |
dr_code_company + dr_code_issuer | debtor.organisationIdentification.otherIdentifications[0] |
dr_alt_code_company + dr_alt_code_company_issuer | debtor.organisationIdentification.otherIdentifications[1] (stored and returned by PGW, but not forwarded to clearing, matching legacy behavior) |
dr_bic_company | debtor.organisationIdentification.bic |
cr_* (same set) | creditor.*, with the same mapping as dr_* to debtor.* |
trx_purpose | purpose |
trx_purpose_information | purposeCode |
trx_purpose_structured_ref / trx_purpose_structured_issuer | structuredReference.reference / structuredReference.issuer |
ctgy_purp_cd | categoryPurposeCode |
ctgy_purp_prtry | categoryPurposeProprietary |
end_to_end_id | endToEndId |
trx_settlement_date | settlementDate |
metadata | metadata |
udr_name / ucr_name | ultimateDebtor.name / ultimateCreditor.name |
udr_id_type (1 = company, 2 = person) | Select organisationIdentification or privateIdentification |
udr_identification + udr_issuer + udr_scheme_code / udr_scheme_proprietary | ultimateDebtor identification otherIdentifications[0] (id, issuer, and scheme) |
udr_organisation_bic | ultimateDebtor.organisationIdentification.bic |
udr_address / udr_address_city / udr_address_country | Not carried over because the legacy endpoint accepts but does not use these fields; they are dropped before clearing and remain absent from responses |
udr_private_birth / _city / _country / _province | ultimateDebtor.privateIdentification.birthInformation (date, city, country, and province) |
Idempotency-Key. The v3 endpoint returns 201 Created with the same complete payment representation as GET /v3/payments/{id}, instead of the legacy result.id and result.status response.Headers
UUID v4 used to return the same transaction for an idempotent retry
Body
SEPA Credit Transfer or SEPA Instant payment creation request
Payment amount in minor currency units
12550
Show child attributes
Show child attributes
Payment currency. SEPA payments support EUR only
EUR"EUR"
Show child attributes
Show child attributes
ISO 20022 category purpose code. FCIN, FCOL, and INTE require
structuredReference.reference and organisation BICs for both debtor and creditor. For these
codes, omit purpose, ultimateDebtor, and ultimateCreditor.
BONU, CASH, CBLK, CCRD, CORT, DCRD, DIVI, DVPM, EPAY, FCIN, FCOL, GOVT, HEDG, ICCP, IDCP, INTC, INTE, LOAN, MP2B, MP2P, OTHR, PENS, RPRE, RRCT, RVPM, SALA, SECU, SSBE, SUPP, TAXS, TRAD, TREA, VATX, WHLD Proprietary category purpose
1 - 35(\s*[^\s]\s*)+End-to-end identifier; defaults to NOTPROVIDED
1 - 35Creates a SEPA Instant payment when true; otherwise creates a SEPA Credit Transfer
10140Unstructured remittance information. Mutually exclusive with structuredReference
1 - 140ISO 20022 purpose code
ADVA, TAXS, CSDB, GDSV, GSCB, COMP, FEES, ICCP, IDCP, REFU, RRCT, RRTP, GVEA, GVEB, GVEC, GVED Requested settlement date. For Instant it must be omitted or today
Structured remittance reference. Mutually exclusive with purpose
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Response
Payment created
Time and date when the payment was created (UTC)
"2025-11-21T12:46:54.321667Z"
Creditor (recipient) party information
Show child attributes
Show child attributes
Debtor (sender) party information
Show child attributes
Show child attributes
Payment direction
OUTBOUND, INBOUND "OUTBOUND"
End-to-end identifier assigned by the originator
Unique payment identifier
10300007
Instructed payment amount in minor currency units (cents)
100
Instructed payment currency ISO code
"EUR"
Client-defined metadata values assigned when the payment was created
Payment scheme. SEPA_CT — SEPA Credit Transfer, SEPA_INST — SEPA Instant Credit Transfer, SEPA_DD — SEPA Direct Debit, SWIFT — SWIFT cross-border payment.
SEPA_CT, SEPA_INST, SEPA_DD, SWIFT, T2 "SEPA_CT"
R-transactions a client may raise against this payment right now. Empty for anything but a received SEPA direct debit collection. Informational: the action endpoints do not enforce these windows.
Show child attributes
Show child attributes
Settlement amount in minor currency units (cents)
100
Settlement currency ISO code
"EUR"
Current payment status
CREATED, TO_SIGN, SIGNED, SENT_TO_CLEAR, COMPLETED, CANCELLED, REJECTED, ACCEPTED, SOME_PROBLEMS, PENDING_CONFIRMATION "COMPLETED"
Payment type
PAYMENT, PAYMENT_CANCELLATION, PAYMENT_RETURN, REVERSE_PAYMENT, CSM_FEES, ADJUSTMENT "PAYMENT"
Category purpose code (e.g. SALA, TAXS, GOVT)
BONU, CASH, CBLK, CCRD, CORT, DCRD, DIVI, DVPM, EPAY, FCIN, FCOL, GOVT, HEDG, ICCP, IDCP, INTC, INTE, LOAN, MP2B, MP2P, OTHR, PENS, RPRE, RRCT, RVPM, SALA, SECU, SSBE, SUPP, TAXS, TRAD, TREA, VATX, WHLD Proprietary category purpose
Return-only charges and adjustments. Populated only for payment_return / payment_cancellation transactions; absent otherwise.
Show child attributes
Show child attributes
Credit transfer type for T2 payments
CUSTOMER, FINANCIAL_INSTITUTION SEPA direct debit fields, present only for SDD payments
Show child attributes
Show child attributes
Instruction identifier
Message identifier
Return / rejection originator BIC
Return / rejection originator name
Return / rejection reason code
"AC04"
Return / rejection reason information
Parent payment identifier, present for returns / reversals / cancellations
Original (parent) transaction amount in minor currency units (cents)
Unstructured remittance information (free text)
"Invoice #12345"
ISO 20022 purpose code or proprietary purpose value (e.g. SUPP, SALA, TAXS)
Settlement date
Reason for the current status
Show child attributes
Show child attributes
Structured remittance reference
Show child attributes
Show child attributes
SWIFT-specific fields, present only for SWIFT payments
Show child attributes
Show child attributes
T2-specific fields, present only for T2 payments
Show child attributes
Show child attributes
Ultimate creditor party information
Show child attributes
Show child attributes
Ultimate debtor party information
Show child attributes
Show child attributes
Time and date when the payment was last updated (UTC)
"2025-11-21T12:46:54.612954Z"