Character limitations in payments

You must consider certain character limitations when creating payments.

Different banks support and disallow different characters when you create a payment.

Banks most often place limits on:

  • Maximum character lengths.
  • Special characters.

Character limits

Different banks have different character limits for payment references and beneficiary names.

Typically, the character limit for payment references is 18 characters.

Some banks support up to 35 or 40 characters for beneficiary names. However, as some banks only support up to 18 characters, you should consider this in your integration.

Special characters

All banks support basic Latin characters in payment references and beneficiary names. Many banks support some special characters such as colons, dashes, or apostrophes.

Special character handling varies from bank to bank, so there's no consistent rule for special characters. Because of this, we recommend that your payment references and beneficiary names don't include special characters at all.

The table below displays the special characters supported by some popular UK banks.

Banking providerSupported special characters
Bank of Scotland( ) / ' : . , -
Barclays( ) _ , . - _
Danske( ) / ' : . , - _
First Direct( ) / ' : . , -
Halifax( ) / ' : . , - _
HSBC. -
Lloyds( ) / ' : . , - _
M&S Bank( ) / ' : . , -
Monzo( ) / ' : . , - _
N26' ; . , -
Nationwide( ) : . , -
NatWest/ . -
RBS/ . -
Revolut( ) / ' " \ | : ; . , _
Santander( ) / : . , -
Starling( ) / ' : . , - _
Tesco( ) . ' : . , - _
TSB/ . , -
Ulster/ . -
Additional restrictions for Nationwide

Nationwide has additional rules for payment references, which mean you can't use words that are associated with command injection exploits. This is a list of example terms that you can't use in Nationwide references:

  • echo
  • delete
  • config
  • exec
  • system
  • shell_exec
  • passthru