Skip to main content

API

In this document, you can find a description of the Money Transfer product endpoints.

Flow

moneyTransferFlow

Create Money Transfer

Authorize a money transfer to a beneficiary. This is the action that initiates the payment: the recipient, amount, currency, and description are defined and, if necessary, urgency or immediacy can be set. It is designed to handle cases where the transaction takes longer: in the event of an uncertain outcome, a subsequent check is carried out to determine whether the payment has been completed or needs to be repeated.

This endpoint allows you to create a new transfer (SCT, Swift, or SCT-Inst). It allows immediate sending or scheduling for a future date, supports optional Verification of Payee (VoP), and allows the application of any tax breaks. Care must be taken with client-side timeouts, as processing can take several minutes (a timeout of 100 seconds is recommended). In the event of a 500 or 504 error, it is recommended to check whether the transfer has been completed via search.

Example request:

POST /api/gbs/banking/v4.1/accounts/{accountId}/payments/money-transfers
{
"creditor": {
"name": "John Doe",
"account": {
"accountCode": "IT23A0336844430152923804660",
"bicCode": "SELBIT2BXXX"
},
"address": {
"address": null,
"city": null,
"countryCode": null
}
},
"executionDate": "2019-04-01",
"uri": "REMITTANCE_INFORMATION",
"description": "Payment invoice 75/2017",
"amount": 800,
"currency": "EUR",
"isUrgent": false,
"isInstant": false,
"feeType": "SHA",
"feeAccountId": "45685475",
"taxRelief": {
"taxReliefId": "L449",
"isCondoUpgrade": false,
"creditorFiscalCode": "56258745832",
"beneficiaryType": "NATURAL_PERSON",
"naturalPersonBeneficiary": {
"fiscalCode1": "MRLFNC81L04A859L",
"fiscalCode2": null,
"fiscalCode3": null,
"fiscalCode4": null,
"fiscalCode5": null
},
"legalPersonBeneficiary": {
"fiscalCode": null,
"legalRepresentativeFiscalCode": null
}
}
}

Request parameters:

  • creditor: contains the beneficiary's details.
  • creditor.name: beneficiary's name (max 70 characters).
  • creditor.account.accountCode: beneficiary's IBAN or SWIFT account.
  • creditor.account.bicCode: BIC code of the beneficiary's bank (required if accountCode is SWIFT).
  • creditor.address: beneficiary's address, required for non-Italian banks.
  • executionDate: transfer execution date; mandatory except for instant transfers.
  • uri: optional transfer information.
  • description: transfer description (max 140 characters).
  • amount: amount of the transfer.
  • currency: currency of the transfer.
  • isUrgent: indicates whether the transfer is urgent.
  • isInstant: indicates whether it is an SCT-Inst instant transfer.
  • feeType: fee schedule (SHA, OUR, BEN).
  • feeAccountId: account to which fees are to be charged.
  • taxRelief: contains optional information for tax relief.
  • taxRelief.taxReliefId: type of relief (L449, L296, DL50, etc.).
  • taxRelief.isCondoUpgrade: indicates whether the work concerns condominium parts.
  • taxRelief.creditorFiscalCode: tax code or VAT number of the beneficiary of the transfer.
  • taxRelief.beneficiaryType: type of beneficiary (NATURAL_PERSON, LEGAL_PERSON).
  • taxRelief.naturalPersonBeneficiary.fiscalCode1: tax code of the first beneficiary (required for natural persons).
  • taxRelief.legalPersonBeneficiary.fiscalCode: VAT number of the legal entity beneficiary.

Example response:

