Difference between revisions of "NATS3 Process Gateway Cross Sales Outside NATS"

From TMM Wiki
Jump to navigationJump to search
Line 4: Line 4:
  
 
''For [[NATS]] version 3.1.41.1 and higher.''
 
''For [[NATS]] version 3.1.41.1 and higher.''
 +
 +
<font color="red">'''WARNING'''</font> It is important to use POST requests only, using GET may cause sensitive data to be logged by your webserver.
  
 
If you want to send or receive [[ct#Cross Sell|cross-sells]] from one NATS program to another NATS program, please see the [[Cross Sells Admin]] article.  If you want to send or receive cross sells from something besides NATS to NATS, please read the following instructions.
 
If you want to send or receive [[ct#Cross Sell|cross-sells]] from one NATS program to another NATS program, please see the [[Cross Sells Admin]] article.  If you want to send or receive cross sells from something besides NATS to NATS, please read the following instructions.
Line 24: Line 26:
  
 
== Sending Cross-Sell Data ==
 
== Sending Cross-Sell Data ==
You must send all of the following information to http://[[ct#Domain|domain]]/signup/process_gateway.php using a HTTP GET or POST.
+
You must send all of the following information to http://[[ct#Domain|domain]]/signup/process_gateway.php using a HTTP POST.
 
* xs_nats: the ref code from ''xsells.php.''  This identifies the [[ct#Affiliate|affiliate]] sending the cross sale and the cross sale id used.
 
* xs_nats: the ref code from ''xsells.php.''  This identifies the [[ct#Affiliate|affiliate]] sending the cross sale and the cross sale id used.
 
* username: the new [[Common Terms#Member|member's]] username. If this username is not unique on the receiving site, a new random username will be generated.
 
* username: the new [[Common Terms#Member|member's]] username. If this username is not unique on the receiving site, a new random username will be generated.
Line 32: Line 34:
 
* cvv: the [http://en.wikipedia.org/wiki/Card_Verification_Value Card Verification Value]
 
* cvv: the [http://en.wikipedia.org/wiki/Card_Verification_Value Card Verification Value]
  
An example HTTP GET:
+
An example HTTP POST:
  
 
<pre class="bothclear">
 
<pre class="bothclear">
http://example.com/signup/process_gateway.php?xs_nats=ref_code&username=example&password=example&email=example@example.com&cc=1234567890&cvv=123
+
http://example.com/signup/process_gateway.php
</pre>
+
postxs_nats=refcode&postusername=example&postpassword=example...</pre>
  
 
If the recipient uses HTTPS, replace ''http'' with ''https''.
 
If the recipient uses HTTPS, replace ''http'' with ''https''.
  
You may optionally send any of the following information about the member by appending it to the HTTP GET or POST:
+
You may optionally send any of the following information about the member by appending it to the HTTP POST:
  
 
* firstname
 
* firstname

Revision as of 13:58, 26 January 2018

NATS 3
Cross-Sells Admin
Cross Sells Admin
Process Gateway Cross Sales Outside NATS
Outgoing Gateway Cross Sales
CCBill Cross-Selling
Cross Sells: A to Z

For NATS version 3.1.41.1 and higher.

WARNING It is important to use POST requests only, using GET may cause sensitive data to be logged by your webserver.

If you want to send or receive cross-sells from one NATS program to another NATS program, please see the Cross Sells Admin article. If you want to send or receive cross sells from something besides NATS to NATS, please read the following instructions.

Receiving Cross-Sell Data

To receive cross-sells, you must enter the IP address of the server that is sending the cross-sale into the $config['PROCESS_GATEWAY_SECURE_IPS'] configuration array in your NATS includes/config.php file. For example:

$config['PROCESS_GATEWAY_SECURE_IPS'] = Array(
'0' => '111.111.111.111',
'1' => '222.222.222.222',
'3' => '333.333.333.333'
);

Incorrectly formatting this line will break your NATS. Each entry should be a single IP address -- ranges, masks, and globs are not supported. Place a comma between each entry.

Sending Cross-Sell Data

You must send all of the following information to http://domain/signup/process_gateway.php using a HTTP POST.

  • xs_nats: the ref code from xsells.php. This identifies the affiliate sending the cross sale and the cross sale id used.
  • username: the new member's username. If this username is not unique on the receiving site, a new random username will be generated.
  • password: the new member's password.
  • email: the new member's email.
  • cc: the credit card number
  • cvv: the Card Verification Value

An example HTTP POST:

http://example.com/signup/process_gateway.php
postxs_nats=refcode&postusername=example&postpassword=example...

If the recipient uses HTTPS, replace http with https.

You may optionally send any of the following information about the member by appending it to the HTTP POST:

  • firstname
  • lastname
  • address1
  • address2
  • city
  • state
  • zip
  • country
  • shipping_firstname
  • shipping_lastname
  • shipping_address1
  • shipping_address2
  • shipping_zip
  • shipping_city
  • shipping_country
  • shipping_state

Return Values

After NATS processes the information you've sent, it returns two lines. (Note: the lines are sent as text; in your web-browser, they may appear as one line.) The first line is either SALE OK or SALE DECLINED. After a SALE OK, the second line will be blank. After a SALE DECLINED, the second line will describe the error. There are currently 19 possible error messages; the following two are most common:

  • UNSUPPORTED REQUEST
    • $config['PROCESS_GATEWAY_SECURE_IPS'] is either not setup or not setup correctly
  • NOT ALLOWED IP
    • The sending program's IP address is not in the $config['PROCESS_GATEWAY_SECURE_IPS'] configuration array