Library Documentation

Below is documentation on interfacing to pay2amigos’s library software:

pay2amigos 2.0 POST Method for Rebilling Updates
For automated integration. This interface is NOT for Posting directly from a web form!

The URL of this interface is currently:
https://secure.pay2amigos.com/interfaces/bp20rebadmin

PLEASE NOTE: This URL may change in the future. In integrating your system, please remember
to make the URL a parameter you can easily change. If you are coding a shopping cart, please
make the URL a parameter the merchant can easily set.

REQUEST FORMAT:
Expected input format is that of a standard HTTPS POST. All parameters are uri-encoded in the
body of the request, for example:

### BEGIN REQUEST EXAMPLE ###
POST https://secure.pay2amigos.com/interfaces/bp20rebadmin
Content-Type: application/x-www-form-urlencoded

ACCOUNT_ID=123412341234&REBILL_ID=4321432143214321&TRANS_TYPE=GET
### END REQUEST EXAMPLE ###

RESPONSE FORMAT:
Expected output is that of a standard HTTPS response. The HTTP Status will be ‘200’ for a successfully-
processed request and ‘400’ for an error. All response parameters are uri-encoded in
the body of the response, for example:

### BEGIN RESPONSE EXAMPLE ###
HTTP/1.1 200 OK
Cache-Control: max-age=0
Connection: close
Date: Tue, 07 Dec 2004 17:31:12 GMT
Server: Apache
Content-Type: text/html; charset=ISO-8859-1
Expires: Tue, 07 Dec 2004 17:31:12 GMT

rebill_id=123123123123&account_id=321321321321&user_id=321123321123&status=active
### END RESPONSE EXAMPLE ###

Input Parameters are:

ACCOUNT_ID = Your 12-digit pay2amigos 2.0 Account ID
USER_ID = Optional. Your 12-digit pay2amigos 2.0 User ID
TAMPER_PROOF_SEAL = An MD5 hash of your Secret Key and a few transaction parameters, as below.
REBILL_ID = Required. The 12-digit ID of the Rebilling to modify/view
TRANS_TYPE = Optional. GET or SET (defaults to SET)
If set to GET, then you are only required to send the ACCOUNT_ID, TAMPER_PROOF_SEAL, and REBILL_ID.
If “SET” then you must also send at least one field, below, to set the value of:
TEMPLATE_ID = Optional and dangerous – selects a new transaction ID to act as the template for
this rebilling sequence.
NEXT_DATE = Set the next rebill date to this date.
REB_EXPR = Set the rebilling expression to this expression.
REB_CYCLES = Set the number of remaining rebilling cycles to this number.
REB_AMOUNT = Set the regular rebilling amount to this amount.
NEXT_AMOUNT = Set the *next* rebilling only to this amount; all other rebilling’s will continue at the regular (REB_AMOUNT) amount.
STATUS = Set the status of this rebilling. Valid statuses at the time of writing are:
active
deleted
stopped
expired
failed
error

The TAMPER_PROOF_SEAL is an MD5 checksum of your SECRET KEY and a few transaction parameters. We use an
MD5 simply to avoid sending the SECREY KEY over the wire, and we include some of the transaction parameters
simply as a convenient source of “random” padding. The TAMPER_PROOF_SEAL is currently calculated as follows:

md5(SECRET KEY + ACCOUNT_ID + TRANS_TYPE + REBILL_ID)
where ‘+’ indicates string concatenation and undefined fields are concatenated as ” (null string)

Your md5 function must return a hex-encoded md5 checksum. If you do not know your SECRET KEY, please contact
pay2amigos support.

Output Parameters are returned for GET and SET transactions – if you perform a SET, the returned parameters should
reflect your changes:

REBILL_ID = The 12-digit ID specifying this rebilling.
ACCOUNT_ID = The 12-digit ID of the account owning this rebilling.
USER_ID = The 12-digit ID of the user owning this rebilling.
TEMPLATE_ID= The 12-digit ID of the template for this rebilling.
STATUS = The current status of the rebilling
CREATION_DATE = The date the rebilling sequence was originally created.
NEXT_DATE = The next day this rebilling will be run.
LAST_DATE = The last day this rebilling was run.
SCHED_EXPR = The current rebilling expression for this rebilling
CYCLES_REMAIN = The number of remaining rebilling cycles for this rebilling.
REB_AMOUNT = the regular amount this rebilling will charge the customer.
NEXT_AMOUNT = The amount this rebilling will charge on the next billing only.

Output HTTP status code is 200 for a successfully processed request.
Output HTTP status code is 400 for an error request.

Can’t find what you’re
looking for? We can help.

Contact 855-422-9385 for Integration Support.