{
"moneyTransferId": "452516859427",
"status": "EXECUTED",
"direction": "OUTGOING",
"creditor": {
"name": "John Doe",
"account": {
"accountCode": "IT23A0336844430152923804660",
"bicCode": "SELBIT2BXXX"
},
"address": {
"address": null,
"city": null,
"countryCode": null
}
},
"debtor": {
"name": "",
"account": {
"accountCode": "IT61F0326802230280596327270",
"bicCode": null
}
},
"cro": "1234566788907",
"uri": "REMITTANCE_INFORMATION",
"trn": "AJFSAD1234566788907CCSFDGTGVGV",
"description": "Description",
"createdDatetime": "2019-04-10T10:38:55.949+0200",
"accountedDatetime": "2019-04-10T10:38:56.000+0200",
"debtorValueDate": "2019-04-10",
"creditorValueDate": "2019-04-10",
"amount": {
"debtorAmount": 800,
"debtorCurrency": "EUR",
"creditorAmount": 800,
"creditorCurrency": "EUR",
"creditorCurrencyDate": "2019-04-10",
"exchangeRate": 1
},
"isUrgent": false,
"isInstant": false,
"feeType": "SHA",
"feeAccountId": "12345678",
"fees": [
{
"feeCode": "MK001",
"description": "Money transfer execution fee",
"amount": 0.25,
"currency": "EUR"
},
{
"feeCode": "MK003",
"description": "Currency exchange fee",
"amount": 3.5,
"currency": "EUR"
}
],
"hasTaxRelief": true,
"vopResult": {
"requestCode": "5977d0d6-22cc-4852-a994-25b13cf8015b",
"operationCode": "12345678",
"ownerName": "TEST",
"matchedName": null,
"iban": "IT23A0336844430152923804660",
"description": null,
"matchType": "MTCH",
"respondingBic": "SELBIT2BXXX",
"id": "a897b2e2-2936-4159-af6a-5b4ea52abdc7",
"requestDateTime": "2025-11-10T16:16:42Z"
}
}

Response parameters:

  • moneyTransferId: unique identifier of the transfer created.
  • status: status of the transfer (EXECUTED, BOOKED, REJECTED, etc.).
  • direction: direction of the transfer (INCOMING or OUTGOING).
  • creditor: beneficiary details.
  • creditor.name: beneficiary name.
  • creditor.account.accountCode: beneficiary account.
  • creditor.account.bicCode: BIC of the beneficiary's bank.
  • debtor: payer details.
  • debtor.account.accountCode: payer account.
  • cro: CRO code.
  • uri: remittance information.
  • trn: TRN code of the transfer.
  • description: description of the transfer.
  • createdDatetime: date and time of creation.
  • accountedDatetime: date and time of accounting.
  • debtorValueDate: payer value date.
  • creditorValueDate: beneficiary value date.
  • amount.debtorAmount: amount debited.
  • amount.creditorAmount: amount credited.
  • isUrgent: indicates whether the transfer is urgent.
  • isInstant: indicates whether it is SCT-Inst.
  • feeType: commission scheme applied.
  • feeAccountId: fee account.
  • fees: list of fees applied.
  • hasTaxRelief: indicates whether tax relief data is present.
  • vopResult: contains the outcome of the Verification of Payee.
  • vopResult.matchType: match outcome (MTCH, CMTC, NMTC, NOAP).

Validate Money Transfer

Allows you to verify in advance that a transfer is set up correctly before execution. This is useful for reducing errors, duplications, and unnecessary re-launches, especially when managing high volumes or infrequent payments.

The endpoint allows you to validate an SCT or SCT-Inst transfer order, verifying that all the data provided is correct and that the transaction can be executed. The endpoint checks the completeness and consistency of the fields, the availability of the necessary data, and the application of any domain rules such as immediacy, urgency, addresses, and tax breaks.

Example request:

