Software Venture Consulting

FileMaker Pro downloads & Resources
FileMaker Custom Functions
FileMaker Web Viewer Examples
FileMaker Pro & Lasso Consulting
FileMaker Books
FileMaker Articles
FileMaker Error Reference

Free Web Tools
Free FileMaker Tools

Personal Pages

Shopping Cart
Shopping Cart


Free Newsletter


Privacy Policy

FileMaker is a registered trademark of FileMaker, Inc. in the U.S. and other countries.


 FileMaker Pro Custom Functions

List  |  Show Random  |  Upload  |  Add This to Your Site


Rate this function:  

  Average rating: 4.3  (34 votes)
  Discuss this Custom Function

Michael Bijnens, freelance developer

check if given iban number is correct ( EU version )

Sample Input:
CheckIBAN ( BE55000311190144 )
Sample Output:

 Then copy & paste into FileMaker Advanced's Edit Custom Function window.

Click here to copy To Clip Manager if you have myFMbutler's Clip Manager installed


Michael Bijnens - Junior FileMaker Analyst / Programmer

You can use this custom function to check if the given IBAN number is correct.
Create a calculated field ( e.g. flag_correct_IBAN ) in the same table as your IBAN field. (output of the calculation-field has to be TEXT ).


1) given IBAN : BE55000311190144
2) first 4 to the end : "000311190144" & "BE55"
3) convert each letter ( B & E ) to digits. ( A = 10 ; B = 11 ; ... Z = 35 )
4) converted : 11 & 14
5) stich it : "000311190144" & "11" & "14" & "55" = 000311190144111455
6) Mod ( IBAN ; 97 )
7) if result = 1 than its a correct IBAN number

Note: these functions are not guaranteed or supported by Please contact the individual developer with any questions or problems.

This is my Custom Function and I want to edit it


5 most recent comments | Show all 7 comments

Thanks for your response. You can rename your function to CheckIBAN_BE(IBAN) and nobody will expect another result.

If you touch it: Would be fine if also length for the chosen country is checked. So this function could be used for input-testing.

Ideal would be an Error-code as return value, e.g 1=ok, 2=length-error, 4=special Charakter in IBAN etc. We already had this: a IBAN was copied from another application into a FileMaker field (WIN), nothing to see, nothing worked, hard to find out.

Greetings Wolfgang

wwdto, munich
February 17, 2014 1:32am

Changed it to an EU version.

check_length ( check if the length of IBAN number is correct with the given country code ).

1 = correct iban ;
missing country code = if country code is missing it won't be able to check length ) ;
incorrect iban = the length is correct but the number is incorrect ;
length error = the length of IBAN is incorrect.

Grtz Michael

Michael, Belgium
February 17, 2014 2:37am

Hi Michael,

your solution does not seem to handle dutch bans correctly, probably because those have 2 sets of letterblocks (e.g. NL75INGB0005151989 ).

Perhaps something you could look into?

With Regards,

Arjen van der Ree
Amsterdam, the Neighbors

Arjen van der Ree, Amsterdam
April 09, 2014 3:07am

Thank you very much for the IBAN Checker
Have a great week

claude pirlot, Brussels
November 01, 2015 10:07am

The functions says IBAN INCORRECT when it actually is correct:
IT06 A081 4034 5200 0000 9060 829

Reason: the function assumes there are but two letters in any IBAN (Position 1 and Position 2). Any IBAN with more than these two letters are wrongly valuated as false.

You have to convert every letter into a number. There's an example in

Christoph Kaufmann, Zollikofen, Switzerland
April 13, 2016 1:47am

Make a comment about this Custom Function (please try to keep it brief & to the point). Anyone can post:

Your Name:
characters left. If you paste in more than 1500 characters, it will be truncated. Discuss the function - advertisements and other useless posts will be deleted.
Answer 8 + 4 =
Search for Custom Functions:

Custom Functions Widget
Download the Custom Function Dashboard Widget for OS X
Keep all the latest Custom Functions right at your fingertips!

Newest Custom Functions:

1. PreviousMonthEndDate ( myDate )
  (Wed, Mar 07, 3:35am)
2. PreviousMonthName (myDate)
  (Wed, Mar 07, 3:33am)
3. FmTableFields ( tableName ; fieldsInclude ; fieldsExclude ; classExclude ; typeExclude ; prefixExclude )
  (Fri, Mar 02, 6:32am)
4. sql.getTable ( fullyQualifiedFieldObject )
  (Thu, Feb 22, 8:36am)
5. sql.getField ( fullyQualifiedFieldObject )
  (Thu, Feb 22, 8:34am)
6. FilterOut ( ListA ; ListB )
  (Wed, Feb 21, 6:11pm)
7. Char0 ( )
  (Sun, Feb 18, 2:35am)
8. CreateVCardFile ( FirstName ; LastName ; CompanyName ; Phone ; Email ; WEB ; hAddress1 ; hAddress2 ; hZip ; hCity ; hCountry ; wAddress1 ; wAddress2 ; wZip ; wCity%2
  (Sun, Feb 18, 1:50am)

RSS Feed of Custom Functions