Golang library for creating QR codes for payments.
Short Payment Descriptor format and EPC QR Code (SEPA) format is supported.
go get -u github.com/dundee/qrpay
import "github.com/dundee/qrpay"
p := qrpay.NewSpaydPayment()
p.SetIBAN("CZ5855000000001265098001")
p.SetAmount("10.8")
p.SetDate(time.Date(2021, 12, 24, 0, 0, 0, 0, time.UTC))
p.SetMessage("M")
p.SetRecipientName("go")
p.SetNofificationType('E')
p.SetNotificationValue("daniel@milde.cz")
p.SetExtendedAttribute("vs", "1234567890")
qrpay.SaveQRCodeImageToFile(p, "qr-payment.png")
import "github.com/dundee/qrpay"
p := qrpay.NewEpcPayment()
p.SetIBAN("CZ5855000000001265098001")
p.SetAmount("10.8")
p.SetMessage("M")
p.SetRecipientName("go")
qrpay.SaveQRCodeImageToFile(p, "qr-payment.png")
QR code image encoding uses skip2/go-qrcode.
import "github.com/dundee/qrpay"
p := qrpay.NewSpaydPayment()
p.SetIBAN("CZ5855000000001265098001")
p.SetAmount("108")
fmt.Println(qrpay.GenerateString())
// Output: SPD*1.0*ACC:CZ5855000000001265098001*AM:108*