POST /api/gbs/banking/v4.0/accounts/{accountId}/payments/money-transfers/validate
{
"creditor": {
"name": "John Doe",
"account": {
"accountCode": "IT23A0336844430152923804660",
"bicCode": "SELBIT2BXXX"
},
"address": {
"address": null,
"city": null,
"countryCode": null
}
},
"executionDate": "2019-04-01",
"uri": "REMITTANCE_INFORMATION",
"description": "Payment invoice 75/2017",
"amount": 800,
"currency": "EUR",
"isUrgent": false,
"isInstant": false,
"feeType": "SHA",
"feeAccountId": "45685475",
"taxRelief": {
"taxReliefId": "L449",
"isCondoUpgrade": false,
"creditorFiscalCode": "56258745832",
"beneficiaryType": "NATURAL_PERSON",
"naturalPersonBeneficiary": {
"fiscalCode1": "MRLFNC81L04A859L",
"fiscalCode2": null,
"fiscalCode3": null,
"fiscalCode4": null,
"fiscalCode5": null
},
"legalPersonBeneficiary": {
"fiscalCode": null,
"legalRepresentativeFiscalCode": null
}
}
}

Request parameters:

  • creditor: object containing creditor information.
  • creditor.name: creditor name.
  • creditor.account: creditor account details.
  • creditor.account.accountCode: creditor IBAN or SWIFT account.
  • creditor.account.bicCode: creditor bank BIC code.
  • creditor.address: creditor's address for non-SEPA accounts, if applicable.
  • creditor.address.address: street and house number.
  • creditor.address.city: creditor's city.
  • creditor.address.countryCode: ISO 3166-1 alpha-2 country code.
  • executionDate: date of execution of the transfer.
  • uri: remittance information to the creditor.
  • description: text description of the transfer.
  • amount: amount of the transfer.
  • currency: currency used for the credit.
  • isUrgent: indicates whether the transfer is urgent.
  • isInstant: indicates whether the transfer is instant.
  • feeType: fee schedule (SHA, OUR, BEN).
  • feeAccountId: account from which fees are debited.
  • taxRelief: information on tax relief.
  • taxRelief.taxReliefId: tax relief identifier.
  • taxRelief.isCondoUpgrade: indicates whether it concerns condominium parts.
  • taxRelief.creditorFiscalCode: creditor's tax code/VAT number.
  • taxRelief.beneficiaryType: type of beneficiary.
  • taxRelief.naturalPersonBeneficiary: any natural person beneficiaries.
  • taxRelief.legalPersonBeneficiary: any legal entity beneficiaries.

Example response:

{
"creditor": {
"name": "John Doe",
"account": {
"accountCode": "IT23A0336844430152923804660",
"bicCode": "SELBIT2BXXX"
}
},
"debtor": {
"name": "",
"account": {
"accountCode": "IT61F0326802230280596327270",
"bicCode": null
}
},
"description": "Description",
"executionDate": "2019-04-01",
"feeType": "SHA",
"feeAccountId": "12345678",
"fees": [
{
"feeCode": "MK001",
"description": "Money transfer execution fee",
"amount": 0.25,
"currency": "EUR"
},
{
"feeCode": "MK003",
"description": "Currency exchange fee",
"amount": 3.5,
"currency": "EUR"
}
],
"taxRelief": {
"taxReliefId": "L449",
"description": "Description",
"isCondoUpgrade": false,
"creditorFiscalCode": "56258745832",
"beneficiaryType": "NATURAL_PERSON",
"naturalPersonBeneficiary": {},
"legalPersonBeneficiary": {}
}
}

Response parameters:

  • creditor: validated creditor data.
  • creditor.name: creditor name.
  • creditor.account: creditor account data.
  • creditor.account.accountCode: creditor IBAN/account.
  • creditor.account.bicCode: creditor BIC code.
  • debtor: debtor details.
  • debtor.name: debtor name.
  • debtor.account: debtor account information.
  • debtor.account.accountCode: debtor IBAN.
  • debtor.account.bicCode: debtor BIC code.
  • description: validated description.
  • executionDate: confirmed execution date.
  • feeType: fee schedule applied.
  • feeAccountId: account used for fees.
  • fees: list of fees.
  • fees[i].feeCode: fee code.
  • fees[i].description: fee description.
  • fees[i].amount: fee amount.
  • fees[i].currency: fee currency.
  • taxRelief: tax relief data.
  • taxRelief.taxReliefId: tax relief identifier.
  • taxRelief.description: tax relief description.
  • taxRelief.isCondoUpgrade: indication of condominium parts.
  • taxRelief.creditorFiscalCode: creditor's tax code.
  • taxRelief.beneficiaryType: type of beneficiary.
  • taxRelief.naturalPersonBeneficiary: natural person beneficiaries.
  • taxRelief.legalPersonBeneficiary: legal entity beneficiary.

