Integration Guide
Table Of Contents
- Express Checkout Integration Guide
- Contents
 - Preface
 - Introducing Express Checkout
 - Express Checkout Button and Logo Image Integration
 - PayPal Name-Value Pair API Basics
 - Implementing the Simplest Express Checkout Integration
 - Testing an Express Checkout Integration
 - Customizing Express Checkout
 - Implementing the Instant Update API
 - Immediate Payment
 - Implementing Parallel Payments
 - Handling Payment Settlements
 - Handling Recurring Payments
- How Recurring Payments Work
 - Recurring Payments Terms
 - Options for Creating a Recurring Payments Profile
 - Recurring Payments With Express Checkout
 - Recurring Payments Profile Status
 - Getting Recurring Payments Profile Information
 - Modifying a Recurring Payments Profile
 - Billing the Outstanding Amount of a Profile
 - Recurring Payments Notifications
 
 - Using Other PayPal API Operations
 - Integrating giropay with Express Checkout
 
 
Express Checkout Integration Guide May 2010 107
Implementing Parallel Payments
Integrating Parallel Payments Using the SOAP API
9
payment2_item2.Name = "payment2_item2_name"; 
payment2_item2.Number = "payment2_item2_number"; 
payment2_item2.Quantity = "1"; 
payment2_items_array.SetValue(payment2_item1, 0); 
payment2_items_array.SetValue(payment2_item2, 1); 
//bind the items 
payment2.PaymentDetailsItem = payment2_items_array; 
//mandatory for api call 
payment2.PaymentRequestID = System.Guid.NewGuid().ToString(); 
//set the totals 
decimal tax_total2 = 0; 
decimal item_total2 = 0; 
foreach (PaymentDetailsItemType Key in payment2_items_array) 
{ 
 if (Key.Tax != null) 
 { 
 tax_total2 = decimal.Add(tax_total2, 
 decimal.Multiply(decimal.Parse(Key.Tax.Value), 
 decimal.Parse(Key.Quantity))); 
 } 
 if (Key.Amount != null) 
 { 
 item_total2 = decimal.Add(item_total2, 
 decimal.Multiply(decimal.Parse(Key.Amount.Value), 
  decimal.Parse(Key.Quantity))); 
 } 
} 
payment2.ShippingTotal = new BasicAmountType(); 
payment2.ShippingTotal.currencyID = CurrencyCodeType.USD; 
payment2.ShippingTotal.Value = "3.00"; 
payment2.ItemTotal = new BasicAmountType(); 
payment2.ItemTotal.currencyID = CurrencyCodeType.USD; 
payment2.ItemTotal.Value = item_total2.ToString(); 
payment2.TaxTotal = new BasicAmountType(); 
payment2.TaxTotal.currencyID = CurrencyCodeType.USD; 
payment2.TaxTotal.Value = tax_total2.ToString(); 
decimal order_total2 = decimal.Add(decimal.Add(tax_total2, item_total2), 
 decimal.Parse(payment2.ShippingTotal.Value)); 
payment2.OrderTotal = new BasicAmountType(); 
payment2.OrderTotal.currencyID = CurrencyCodeType.USD; 
payment2.OrderTotal.Value = order_total2.ToString(); 
//add the merchants to the array 
PaymentDetailsArray.SetValue(payment2, 1); 
//bind the merchants to the request 
SetECReq.SetExpressCheckoutRequest.SetExpressCheckoutRequestDetails.Payment 
 Details = PaymentDetailsArray;










