---
url: 'https://metadrop.net/es/articulos/trabajando-con-iban'
title: 'Trabajando con IBAN'
author: Jotha
date: '2017-01-17T10:56:36+00:00'
updated: '2026-06-10T13:16:53+00:00'
type: article
summary: 'Cambios en la leyes destinadas a los cambios de formato CCC a IBAN'
tags:
  - IBAN
published: true
og:
  determiner: Automatic
  site_name: Metadrop
  'image:alt': 'Trabajando con IBAN'
  street_address: 'Calle Manuel Luna, 12, 3 Dcha'
  locality: Madrid
  region: Madrid
  postal_code: '28020'
  country_name: España
  email: hola@metadrop.net
  phone_number: '910053180'
schema:
  '@context': 'https://schema.org'
  '@graph':
    -
      '@type': Article
      '@id': 'https://metadrop.net/es/articulos/trabajando-con-iban#article'
      name: 'Trabajando con IBAN'
      headline: 'Trabajando con IBAN'
      description: 'Cambios en la leyes destinadas a los cambios de formato CCC a IBAN'
      about: IBAN
      datePublished: '2014-02-14T00:00:00+0100'
      dateModified: '2026-06-10T15:16:53+0200'
      author:
        '@type': Person
        name: Jotha
      publisher:
        '@type': Organization
        '@id': 'https://metadrop.net/#organization'
      mainEntityOfPage: 'https://metadrop.net/es/articulos/trabajando-con-iban'
    -
      '@type': Organization
      '@id': 'https://metadrop.net/#organization'
      url: 'https://metadrop.net/'
      name: Metadrop
      sameAs:
        - 'https://www.drupal.org/metadrop'
        - 'https://twitter.com/metadrop'
        - 'https://asociaciondrupal.es/partner/metadrop'
        - 'https://www.linkedin.com/company/metadrop'
      logo:
        '@type': ImageObject
        url: 'https://metadrop.net/themes/custom/mdrop_radix/logo-metadrop-500-500.jpg'
        width: '500'
        height: '500'
    -
      '@type': ItemPage
      '@id': 'https://metadrop.net/es/articulos/trabajando-con-iban'
      breadcrumb:
        '@type': BreadcrumbList
        itemListElement:
          -
            '@type': ListItem
            position: 1
            name: Inicio
            item: 'https://metadrop.net/es'
          -
            '@type': ListItem
            position: 2
            name: 'Artículos expertos sobre Drupal y tecnología'
            item: 'https://metadrop.net/es/articulos'
      publisher:
        '@type': Organization
        '@id': 'https://metadrop.net/#organization'
---
 1. [Artículos](https://metadrop.net/es/articulos)
 
  

# Trabajando con IBAN

Viernes 14 de Febrero de 2014

 

 



Cambios en la leyes destinadas a los cambios de formato CCC a IBAN



   



En febrero de 2014 entra en vigor SEPA (Zona Única de Pago en Euros), una apuesta europea para garantizar que todas las transacciones se efectuen en euros.

A nosotros, esto nos supone dejar de trabajar con el formato CCC y comenzar a trabajar con el formato IBAN.

Adjunto funciones necesarias para poder trabajar correctamente:

## Función para validar un código IBAN

```php
/**
 * @brief Función que recibe un código IBAN y lo valida.
 *
 * @param iban
 *     Código IBAN a validar.
 *
 * @return boolean
 */
function [module]_validate_iban($iban) {
 
  $account = strtoupper(trim($iban));
 
  $charmap = array (
    'A' => 10,
    'B' => 11,
    'C' => 12,
    'D' => 13,
    'E' => 14,
    'F' => 15,
    'G' => 16,
    'H' => 17,
    'I' => 18,
    'J' => 19,
    'K' => 20,
    'L' => 21,
    'M' => 22,
    'N' => 23,
    'O' => 24,
    'P' => 25,
    'Q' => 26,
    'R' => 27,
    'S' => 28,
    'T' => 29,
    'U' => 30,
    'V' => 31,
    'W' => 32,
    'X' => 33,
    'Y' => 34,
    'Z' => 35,
  );
 
  if (strlen($account) != 24) {
    return FALSE;
  }
  else {
    $letra1 = substr($account, 0, 1);
    $letra2 = substr($account, 1, 1);
 
    if (isset($charmap[$letra1]) && isset ($charmap[$letra2])) {
      $num1   = $charmap[$letra1];
      $num2   = $charmap[$letra2];
    }
    else {
      return FALSE;
    }
 
    $final = substr($account, 2, 2);
    $temp  = substr($account, 4, strlen($account)) . $num1 . $num2 . $final;
 
    if (bcmod($temp, 97) == 1) {
      return TRUE;
    }
    else {
      return FALSE;
    }
  }
}
```

## Función para obtener el dígito de control del código IBAN a partir de un código CCC

```php
/**
 * @brief Función que recibe un CCC y devuelve el campo IBAN
 *
 * @param codigo_pais 
 *     Código de país. 2 caracteres en mayúsculas.
 * @param ccc
 *     Código cuenta corriente del que calcular este campo.
 */
function [module]_calculate_iban($codigo_pais, $ccc) {
 
  $charmap = array (
    'A' => 10,
    'B' => 11,
    'C' => 12,
    'D' => 13,
    'E' => 14,
    'F' => 15,
    'G' => 16,
    'H' => 17,
    'I' => 18,
    'J' => 19,
    'K' => 20,
    'L' => 21,
    'M' => 22,
    'N' => 23,
    'O' => 24,
    'P' => 25,
    'Q' => 26,
    'R' => 27,
    'S' => 28,
    'T' => 29,
    'U' => 30,
    'V' => 31,
    'W' => 32,
    'X' => 33,
    'Y' => 34,
    'Z' => 35,
  );
 
  $dividendo = $ccc . $charmap[substr($codigo_pais, 0 , 1)] . $charmap[substr($codigo_pais, 1 , 1)] . '00';
 
  $digito_control =  98 - bcmod($dividendo, 97);
 
  if (strlen($digito_control) == 1) {
    $digito_control = 0 . $digito_control;
  }
 
  return $codigo_pais . $digito_control;
}
```



[IBAN](https://metadrop.net/es/articulos?text=IBAN)