Get Money Transfer

Convenient for consulting the details of a transfer (for example, transaction status, outgoing or incoming direction, reference identifiers, amounts and currencies, any commissions). It is the tool for obtaining accurate visibility on a single transaction that has already been carried out or scheduled.

This endpoint allows you to retrieve all the details of a transfer that has already been created. It is used to verify the status of the transaction, obtain information on amounts, currencies, parties involved, CRO/TRN references, and consult any fees applied. It is useful for accounting reconciliation, control, and verification of credits or debits.

Example request:

GET /api/gbs/banking/v4.0/accounts/{accountId}/payments/money-transfers/{moneyTransferId}

Request parameters:

  • accountId: identifier of the account from which the transfer was sent.
  • moneyTransferId: unique identifier of the transfer to retrieve.

Example response:

{
"moneyTransferId": "452516859427",
"status": "EXECUTED",
"direction": "OUTGOING",
"creditor": {
"name": "John Doe",
"account": {
"accountCode": "IT23A0336844430152923804660",
"bicCode": "SELBIT2BXXX"
},
"address": {
"address": null,
"city": null,
"countryCode": null
}
},
"debtor": {
"name": "",
"account": {
"accountCode": "IT61F0326802230280596327270",
"bicCode": null
}
},
"cro": "1234566788907",
"uri": "REMITTANCE_INFORMATION",
"trn": "AJFSAD1234566788907CCSFDGTGVGV",
"description": "Description",
"createdDatetime": "2019-04-10T10:38:55.949+0200",
"accountedDatetime": "2019-04-10T10:38:56.000+0200",
"debtorValueDate": "2019-04-10",
"creditorValueDate": "2019-04-10",
"amount": {
"debtorAmount": 800,
"debtorCurrency": "EUR",
"creditorAmount": 800,
"creditorCurrency": "EUR",
"creditorCurrencyDate": "2019-04-10",
"exchangeRate": 1
},
"isUrgent": false,
"isInstant": false,
"feeType": "SHA",
"feeAccountId": "12345678",
"fees": [
{
"feeCode": "MK001",
"description": "Money transfer execution fee",
"amount": 0.25,
"currency": "EUR"
},
{
"feeCode": "MK003",
"description": "Currency exchange fee",
"amount": 3.5,
"currency": "EUR"
}
],
"hasTaxRelief": true
}

Response parameters:

  • moneyTransferId: transfer identifier.
  • status: transaction status (EXECUTED, BOOKED, WORK_IN_PROGRESS, CANCELLED, REJECTED).
  • direction: transfer direction (INCOMING or OUTGOING).
  • creditor: details of the transfer beneficiary.
  • creditor.name: name of the beneficiary.
  • creditor.account.accountCode: IBAN or beneficiary account.
  • creditor.account.bicCode: BIC of the beneficiary's bank.
  • creditor.address.address: beneficiary's address.
  • creditor.address.city: beneficiary's city.
  • creditor.address.countryCode: country code of the beneficiary (ISO 3166-1 alpha-2).
  • debtor: details of the payer.
  • debtor.name: name of the payer.
  • debtor.account.accountCode: IBAN or account number of the payer.
  • debtor.account.bicCode: BIC of the payer's bank.
  • cro: CRO code of the transaction.
  • trn: TRN code of the transaction.
  • uri: remittance information.
  • description: description or reason for the transfer.
  • createdDatetime: date and time of creation of the transaction.
  • accountedDatetime: date and time of accounting.
  • debtorValueDate: value date for the payer.
  • creditorValueDate: value date for the payee.
  • amount.debtorAmount: amount debited to the payer.
  • amount.debtorCurrency: currency of the amount debited.
  • amount.creditorAmount: amount credited to the beneficiary.
  • amount.creditorCurrency: currency of the amount credited.
  • amount.creditorCurrencyDate: value date of the beneficiary's currency.
  • amount.exchangeRate: exchange rate applied.
  • isUrgent: indicates whether the transfer is urgent.
  • isInstant: indicates whether it is an SCT-Inst instant transfer.
  • feeType: type of fee (SHA, OUR, BEN).
  • feeAccountId: account on which the fees are charged.
  • fees: list of fees applied.
  • hasTaxRelief: indicates whether tax relief is applicable.

