Payment Methods
A payment method represents transactable payment information such as credit card details or a customer's authorization to charge a PayPal or Venmo account. Payment methods belong to a customer, are securely stored in the Braintree Vault, and have a PaymentMethodToken attribute that you can store on your servers with reduced PCI compliance burden and later use to create transactions.
Create
Use Payment Method: Create to create a payment method for an existing customer using a payment method single-object token received from the client :
- C#
var request = new PaymentMethodRequest
{
CustomerId = "131866",
PaymentMethodNonce = NonceFromTheClient
};
Result<PaymentMethod> result = gateway.PaymentMethod.Create(request);
Alternatively, you can create a new customer with a payment method using Customer: Create with the PaymentMethodNonce parameter.
After the payment method is successfully created, you can use Transaction: Sale with the PaymentMethodToken parameter to create a transaction.
Update
Use Payment Method: Update to update an existing payment method.
Make default
Use the MakeDefault option to set a payment method as the default for its customer:
- C#
var updateRequest = new PaymentMethodRequest
{
Options = new PaymentMethodOptionsRequest
{
MakeDefault = true
}
};
Result<PaymentMethod> result = gateway.PaymentMethod.Update("the_token", updateRequest);
Billing address
Update the billing address:
- C#
var updateRequest = new PaymentMethodRequest
{
BillingAddress = new PaymentMethodAddressRequest
{
StreetAddress = "100 Maple Lane",
Options = new PaymentMethodAddressOptionsRequest
{
UpdateExisting = true
}
}
};
Result<PaymentMethod> result = gateway.PaymentMethod.Update("the_token", updateRequest);
You can also omit the UpdateExisting option to create a new billing address for the payment method.
See the reference and more examples of updating a payment method . If you want to update both payment method and customer information together, use Customer: Update.
Find
Use Payment Method: Find to find a payment method:
- C#
PaymentMethod paymentMethod = gateway.PaymentMethod.Find("token");
The return value of the Payment Method: Find call will be a PaymentMethod response object.
Delete
Use Payment Method: Delete to delete a payment method:
- C#
var result = gateway.PaymentMethod.Delete("the_token");
result.IsSuccess();
// true