REST API reference
Payments (resource group)
PayPal provides various payment related operations using the
/payment resource and related sub-resources. Use payment for direct credit card payments and PayPal account payments. You can also use sub-resources to get payment related details.
Execute (complete) a PayPal payment that has been approved by the payer. Optionally update transaction information when executing the payment by passing in one or more transactions.
Get details about payments that have not completed, such as payments that are created and approved, or if a payment has failed.
Partially update the payment resource for the given identifier. Please note that it is not possible to use patch after execute has been called.
Sale Transactions (resource group)
To get details about completed payments (sale transaction) created by a payment request or to refund a direct sale transaction, PayPal provides the
/sale resource and related sub-resources. You can find the sale transactions in the payment resource within
Get details about a sale transaction.
Refund a completed payment. Provide the
sale_id in the URI and an empty JSON payload for a full refund. For partial refunds, you can include an amount.
Refunds (resource group)
Authorizations (resource group)
/authorization resource and related sub-resources to act on a previously created authorization. Options include retrieving, capturing, voiding, and reauthorizing authorizations.
Get details about authorizations.
Use this resource to capture and process a previously created authorization. To use this resource, the original payment call must have the
intent set to
Void a previously authorized payment.
Reauthorize a PayPal account payment. We recommend that you reauthorize a payment after the initial 3-day honor period to ensure that funds are still available.
Captures (resource group)
/capture resource and sub-resources allow you to look up and refund captured payments.
Get details about a captured payment.
Refund a captured payment. Provide the
captureId in the URI and an amount object. For partial refunds, you can include a lower amount object.
Orders (resource group)
/orders resource to take action on a payment with the intent of
order. Actions include authorize, capture, void, and look up orders. Also see create and process an order for further information about using the
/payment resource to create and execute an order.
It is not possible to refund an order directly. Instead, you must refund a completed payment of the order. Refer to the following how-to guides for integration information:
For operation information as well as request and response details, see Refund a captured payment.
order_id to get details about an order.
Capture a payment on an order. To use this call, an original payment call must specify an
Void an existing order.
Create an empty billing plan and add a trial period and/or regular billing. Alternatively, you can create a fully loaded plan that includes both a trial period and regular billing.
Update the information for an existing billing plan. The state of a plan must be active before a billing agreement is created.
Get details about a specific billing plan.
Get a list of all billing plans based on their current state and optional query string parameters.
Create a billing agreement for the buyer. The response for this call includes these HATEOAS links: an
approval_url link and an
execute link. Each returned link includes the token for the agreement.
Execute an agreement after the buyer approves it.
Search for the transactions within a billing agreement.
Set the outstanding amount of an agreement.
Bill the outstanding amount of an agreement.
Make payouts to multiple PayPal accounts or to a single PayPal account.
Periodically get the latest status of a batch payout along with the transaction status and other data for individual items.
Get data about a payout item, including the status, without retrieving an entire batch. Get the status of an individual payout item in a batch in order to review the current status of a previously-unclaimed, or pending, payout item.
Cancel an existing, unclaimed transaction. If an unclaimed item is not claimed within 30 days, the funds will be automatically returned to the sender. This call can be used to cancel the unclaimed item prior to the automatic 30-day return.
Stores credit card details with PayPal.
Deletes details of a stored credit card. Include the credit card ID in the request URI.
Shows details for a stored credit card. Include the credit card id in the request URI.
Lists stored credit cards.
Updates a stored credit card, by ID.
Grant a new access token, using a refresh token.
Invoices (resource group)
Invoices are objects that you use to track payments.
Sends an invoice, by ID, to the payer. To send an invoice, you must include an
Updates an invoice, by ID.
Shows details for an invoice, by ID.
Lists invoices that belong to the merchant who makes the call.
Generates the next invoice number that is available to the user.
Returns invoices that match the specified search criteria.
Sends a reminder that a payment is due for an existing invoice.
Cancels an invoice and, optionally, notifies the payer about the cancellation.
Deletes a draft invoice. Note that this call works for invoices in the draft state only.
Gets a QR code for an invoice, by ID. The QR code is a PNG image in base-64 encoded format that corresponds to the invoice ID. A QR code for an invoice can be added to a paper or PDF invoice. When a customer uses their mobile device to scan the QR code, the customer is redirected to the PayPal mobile payment flow, where they can pay online with PayPal or a credit card.
Records a payment and marks an invoice as paid.
Records a refund and marks an invoice as refunded.
Templates (resource group)
Templates are objects that store customized invoice details. You can use templates to quickly create invoices that are populated with predefined data. To create templates, go to Template Settings.
Create a web experience profile
Retrieve the details of a particular web experience profile by passing the ID of the profile to the request URI.
Get a list of all profiles that exist for a given merchant (or subject).
Update an experience profile.
Webhooks (resource group)
/webhooks-event-typesfor listing webhook event types.
/webhooksfor creating, listing, updating, and deleting webhooks.
/webhooks-eventsfor searching and resending webhook events.
Create a webhook. The maximum number of webhooks you can register is 10.
Retrieve a webhook by using the
webhook_id as an identifier.
List all the webhooks.
Update a webhook; supports the
replace operation only.
Search for all webhook events.
Specify a received webhook event-id to resend the event notification.
Retrieve the list of events types that are subscribed to a webhook.
Simulate a webhook event using a sample payload. Also use the Webhooks Simulator interface to send static mock event data to the URLs that you have configured to accept webhooks. For more information about simulation capabilities, see the webhooks overview.