Get Money Transfer Accounting Proof

Provides accounting evidence of the transaction (a receipt/supporting document that can be used for administrative purposes). Serves to document that the transfer has been accounted for, simplifying reconciliation and archiving.

This endpoint allows you to retrieve the accounting receipt for a transfer that has already been made. It is useful for obtaining official proof of the transaction, to be used for reconciliations, internal checks, or as a document to share with third parties.

Example request:

GET /api/gbs/banking/v4.0/accounts/{accountId}/payments/money-transfers/{moneyTransferId}/accounting-proof

Request parameters:

  • accountId: identifier of the account from which the transfer was sent.
  • moneyTransferId: identifier of the transfer for which the receipt is to be retrieved.

Example response (HTTP 200):

{}

Response parameters:

  • (empty payload): the endpoint returns an empty body on success; relevant information is included in the metadata or downloadable documents associated with the operation.

Example response (HTTP 400):

{
"errors": [
{
"code": "SZBO-0040",
"description": "Date range exceeded",
"params": ""
}
]
}

Error response parameters:

  • errors: list of errors encountered.
  • code: identifying code of the error.
  • description: text description of the problem.
  • params: any additional parameters useful for diagnosis.

Delete Booked Money Transfer

Allows you to cancel a scheduled transfer (i.e., one that is scheduled for a future date and has not yet been executed). This is useful when conditions change or an error is made before the execution date.

This endpoint allows you to delete a previously booked money transfer. It is useful when you need to revoke a money transfer already recorded on the account, provided that the bank's operating conditions allow it. The endpoint does not return a specific payload, but confirms the outcome of the operation via the platform's standard response.

DELETE /api/gbs/banking/v4.0/accounts/{accountId}/payments/money-transfers/{moneyTransferId}

Example request and parameters:

DELETE /api/gbs/banking/v4.0/accounts/123456/payments/money-transfers/MT987654
  • accountId: identifier of the account on which the transfer to be deleted was recorded.
  • moneyTransferId: identifier of the recorded transfer to be deleted.

Example response and parameters:

{
"status": "OK",
"errors": [],
"payload": null
}
  • status: indicates the outcome of the operation (e.g., OK in case of success).
  • errors: contains any errors returned by the system, represented as a list.
  • payload: has a null value because the operation does not return specific content.

Search Money Transfer

Search for transactions already executed or scheduled based on criteria such as beneficiary, IBAN, amount, currency, and description. It is a tool for quickly finding payments and verifying their outcome, as well as for performing downstream checks for errors or timeouts.

This endpoint allows you to search for transfers made or received on a specific account, allowing you to filter by direction, dates, amounts, counterparties, status, and other criteria. It returns a list of transactions that match the set parameters.

POST /api/gbs/banking/v4.0/accounts/{accountId}/payments/money-transfers/search
{
"direction": "OUTGOING",
"accountedDatetime": { "from": "2019-01-01", "to": "2019-01-31" },
"createdDatetime": { "from": "2019-01-01", "to": "2019-01-31" },
"pagination": { "offset": 0, "limit": 20 },
"status": "EXECUTED",
"amount": { "from": 500, "to": 1000 },
"currency": "EUR",
"isUrgent": false,
"isInstant": false,
"counterpartAccount": "string",
"counterpartName": "string",
"feeType": "SHA",
"trn": "string",
"cro": "string",
"description": "string",
"isTaxAdvantage": false
}

