The Authorize.Net Developer Blog

Posts from Authorize.Net employees, community members and experts about integrating with the Authorize.Net Payment Gateway: sample code, tutorials, and problem-solving techniques, just to name a few.

API or SDK, what is the difference?

by Administrator Administrator on ‎02-11-2011 02:08 PM (110,921 Views)

API (Application Programming Interface)

The name “Application Programming Interface” is very self-descriptive.  When programming an application to interface with a separate application or platform, you will almost invariably use an API. 
Any communication between an external program and Authorize.Net will be performed through one of our APIs.  The Authorize.Net APIs are designed to be agnostic to the development platform and language that an external developer wishes to use.
Authorize.Net provides integration guides for each API we offer. These guides provide details on each individual API call that is available, including required fields and response details. For a complete list of the APIs we offer, please visit From there, you can click the link for each API name to find out more information and view the documentation. 
For information on the very newest API calls at any given time, it is also wise to keep an eye on the News and Announcements board in this very community.  
SDK (Software Development Kit)
A Software Development Kit is a package of pre-written code that developers can re-use in order to minimize the amount of unique code that they need to develop themselves.  SDKs can help to prevent unnecessary duplication of effort in a development community.
Authorize.Net provides SDKs for you to download and use directly in your own development project. The SDKs make use of the Authorize.Net APIs, but are packaged into easy-to-use libraries for each specific programming language. In many cases, a developer can handle all interaction with Authorize.Net using methods provided in the SDKs without ever having to learn the lower level details of the API communication itself.
For a list of our current SDKs, please visit
Two other things that may cause some confusion for new developers is the difference between sample code and sample applications. 
Sample Code
Sample code is meant to accompany our API guides and provide an example of how to directly communicate with our APIs.  The examples demonstrated in the sample code are very simplified and the sample code is not intended to be directly used without modification, however, these examples can serve as a starting point for developing your own application.
We provide sample code in a variety of languages at
Sample Application
Our sample applications are meant to accompany our downloadable SDKs.  Like the sample code, the sample applications are not intended to be directly used without modification and they do not cover the use of every feature of the SDKs.  They are intended to show only one possible example of how the SDK can be used to interact with Authorize.Net and to help give you an idea of how you may develop your own application.
Sample applications can be downloaded next to the SDKs at