cancel
Showing results for 
Search instead for 
Did you mean: 

Programmatically checking status of a recurring payment

Hi,

 

I'm using recurring billing to perform a 1 time payment 35 days into the future. When that amount of time has past, what is the best way to determine whether or not that scheduled payment actually went through (programmatically)?

 

I was planning on using the "Get Subscription" request like below, but that doesn't seem to return info about whether the payment actually went through:

 

<?xml version="1.0" encoding="utf-8"?>
<ARBGetSubscriptionRequest xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd">
    <merchantAuthentication>
        <name>xxxx</name>
        <transactionKey>xxxx</transactionKey>
    </merchantAuthentication>
    <refId>Sample</refId>
    <subscriptionId>3996733</subscriptionId>
</ARBGetSubscriptionRequest>

zork40dev
Member
1 ACCEPTED SOLUTION

Accepted Solutions
5 REPLIES 5

I should add that I am aware of the silent post feature, but do not wish to use it as it seems like it could be unreliable. This is for a high volume store. If Authorize.net fails to reach the silent post URL at any given time, it would be a problem. I'd prefer to query the API to determine if the payment went through.

zork40dev
Member

Thanks for the info.

 

Do you happen to know:

 

1. If a declined recurring payment will show up as an unsettled transaction?

 

2. If there is a way to trigger a decline in the Sandbox, for a scheduled payment via recurring billing? I'd like to be able to add code that will deal with declines due to expired cards or insufficent funds, but need to trigger a decilne to do so.

Nevermind that last post, I found my answers:

 

1. Yes

 

2. After the payment has been scheduled but before it actually occurs, if you change the ZIP Code for the subscription in Authorize.net's control panel to 46282 it will trigger a decline.

Thanks for posting the answers!