Request parameters:

  • direction: direction of the transfer (INCOMING/OUTGOING).
  • accountedDatetime: accounting date range.
  • createdDatetime: creation date range.
  • pagination: initial index and maximum number of items.
  • status: transfer status.
  • amount: amount range.
  • currency: transaction currency.
  • isUrgent: filter for urgent transfers.
  • isInstant: filter for instant transfers.
  • counterpartAccount: counterparty account.
  • counterpartName: counterparty name.
  • feeType: type of fees.
  • trn: TRN code of the transaction.
  • cro: CRO code of the transaction.
  • description: description included in the transfer.
  • isTaxAdvantage: indicates whether tax relief is applicable.

Example response:

{
"list": [
{
"moneyTransferId": "452516859427",
"status": "EXECUTED",
"direction": "OUTGOING",
"creditor": {
"name": "John Doe",
"account": {
"account": "IT23A0336844430152923804660",
"bicCode": "SELBIT2BXXX"
},
"address": { "address": null, "city": null, "countryCode": null }
},
"debtor": {
"name": "",
"account": {
"accountCode": "IT61F0326802230280596327270",
"bicCode": null
}
},
"uri": "REMITTANCE_INFORMATION",
"trn": "AJFSAD1234566788907CCSFDGTGVGV",
"cro": null,
"description": "Description",
"createdDatetime": "2019-04-10T10:38:55.949+0200",
"accountedDatetime": "2019-04-10T10:38:56.000+0200",
"debtorValueDate": "2019-04-10",
"creditorValueDate": "2019-04-10",
"amount": {
"debtorAmount": 800,
"debtorCurrency": "EUR",
"creditorAmount": 800,
"creditorCurrency": "EUR",
"creditorCurrencyDate": "2019-04-10",
"exchangeRate": 1
},
"isUrgent": false,
"isInstant": false,
"feeType": "SHA",
"feeAccountId": "12345678",
"fees": [
{ "feeCode": "MK001", "description": "Money transfer execution fee", "amount": 0.25, "currency": "EUR" },
{ "feeCode": "MK003", "description": "Currency exchange fee", "amount": 3.5, "currency": "EUR" }
],
"hasTaxRelief": true
}
]
}

Response parameters:

  • moneyTransferId: transaction identifier.
  • status: transfer status.
  • direction: transaction direction.
  • creditor: beneficiary information.
  • debtor: payer information.
  • uri: remittance information.
  • trn: transaction TRN code.
  • cro: CRO code.
  • description: description of the transfer.
  • createdDatetime: creation date.
  • accountedDatetime: accounting date.
  • debtorValueDate: value date for the debtor.
  • creditorValueDate: value date for the creditor.
  • amount: values relating to amounts and currencies.
  • isUrgent: indicates whether the transfer was urgent.
  • isInstant: indicates whether it was instant.
  • feeType: type of fees.
  • feeAccountId: account from which the fees were debited.
  • fees: list of fees applied.
  • hasTaxRelief: indicates whether tax relief is applicable.

Revert Money Transfer

Initiate a cancellation/re-credit request for a transfer that has already been made, when the context allows it. This is the first step in the "reversal" process, which is activated in specific cases (for example, a payment to be reversed).

This endpoint allows you to reverse a received transfer. The operation automatically creates a new transfer to the original sender, using the data from the received transfer (beneficiary, currency, and description) in a binding manner. The user can only modify elements such as execution date, urgency, instant mode, fee, and amount to be returned. The operation is idempotent, therefore it can only be performed once for each transfer received.

Example request:

POST /api/gbs/banking/v4.0/accounts/{accountId}/payments/money-transfers/{moneyTransferId}/revert
{
"descriptionHeading": "UNDO ",
"executionDate": "2020-06-26",
"isUrgent": false,
"isInstant": false,
"feeType": "SHA",
"amount": 800
}

