2

Я использую платежный шлюз Braintree в своем веб-приложении. Мне интересно, могу ли я получить информацию от пользователя.Платежный шлюз Braintree - Получить информацию о клиенте

Я не могу сохранить данные карты, это запрещено. Но если мне нужно запустить еще одну транзакцию для того же пользователя, могу ли я получить его информацию от самого Брейнтри и автоматически заполнить данные карты?

ответ

5

Я работаю в Braintree. Если вам нужна дополнительная информация, чем вы можете легко перейти на переполнение стека, обратитесь к нашему support team.

Одним из основных преимуществ платежных шлюзов, таких как Braintree, является то, что они подписывают информацию о кредитных картах без необходимости подвергаться этому воздействию.

В принципе, вы используете Braintree.js для шифрования информации о карте в браузере, чтобы ваш сервер ее никогда не видел.

Затем вы передаете эту зашифрованную информацию в Braintree. Взамен вы получите фишку как "xg67ba", который позже можно использовать для зарядки и ту же карту снова:

result = Braintree::Transaction.sale(
    :amount => "100.00", 
    :customer => { 
    :first_name => "Dan", 
    :last_name => "Smith" 
    }, 
    :credit_card => { 
    :number => "encryped_credit_card_number", 
    :expiration_date => "encryped_expiration_date", 
    :cvv => "encrypted_cvv" 
    }, 
    :options => { 
    :store_in_vault => true 
    } 
) 

result.transaction.customer_details.id 
#=> e.g. "131866" 
result.transaction.credit_card_details.token 
#=> e.g. "f6j8" 

Так что в следующий раз, это будет выглядеть так:

result = Braintree::Transaction.sale(
    :amount => "10.00", 
    :customer_id => "131866", 
    :credit_card => {:cvv => 'encrypted_cvv'} 
) 

Каждая кредитная карта связана с клиентом, и поэтому, если вы просто хотите взимать плату с клиента только по умолчанию, вы можете просто предоставить customer id. Рекомендуется возвращать cvv от клиента (который никто не позволяет хранить), но не требуется.

+0

является то, что возможно для андроид приложение для получения информации о карте ..? –

+0

@Pranav Информация о карте возвращается серверу, поэтому вы можете делать с ней что-либо. Как правило, вы свяжете его с одним из ваших пользователей, поэтому, когда они войдут в систему, вы можете позволить им снова использовать ту же информацию. Однако этот ответ устарел - у нас есть новый метод интеграции, о котором вы можете прочитать на https://developers.braintreepayments.com/ – agf

+0

ОК, спасибо за ответ. –

1

Как только у вас есть идентификатор клиента, вы можете получить информацию о Клиенте, используя следующий PHP-код.

$customerId = 67222186; 
    try{ 
     $result = Braintree_Customer::find($customerId); 
     echo $result->id; echo "\n"; 
     echo $result->firstName; echo "\n"; 
     echo $result->lastName; echo "\n"; 
     echo $result->email; echo "\n"; 
     echo $result->phone; echo "\n"; 
    } catch (Exception $e){ 
    echo $e->getMessage(); 
    } 

http://www.web-technology-experts-notes.in/2015/06/manage-customer-details-in-braintree.html