/** * create signatures for different call types * @ignore */ public static function init() { self::$_createCustomerSignature = [self::$_transparentRedirectKeys, ['customer' => CustomerGateway::createSignature()]]; self::$_updateCustomerSignature = [self::$_transparentRedirectKeys, 'customerId', ['customer' => CustomerGateway::updateSignature()]]; self::$_transactionSignature = [self::$_transparentRedirectKeys, ['transaction' => TransactionGateway::createSignature()]]; self::$_createCreditCardSignature = [self::$_transparentRedirectKeys, ['creditCard' => CreditCardGateway::createSignature()]]; self::$_updateCreditCardSignature = [self::$_transparentRedirectKeys, 'paymentMethodToken', ['creditCard' => CreditCardGateway::updateSignature()]]; }
public function testCreateSignature() { $expected = ['billingAddressId', 'cardholderName', 'cvv', 'number', 'deviceSessionId', 'expirationDate', 'expirationMonth', 'expirationYear', 'token', 'venmoSdkPaymentMethodCode', 'deviceData', 'fraudMerchantId', 'paymentMethodNonce', ['options' => ['makeDefault', 'verificationMerchantAccountId', 'verifyCard', 'verificationAmount', 'venmoSdkSession', 'failOnDuplicatePaymentMethod']], ['billingAddress' => ['firstName', 'lastName', 'company', 'countryCodeAlpha2', 'countryCodeAlpha3', 'countryCodeNumeric', 'countryName', 'extendedAddress', 'locality', 'region', 'postalCode', 'streetAddress']], 'customerId']; $this->assertEquals($expected, Braintree\CreditCardGateway::createSignature()); }
/** * creates a full array signature of a valid create request * @return array gateway create request format */ public static function createSignature() { $creditCardSignature = CreditCardGateway::createSignature(); unset($creditCardSignature[array_search('customerId', $creditCardSignature)]); $signature = ['id', 'company', 'email', 'fax', 'firstName', 'lastName', 'phone', 'website', 'deviceData', 'deviceSessionId', 'fraudMerchantId', 'paymentMethodNonce', ['riskData' => ['customerBrowser', 'customerIp', 'customer_browser', 'customer_ip']], ['creditCard' => $creditCardSignature], ['customFields' => ['_anyKey_']]]; return $signature; }
/** * creates a full array signature of a valid create request * @return array gateway create request format */ public static function createSignature() { $creditCardSignature = CreditCardGateway::createSignature(); unset($creditCardSignature[array_search('customerId', $creditCardSignature)]); $signature = array('id', 'company', 'email', 'fax', 'firstName', 'lastName', 'phone', 'website', 'deviceData', 'deviceSessionId', 'fraudMerchantId', 'paymentMethodNonce', array('creditCard' => $creditCardSignature), array('customFields' => array('_anyKey_'))); return $signature; }