Request parameters:

  • accountId: identifier of the account on which the transfer to be reversed was received.
  • moneyTransferId: identifier of the original transfer to be returned.
  • X-Time-Zone: time zone used to interpret the dates in the request.
  • descriptionHeading: optional text to be placed before the description of the original transfer.
  • executionDate: date of execution of the return transfer; cannot be used together with the urgent or instant flags.
  • isUrgent: indicates whether the return transfer must be urgent; incompatible with executionDate and instant.
  • isInstant: indicates whether the transfer must be instant; incompatible with executionDate and urgent.
  • feeType: fee management mode (SHA/OUR/BEN).
  • amount: amount to be returned; if omitted, the total amount of the original transfer is returned.

Example response:

{
"revertedMoneyTransferId": "452516859427",
"moneyTransferId": "452516859428",
"status": "EXECUTED",
"direction": "OUTGOING",
"creditor": {
"name": "John Doe",
"account": {
"accountCode": "IT23A0336844430152923804660",
"bicCode": "SELBIT2BXXX"
},
"address": {
"address": null,
"city": null,
"countryCode": null
}
},
"debtor": {
"name": "Jane Doe",
"account": {
"accountCode": "IT61F0326802230280596327270",
"bicCode": null
},
"feeAccountId": "12345678"
},
"cro": "1234566788907",
"uri": "REMITTANCE_INFORMATION",
"trn": "AJFSAD1234566788907CCSFDGTGVGV",
"description": "UNDO Description",
"createdDatetime": "2020-06-26T10:38:55.949+0200",
"accountedDatetime": "2020-06-26T10:38:56.000+0200",
"debtorValueDate": "2020-06-26",
"creditorValueDate": "2020-06-26",
"amount": {
"debtorAmount": 800,
"debtorCurrency": "EUR",
"creditorAmount": 800,
"creditorCurrency": "EUR",
"creditorCurrencyDate": "2020-06-26",
"exchangeRate": 1
},
"isUrgent": false,
"isInstant": false,
"feeType": "SHA",
"fees": [
{
"feeCode": "MK001",
"description": "Money transfer execution fee",
"amount": 0.25,
"currency": "EUR"
}
]
}

Response parameters:

  • revertedMoneyTransferId: identifier of the original transfer that was reversed.
  • moneyTransferId: identifier of the new transfer created as a refund.
  • status: status of the transfer (EXECUTED, BOOKED, etc.).
  • direction: direction of the transfer (INCOMING/OUTGOING).
  • creditor: information about the creditor of the return transfer.
  • debtor: information about the debtor of the return transfer.
  • cro: CRO code of the transfer.
  • trn: TRN code of the transfer.
  • uri: remittance information.
  • description: description of the resulting transfer.
  • createdDatetime: date and time of creation of the return transfer.
  • accountedDatetime: date and time of accounting.
  • debtorValueDate: debtor value date.
  • creditorValueDate: creditor value date.
  • amount: details relating to the amount and currency.
  • isUrgent: indicates whether the transfer is urgent.
  • isInstant: indicates whether the transfer is instant.
  • feeType: type of fees applied.
  • fees: list of fees applied.

Get Revert Money Transfer

Allows you to check the status of a previously initiated cancellation/re-credit request, monitoring its progress until completion.

This endpoint allows you to obtain complete details about a money transfer that has been reversed. It is designed to allow client systems to verify the status of the transaction, understand the reasons for the reversal, and retrieve all information useful for accounting reconciliation or operational management.

Example request:

GET /api/v1/money-transfer/reverted/{transferId}

Request parameters:

  • transferId: unique identifier of the transfer for which details are to be retrieved.

Example response:

{
"transferId": "MT-9845321",
"originalAmount": 250.00,
"currency": "EUR",
"revertedAt": "2026-01-28T14:55:00Z",
"reason": "Invalid IBAN",
"status": "reverted",
"beneficiary": {
"name": "Mario Rossi",
"account": "IT60X0542811101000000123456"
}
}

