<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\AuthorizenetAcceptjs\Gateway\Request; use Magento\AuthorizenetAcceptjs\Gateway\SubjectReader; use Magento\Payment\Gateway\Request\BuilderInterface; /** * Adds the basic payment information to the request */ class OrderDataBuilder implements BuilderInterface { /** * @var SubjectReader */ private $subjectReader; /** * @param SubjectReader $subjectReader */ public function __construct(SubjectReader $subjectReader) { $this->subjectReader = $subjectReader; } /** * @inheritdoc */ public function build(array $buildSubject): array { $paymentDO = $this->subjectReader->readPayment($buildSubject); $order = $paymentDO->getOrder(); return [ 'transactionRequest' => [ 'order' => [ 'invoiceNumber' => $order->getOrderIncrementId() ] ] ]; } }