PayPal Credit is a customer credit offering from PayPal. For information on the availability and benefits of this product, see our PayPal Credit support article.

Integration

You can add PayPal Credit to your checkout flow after you have successfully enabled Checkout with PayPal on both client and server side. Minimum iOS SDK version required: 4.8.0.

Add a PayPal Credit button

  1. Download the paypal-credit-ios assets
  2. Add the button image as a new image set in your Xcode project's Asset Catalog

Tokenize using PayPal Credit

Tokenization with PayPal Credit is similar to the standard PayPal tokenization - on the BTPayPalRequest object, set the offerCredit option to true.

Here is an example with both PayPal and PayPal Credit buttons:

Objective-C Swift
#import "BraintreePayPal.h"

- (void)viewDidLoad {
    [super viewDidLoad];

    self.braintreeClient = [[BTAPIClient alloc] initWithAuthorization:@"<#CLIENT_AUTHORIZATION#>"];

    //-- PayPal Button --
    UIButton *customPayPalButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 60, 120)];
    [customPayPalButton addTarget:self
                           action:@selector(customPayPalButtonTapped:)
                 forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:customPayPalButton];

    //-- PayPal Credit Button --
    UIButton *customPayPalCreditButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 180, 60, 120)];
    UIImage *paypalCreditImage = [UIImage imageNamed:@"paypal-credit-button.png"]; //-- Use the downloaded image asset here
    [customPayPalCreditButton setImage:paypalCreditImage forState:UIControlStateNormal];
    [customPayPalCreditButton addTarget:self
                                 action:@selector(customPayPalCreditButtonTapped:)
                       forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:customPayPalCreditButton];
}

// Regular PayPal tokenization
- (IBAction)customPayPalButtonTapped:(id)sender {
    // Start the Checkout flow
    BTPayPalRequest *request = [[BTPayPalRequest alloc] initWithAmount:@"10.00"];

    [self startPayPalCheckout:request];
}

// PayPal Credit tokenization
- (IBAction)customPayPalCreditButtonTapped:(id)sender {
    // Start the Checkout flow
    BTPayPalRequest *request = [[BTPayPalRequest alloc] initWithAmount:@"10.00"];

    request.offerCredit = YES; // Offer PayPal Credit

    [self startPayPalCheckout:request];
}

- (void)startPayPalCheckout:(BTPayPalRequest *)paypalRequest {
    BTPayPalDriver *paypalDriver = [[BTPayPalDriver alloc] initWithAPIClient:self.braintreeClient];
    paypalDriver.viewControllerPresentingDelegate = self;
    paypalDriver.appSwitchDelegate = self; // Optional

    [paypalDriver requestOneTimePayment:request
                            completion:^(BTPayPalAccountNonce *tokenizedPayPalAccount, NSError *error) {
        ...
    }];
}

See our iOS SDK reference for more information on the options available in the Checkout with PayPal flow.

Next: Testing and Go Live →

Still have questions?

If you can’t find an answer, contact our Support team.