getValues(); return $ref_enums; } public function createDispute(array $fields = array(), array $params = array(), $pending = false) { $this->assureId(); $param_types = array( 'reason' => 'reason_enum', ); $enums = array( 'reason_enum' => PaymentEnginePaymentReasonValues::getInstance()->getValues(), ); $request = new ApiRequest( $this->api, $this->data['id'], RequestInterface::METHOD_POST, '/dispute', new PaymentEnginePayment(), 'EDGE', PaymentEnginePayment::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function createRefund(array $fields = array(), array $params = array(), $pending = false) { $this->assureId(); $param_types = array( 'amount' => 'float', 'currency' => 'string', 'reason' => 'reason_enum', ); $enums = array( 'reason_enum' => PaymentEnginePaymentReasonValues::getInstance()->getValues(), ); $request = new ApiRequest( $this->api, $this->data['id'], RequestInterface::METHOD_POST, '/refunds', new PaymentEnginePayment(), 'EDGE', PaymentEnginePayment::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } public function getSelf(array $fields = array(), array $params = array(), $pending = false) { $this->assureId(); $param_types = array( ); $enums = array( ); $request = new ApiRequest( $this->api, $this->data['id'], RequestInterface::METHOD_GET, '/', new PaymentEnginePayment(), 'NODE', PaymentEnginePayment::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums) ); $request->addParams($params); $request->addFields($fields); return $pending ? $request : $request->execute(); } }