Showing results for 
Search instead for 
Did you mean: 

Question about ARB trial period



I faced with problem with creating of ARB subscription with trial period. Need to create subscription with 1 week of trial period and month to month payment after that trial. Can I create such subscription with standard mechanism or should I create 2 subscriptions to implement such behavior?


Thanks in advance.


Hi uthman,


The only way that it would be possible to not charge your customer during the life of a subscription would be to create all of the payments as trial period payments, except for the last scheduled payment. This would allow you to edit the payment amount to a $0.00 for any scheduled payment necessary, except for the last scheduled payment. A standard, non-trial ARB subscription occurence will not allow you to edit the amount to $0.00.


Also, at least one occurrence in the ARB subscription must be scheduled as a standard, non-trial ARB subscription transaction. If one is not included in the create request, the request will fail to successfully create the subscription.



Thank you,



Trusted Contributor
Trusted Contributor

Another possibility would be to somehow (see below) know when ARB transactions are submitted and to, if there is enough of a time window be capturing the transaction and batch settlement, to void the 12th one.  If the time window is too small or unreliable, then immediately credit the transaction for the full amount.


As for how to know when ARB transactions are submitted, you could either go with SilentPost or use the ARB email notifications.


  • SilentPost - With SilentPost, you configure your account to make an HTTP POST (aka form submit) to a URL you specify whenever any transaction (ARB or not) is submitted to your account.  The form fields of this post are the fields of the transaction.  This is fairly easy to implement, but the downside is that the Authorize.Net servers do a fire-and-forget when making the HTTP POST call, so if there is any breakdown in communication between their server sending it and your server receiving it, the notification is permanently lost.  The reliablity of this is somewhat dependent upon reliable your website and hosting provider are, but overall the chances of there being a problem during those few seconds of the year when you need the information being posted (basically, the time a post takes times the number of customers on this 11+1 plan of yours) is probably quite low.
  • ARB Email Notifications - In this method, you configure Authorize.Net to send you one or more emails on every day that at least one ARB transaction processes. Unlike the SilentPost method, emails are queued in an inbox, so messages are not lost because your website or server was offline the moment the message arrived.  The downside here is the cost of building this infrastructure. You need to build a program, completely separate from your website, that runs on a periodic basis ("cron job" in *nix world, "Scheduled Task" in Windows) and checks a specified email inbox for messages matching a certain pattern (probably based on the sender and Subject line of the ARB notification emails), then download any such messages, extract the attached .CSV files, parse said .CSV files, and act upon the parsed contents accordingly. More reliable, more cost.
  • GetTransactions - A third possibility occured to me while I was writing the above two. There is a fairly recent addition to the Authorize.Net API which allows you to download transactions.  You could build a program (again, separate from your website and scheduled to run daily or as often as you need) that downloads all of the transactions for the last 24 hours (if running daily, otherwise since the last time the program ran) and looks for ones that need to be voided or credited.


I don't know to what extent you were hoping for a solution that did not involve programming, but I don't think there is one. However, if you can do it, any one of these three should fit the bill.



Dave Parker
IT DevWorks, LLC
Makers of the I-Bill IT libraries for
Trusted Contributor
Trusted Contributor



i have new problem with trial period

i use  arb payment method.

  • Amount: $120
  • Interval Length: 1
  • Interval Unit: months
  • Start Date: <current-date>
  • Total Occurrences: 9999
  • Trial Occurrences: 1
  • Trial Amount: $260

but it charge $120 why it not charge $260 for first time subscription


Could be a programming issue, can you post your code?

I have an issue where I need to do a 2 year subscription cycle, but ARB only allows up to 1 year.  I know sort of a way around this, I am doing an AIM payment today, setting up an ARB for 12 months with 1 trial occurance and 2 total occurances.  But, just wondering why you can only have ARB for 1 year or less?  Any chance at changing this?

Hi all,

I have a problem with free trial period.

When user sign up, they will free trial period in 2 weeks, after 2 weeks, they will charged money 10$/month.

When create subcription, I set start date = now addDays 2 weeks, but when I post request to, user still charge money immerdiately. ( I hope user will charged money after 2 weeks).

I don't understand where i wrong? Please help me.


ARB doesn't use that URL. AIM do.


documentation for ARB




I was reading this thread. When you say "I still use AIM to make the first charge". I was thinking to do exactly the same. But what if the ARB has only one charge? For example, a subscription for a month. When the firts month finish, subscription finishes and no other payment should be charged.


I was thinking to use AIM to make the charge and then use an ARB for a month and a $0.01 amount. Do you know if there is a better way to do this?


Thanks in advance!

If the subscription is for one month and thery pay up front then you don't really have a subscription. :) Just charge them once. There is no need to create a subscription in ARB at all.

John Conde :: Certified Authorize.Net Developer (Brainyminds) :: Official Authorize.Net Blogger

NEW! Handling Authorize.Net's Webhooks with PHP

Integrate Every Authorize.Net JSON API with One PHP Class (Sample code included)

Tutorials for integrating Authorize.Net with PHP: AIM, ARB, CIM, Silent Post
All About Authorize.Net's Silent Post

We have a situation that I'm hoping someone can provide input on. We use Gravity Forms which currently only allows us to create an ARB in We have immediate start dates, monthly charges. Moving forward, we are hoping to have the following on submission of form:

1. First Charges Drops immediately in for $50

2. In 2 months, we drop another $50 and continue to drop that $50 every month from there on out.


Is there a way we can accomplish this with a combination of trial and ARB?