PayPal Initiate billing agreement
The PayPal Reference Transactions API enables a customer and a merchant to enter a contract, or a billing agreement, based on reference transactions. A reference transaction is a financial transaction that you initiate through a billing agreement and from which you can derive subsequent payments.
The combination of billing agreements and reference transactions benefits customers and merchants.
Customers can make seamless on-demand or recurring payments for services or goods without needing to log in to the merchant site after agreement approval.
For example, customers can enter into agreements to:
Make future payments for actual usage of utilities, such as gas or electricity
Make future purchases on the merchant site without being on the merchant site
Make recurring payments for a subscription service
Pay a merchant in a marketplace on a regular basis
A customer can have multiple billing agreements. For example, the customer might establish separate agreements for different kinds of service.
Merchants can initiate recurring payments for varying amounts on varying schedules.
Get consent to take funds from a customer's account at varying amounts and schedules
Create a billing agreement that charges the customer's PayPal account for subsequent purchases
Initiate a payment based on the billing agreement
Leverage PayPal to protect the risks inherent in processing payments
For example, merchants can enter into agreements to:
Token is for single use only, you can create only one billing agreement from one token.
Required fields
ppcUid - PayPal Payment Provider Contract UUID
Optional fields
description - Agreement description
shippingAddress - Shipping Address details
country - The two-character ISO 3166-1 code that identifies the country or region
postalCode - The postal code, which is the zip code or equivalent
countrySubdivision - The highest-level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision
city - A city, town, or village
addressLine1 - The first line of the address
addressLine2 - The second line of the address
enableAddressChange - Indicates whether to show the shipping address but prevent the customer from editing it
collectShippingAddress - Indicates whether to skip the collection of the shipping address from the customer during the agreement sign-up phase
allowedCountries - An array of legally accepted customer country codes
experienceId - The ID of the experience profile to apply during the agreement approval UI flow
externalSelectedFundingInstrumentType - The type of financial instrument (FI) that the merchant wants to promote. CREDIT or PAY_UPON_INVOICE
returnUrl - The URL where the customer is redirected after the customer approves the payment
cancelUrl - The URL where the customer is redirected after the customer cancels the payment
Request Here is an example of request that can be used for creating a billing agreement token.
Response
The response for create billing agreement token will look like this:
Response fields
approvalUrl - The URL to which the customer needs to be redirected for approving the billing agreement token
billingToken - The billing agreement token that would be used to create the billing agreement
Customer Approval
You redirect the customer to the approval URL, where the customer can consent to the billing agreement and select a funding instrument. Then, the customer is redirected to the return URL that the merchant specified during billing agreement token creation.
Last updated
Was this helpful?
