From d8d0850b56f953d617fcf9ab77e38dc695c81935 Mon Sep 17 00:00:00 2001 From: Ciki Date: Wed, 26 May 2021 16:17:29 +0200 Subject: [PATCH] Add support for payeeAddressLines (#29) --- src/Payment/QrPaymentOptions.php | 2 ++ src/QrPayment.php | 38 ++++++++++++++++++++++++++++++-- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/src/Payment/QrPaymentOptions.php b/src/Payment/QrPaymentOptions.php index 3c5483a..84bee38 100644 --- a/src/Payment/QrPaymentOptions.php +++ b/src/Payment/QrPaymentOptions.php @@ -16,4 +16,6 @@ final class QrPaymentOptions public const AMOUNT = 'amount'; public const COUNTRY = 'country'; public const PAYEE_NAME = 'payeeName'; + public const PAYEE_ADDRESS_LINE1 = 'payeeAddressLine1'; + public const PAYEE_ADDRESS_LINE2 = 'payeeAddressLine2'; } diff --git a/src/QrPayment.php b/src/QrPayment.php index e6bcc8c..ef6d3be 100644 --- a/src/QrPayment.php +++ b/src/QrPayment.php @@ -71,6 +71,16 @@ final class QrPayment implements QrPaymentInterface */ private $payeeName = ''; + /** + * @var string + */ + private $payeeAddressLine1 = ''; + + /** + * @var string + */ + private $payeeAddressLine2 = ''; + /** * @var XzBinaryLocatorInterface */ @@ -150,8 +160,8 @@ public function getQrString(): string $dataArray[2][] = 0; // standing order $dataArray[2][] = 0; // direct debit $dataArray[2][] = $this->payeeName; - $dataArray[2][] = ''; // payee's address line 1 - $dataArray[2][] = ''; // payee's address line 2 + $dataArray[2][] = $this->payeeAddressLine1; + $dataArray[2][] = $this->payeeAddressLine2; $dataArray[2] = implode("\t", $dataArray[2]); @@ -412,6 +422,30 @@ public function setPayeeName(string $payeeName): QrPayment return $this; } + /** + * @param string $addressLine + * + * @return QrPayment + */ + public function setPayeeAddressLine1(string $addressLine): QrPayment + { + $this->payeeAddressLine1 = $addressLine; + + return $this; + } + + /** + * @param string $addressLine + * + * @return QrPayment + */ + public function setPayeeAddressLine2(string $addressLine): QrPayment + { + $this->payeeAddressLine2 = $addressLine; + + return $this; + } + /** * @return XzBinaryLocatorInterface */