Integrate Automated Recurring Billing(ARB) API with AIM
Authorized.Net is AIM means Advance Integration Method. AIM is used for online transaction but with authorized way. It means Admin need to authorized the amount or order submitted by end-user.
After authorization it will go for Capture. Once amount will be captured by Admin that means it is queued for Unsettled Transaction. After some hour it will process automatically for settled Transaction.
- Authorized: it means amount is Approved by Admin.
- Capture : it means amount is deducted from buyer account.
- Unsettled : it means amount is not yet deposited to Merchant account.
- Settled : it means account is deposited to Merchant account. This is the final process for Transaction.
What is ARB?
ARB means Automatic Recurring Billing. ARB is used for subscription. ARB can be created eg. monthly ,yearly ,half yearly etc. Once ARB is created amount will be deducted from buyer account as according to set ARB details . It will continue until it is canceled by Merchant.
How to work with AIM ARB C# ?
1) First of all you need to Add reference of “Authorize.Net”.
2) Add reference of AIM DLL.
Note: Now access all Classes of AIM ARB according to your needs.
1) To create Order by customer
- Create Object of “AIMTransaction” class.
- Invoke “CreateOrder” method.
- Pass Following Parameters.
Data Type | Parameter |
string | LoginAPI (get it from your Authorized.net account panel) |
string | TransactionKey (get it from your Authorized.net account panel) |
string | cardNumber (credit card number) |
string | expirationMonthAndYear |
decimal | amount |
string | description |
string | FirstName |
string | LastName |
string | Address |
string | Country |
4. It will return a message suucess/error.
2) To get list of Unsetteled Transaction
- Invoke Unsettled Transaction.
- Pass following parameters
Data Type | Parameter |
string | LoginAPI (get it from your Authorized.net account panel) |
string | TransactionKey (get it from your Authorized.net account panel) |
- It will return you Unsetteled Transaction list
3) To get list of Setteled Transaction
- Invoke “SetteledTransaction”.
- Pass following parameters.
Data Type | Parameter |
string | LoginAPI (get it from your Authorized.net account panel) |
string | TransactionKey (get it from your Authorized.net account panel) |
- It will return you “SetteledTransaction” list.
4) Create Subscription or ARB
- Create object of ARB class.
- Invoke createSubscription method.
- Pass following parameters.
Data Type | Parameter |
string | LoginAPI (get it from your Authorized.net account panel) |
string | TransactionKey (get it from your Authorized.net account panel) |
string | transaction_id |
string | BuyerEmailId |
string | CardNumber |
short | BillingInterval |
int | CardExpirationMonth |
int | CardExpirationYear |
string | InvoiceNumber |
DateTime | StartsOn (start date) |
string | StreetAddress |
decimal | amount |
short | numberOfBillings |
- It will return you Subscription ID ,save it in DB because require while cancel subscription
5) Cancel Subscription or ARB
- Create object of “AIMTransaction” class.
- Invoke “CancelSubscription” method.
- Pass following parameters.
Data Type | Parameter |
string | LoginAPI (get it from your Authorized.net account panel) |
string | TransactionKey (get it from your Authorized.net account panel) |
string | sub_id |
- It will return you message success/error.
6) Refund Amount to User
- Create object of “AIMTransaction” class
- Invoke “Refund” method
- Pass following parameters
- It will return you message success/error.
7) Capture Amount by Admin
- Create object of “AIMTransaction” class
- Invoke “capture” method
- Pass following parameters.
- It will return you message success/error.
8) Void Amount by Admin
- Create object of “AIMTransaction” class
- Invoke “VoidAMI” method
- Pass following parameters
- It will return you message success/error
Data Type | Parameter |
string | LoginAPI (get it from your Authorized.net account panel) |
string | TransactionKey (get it from your Authorized.net account panel) |
string | id (id here is transaction Id) |
decimal | amount |
string | creditcardNuber |
Data Type | Parameter |
string | LoginAPI (get it from your Authorized.net account panel) |
string | TransactionKey (get it from your Authorized.net account panel) |
string | transaction_id |
decimal | amount |
Data Type | Parameter |
string | LoginAPI (get it from your Authorized.net account panel) |
string | TransactionKey (get it from your Authorized.net account panel) |
string | id (id here as Transaction Id) |
decimal | creditcardNuber |