We find one of the most valuable aspects of mapping out APIs across different industries, is when we come across the types of events that occur, and are beingdocumented by some of the most mature API platforms out there. We recently profiled a list of event types from Okta when it comes to user authentication and authorization management
, showing what the most meaningful events around how users, and applications are putting our API resources to work. Next, we wanted to take a look at payment API and some of the most meaningful events that occur across the payments landscape.
Picking a payment API was an easy choice. One of the leading payment providers out there, who are furthest along in their API journey, is Paypal. Who happens to have a pretty robust list of event types that occur via their platform
, evolving the Paypal API conversation to be more about event-driven consumption, moving beyond just a request and response way of doing business. Here are the event types of their payment API that Paypal has documented, broken down into 13 distinct categories.
Billing Plans and Agreements
- BILLING.PLAN.CREATED - A billing plan is created.
- BILLING.PLAN.UPDATED - A billing plan is updated.
- BILLING.SUBSCRIPTION.CANCELLED - A billing agreement is canceled.
- BILLING.SUBSCRIPTION.CREATED - A billing agreement is created.
- BILLING.SUBSCRIPTION.EXPIRED - A billing agreement expires.
- BILLING.SUBSCRIPTION.RE-ACTIVATED - A billing agreement is re-activated.
- BILLING.SUBSCRIPTION.SUSPENDED - A billing agreement is suspended.
- BILLING.SUBSCRIPTION.UPDATED - A billing agreement is updated.
- CUSTOMER.DISPUTE.CREATED - A customer dispute is created.
- CUSTOMER.DISPUTE.RESOLVED - A customer dispute is resolved.
- CUSTOMER.DISPUTE.UPDATED - A customer dispute is updated.
- RISK.DISPUTE.CREATED - A risk dispute is created. - Deprecated.
- IDENTITY.AUTHORIZATION-CONSENT.REVOKED - A user's consent token is revoked.
- INVOICING.INVOICE.CANCELLED - A merchant or customer cancels an invoice.
- INVOICING.INVOICE.CREATED - An invoice is created. - Create draft invoice
- INVOICING.INVOICE.PAID - An invoice is paid, partially paid, or payment is made and is pending.
- INVOICING.INVOICE.REFUNDED - An invoice is refunded or partially refunded.
- INVOICING.INVOICE.SCHEDULED - An invoice is scheduled. - Schedule invoice
- INVOICING.INVOICE.UPDATED - An invoice is updated. - Update invoice
- MERCHANT.ONBOARDING.COMPLETED - A merchant completes setup.
- MERCHANT.PARTNER-CONSENT.REVOKED - The consents for a merchant account setup are revoked or an account is closed
- PAYMENT.AUTHORIZATION.CREATED - A payment authorization is created, approved, executed, or a future payment authorization is created.
- PAYMENT.AUTHORIZATION.VOIDED - A payment authorization is voided.
- PAYMENT.CAPTURE.COMPLETED - A payment capture completes.
- PAYMENT.CAPTURE.DENIED - A payment capture is denied.
- PAYMENT.CAPTURE.PENDING - The state of a payment capture changes to pending.
- PAYMENT.CAPTURE.REFUNDED - A merchant refunds a payment capture.
- PAYMENT.CAPTURE.REVERSED - PayPal reverses a payment capture.
- PAYMENT.ORDER.CANCELLED - A payment order is canceled.
- PAYMENT.ORDER.CREATED - A payment order is created.
- PAYMENT.PAYOUTSBATCH.DENIED - A batch payout payment is denied.
- PAYMENT.PAYOUTSBATCH.PROCESSING - The state of a batch payout payment changes to processing.
Show Payout Details
- PAYMENT.PAYOUTSBATCH.SUCCESS - A batch payout payment completes successfully.
- PAYMENT.PAYOUTS-ITEM.BLOCKED - A payouts item was blocked.
- PAYMENT.PAYOUTS-ITEM.CANCELED - A payouts item is canceled.
- PAYMENT.PAYOUTS-ITEM.DENIED - A payouts item is denied.
- PAYMENT.PAYOUTS-ITEM.FAILED - A payouts item fails.
- PAYMENT.PAYOUTS-ITEM.HELD - A payouts item is held.
- PAYMENT.PAYOUTS-ITEM.REFUNDED - A payouts item is REFUNDED.
- PAYMENT.PAYOUTS-ITEM.RETURNED - A payouts item is returned.
- PAYMENT.PAYOUTS-ITEM.SUCCEEDED - A payouts item succeeds.
- PAYMENT.PAYOUTS-ITEM.UNCLAIMED - A payouts item is unclaimed.
- PAYMENT.SALE.COMPLETED - A sale completes.
- PAYMENT.SALE.DENIED - The state of a sale changes from pending to denied.
- PAYMENT.SALE.PENDING - The state of a sale changes to pending.
- PAYMENT.SALE.REFUNDED - A merchant refunds a sale. - Refund sale
- PAYMENT.SALE.REVERSED - PayPal reverses a sale. - Refund sale
- VAULT.CREDIT-CARD.CREATED - A credit card is created.
- VAULT.CREDIT-CARD.DELETED - A credit card is deleted.
- VAULT.CREDIT-CARD.UPDATED - A credit card is updated.
This list provides a pretty valuable look at the surface area of the Paypal payment API. Not the list of API paths we have grown accustom to over the last decade, but the most meaningful events that happen via the payments platform. These are the events that matter to the developers of applications that use the Paypal payment API, as well as business and personal users who are putting those applications to use. Out of all the things you can do with the Paypal API, these events are the most important, allowing for an entirely different view of how payments work.
We highlight APIs who share their event types like this because it reflects where the API sector is headed. The platforms who have been around the longest, and are seeing the most activity are realizing the importance of investing in event-driven architecture, and mapping out the types of events that are occurring, as Paypal has done. Streamdata.io is dedicated to helping understand where the API sector is headed, as well as helping our customers navigate their own API infrastructure towards a more event-driven view of doing business online.