Response parameters:

  • transferId: identifier of the reversed transfer.
  • originalAmount: original amount of the transfer.
  • currency: currency of the transferred amount.
  • revertedAt: date and time when the transfer was reversed.
  • reason: reason for the reversal, as recorded by the system.
  • status: status of the transfer, set to "reverted" to indicate that the reversal has taken place.
  • beneficiary: object containing information about the original beneficiary of the transfer.
  • name: name of the beneficiary (within beneficiary).
  • account: beneficiary's account (within beneficiary).

Challenge Response

Complete a confirmation step required in some flows (for example, an additional challenge/approval). In practice, this means providing a response to the confirmation request so that the operation can proceed and be completed correctly.

This endpoint allows you to confirm a transfer request that was suspended following a security challenge. The endpoint receives the channel through which the challenge was sent and the response code provided by the user, and returns the updated transfer details.

Example request:

PUT /api/gbs/banking/v4.0/accounts/{accountId}/payments/money-transfers/challenges/{challengeId}
{
"channel": "SMS",
"response": "123456"
}

Request parameters:

  • channel: indicates the channel through which the challenge was sent to the user. Allowed values: SMS, RSA.
  • response: represents the challenge response code provided by the user.

Example response:

{
"moneyTransferId": "452516859427",
"status": "EXECUTED",
"direction": "OUTGOING",
"creditor": {
"name": "John Doe",
"account": {
"account": "IT23A0336844430152923804660",
"bicCode": "SELBIT2BXXX"
},
"address": {
"address": null,
"city": null,
"countryCode": null
}
},
"debtor": {
"name": "",
"account": {
"accountCode": "IT61F0326802230280596327270",
"bicCode": null
}
},
"cro": "1234566788907",
"uri": "REMITTANCE_INFORMATION",
"trn": "AJFSAD1234566788907CCSFDGTGVGV",
"description": "Description",
"createdDatetime": "2019-04-10T10:38:55.949+0200",
"accountedDatetime": "2019-04-10T10:38:56.000+0200",
"debtorValueDate": "2019-04-10",
"creditorValueDate": "2019-04-10",
"amount": {
"debtorAmount": 800,
"debtorCurrency": "EUR",
"creditorAmount": 800,
"creditorCurrency": "EUR",
"creditorCurrencyDate": "2019-04-10",
"exchangeRate": 1
},
"isUrgent": false,
"isInstant": false,
"feeType": "SHA",
"feeAccountId": "12345678",
"fees": [
{
"feeCode": "MK001",
"description": "Money transfer execution fee",
"amount": 0.25,
"currency": "EUR"
},
{
"feeCode": "MK003",
"description": "Currency exchange fee",
"amount": 3.5,
"currency": "EUR"
}
],
"hasTaxRelief": true
}

Response parameters:

  • moneyTransferId: uniquely identifies the confirmed transfer.
  • status: indicates the updated status of the transfer (EXECUTED, BOOKED, REJECTED, etc.).
  • direction: indicates the direction of the transfer (INCOMING or OUTGOING).
  • creditor: contains the beneficiary's details.
  • creditor.name: name of the beneficiary.
  • creditor.account.accountCode: beneficiary's account number (IBAN or SWIFT).
  • creditor.account.bicCode: BIC code of the beneficiary's bank.
  • debtor: contains the payer's details.
  • debtor.account.accountCode: payer's account number.
  • cro: CRO code of the transfer.
  • uri: remittance information.
  • trn: TRN code assigned to the transfer.
  • description: description provided during the transaction.
  • createdDatetime: date and time of creation.
  • accountedDatetime: date and time of accounting.
  • debtorValueDate: value date for the payer.
  • creditorValueDate: value date for the payee.
  • amount.debtorAmount: amount debited to the payer.
  • amount.creditorAmount: amount credited to the payee.
  • isUrgent: indicates whether the transfer is urgent.
  • isInstant: indicates whether it is an SCT-Inst instant transfer.
  • feeType: fee management method (SHA, OUR, BEN).
  • feeAccountId: account to which fees are charged.
  • fees: list of fees applied.
  • hasTaxRelief: indicates whether data for tax relief is present.