Du kannst sowohl die Adresse, als auch den dazugehörigen Private Key als QR-Code anzeigen. Den Private Key kannst du dann mit einer App wie z.B. MyCelium importieren.
Schau dir die Seite bitaddress.org an. Dort kannst du dir Bitcoin-Adressen samt QR-Codes generieren lassen.
Zum technischen:
Der Private Key als QR darzustellen ist ganz einfach. Du musst nur dem Base58 codierten string in QR umwandeln.
Beispiel:
Der Private key 5JmC3gmXnXXjzcuxWNdKDS11Pnfzm6v36GPoKZmo7mfEaXMbijo sieht als QR so aus:
https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=5JmC3gmXnXXjzcuxWNdKDS11Pnfzm6v36GPoKZmo7mfEaXMbijoUm eine Adresse als QR auszugeben, musst du "bitcoin:" voranstellen. Du kannst noch einen Betrag anhängen mit "&amount=xxx"
Beispiel:
um 5 BTC an Adresse 1NqFWLe424azrDePPAUR7V2LjvHQMFHKtL zu senden codierst du folgenden string:
bitcoin:1NqFWLe424azrDePPAUR7V2LjvHQMFHKtL?amount=5
ergibt
https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=bitcoin:1NqFWLe424azrDePPAUR7V2LjvHQMFHKtL?amount=5Damit du gegen middleman-Angriffe geschützt bist, solltest du die QR-Codes natürlich bei dir auf dem server generieren. Den QRserver, den ich in den Beispielen verlinkt habe, solltest du nicht für den Zahlungsverkehr nehmen. Es gibt diverse QR-Libraries, für PHP kannst du sowas nehmen:
http://phpqrcode.sourceforge.net/