Propuesto por Justus Ranvier en 2015, este protocolo pretende resolver el problema crítico de la reutilización de direcciones de Bitcoin, una práctica que compromete gravemente la privacidad de los usuarios en el sistema. Satoshi Nakamoto, en el Libro Blanco de Bitcoin, ya había destacado la importancia de utilizar pares de claves distintos para cada transacción con el fin de mantener la segregación en las diferentes acciones de los usuarios. BIP47 introduce el concepto de códigos de pago reutilizables, permitiendo a un usuario recibir múltiples pagos sin tener que generar manualmente una nueva dirección Bitcoin para cada transacción. Estos códigos actúan como identificadores virtuales, derivados de la semilla del monedero del usuario y localizados a nivel de cuenta en la estructura de derivación de un monedero HD. A partir de la combinación de los códigos de pago de ambas partes, cada una puede derivar un gran número de direcciones únicas pertenecientes a la otra parte, sin necesidad de volver a comunicarse con ella. El núcleo de este protocolo se basa en el algoritmo ECDH (Elliptic-Curve Diffie-Hellman), una variante del intercambio de claves Diffie-Hellman establecido en curvas elípticas, que permite a ambas partes establecer un secreto compartido para generar direcciones receptoras únicas. Aunque BIP47 no ha sido añadido a Bitcoin Core y ha recibido una recepción mixta por parte de la comunidad, implementaciones como PayNym en Samourai Wallet y Sparrow Wallet lo han adoptado y lo han integrado completamente en su ecosistema de herramientas de privacidad.