function buildSample($settings = array()) { list($status, $code, $amount, $currency, $partial_approval, $timestamp) = array_replace(array('', 00, 314, 'USD', false, '1970-01-01T00:00:00Z'), $settings); $payment_response = array('payment_response' => array('transaction_type' => 'authorize', 'code' => $code, 'status' => $status, 'unique_id' => md5(time()), 'transaction_id' => md5(microtime(true)), 'technical_message' => 'TESTMODE: No real money will be transferred!', 'message' => 'TESTMODE: No real money will be transferred!', 'mode' => 'test', 'timestamp' => $timestamp, 'amount' => $amount, 'currency' => $currency, 'partial_approval' => $partial_approval, 'sent_to_acquirer' => '')); $xml = new \Genesis\Builder('xml'); $xml->parseStructure($payment_response); return $xml->getDocument(); }
/** * Generate Builder response (Echo) required for acknowledging * Genesis's Notification * * @return string */ public function generateResponse() { $type = $this->isWPFNotification() ? 'wpf_unique_id' : 'unique_id'; $structure = array('notification_echo' => array($type => $this->unique_id)); $builder = new \Genesis\Builder('xml'); $builder->parseStructure($structure); return $builder->getDocument(); }