Credit Card Processing
Server To Server
To process a transaction using txprocess, send parameters with HTTP/ HTTPS POST (query string format) to https://office.paywiser.com/api/v1/index.php/{sid}/singletx
Query Parameters
Parameter | Required | Description |
---|---|---|
sid | Yes | Site id (unique identifier for the web site) |
tid | No | Tracking id (must be unique for each transaction) |
postback_url | Yes | The URL of the page used to recieve the TxHandler postback. The response can be read from $_POST array. |
redirect_url | No | Only required for 3D flow |
hash | Yes | md5 hash of strings concatenation from sid + timestamp + amounttotal + currency + rcode e.g. (in PHP): md5(‘22’.‘1234568995265421’.‘17.00’.‘CNY’.‘222b6c’) REMARK : amounttotal = (item_amount_unit * item_quantity ) + amount_shipping + amount_tax – amount_coupon |
timestamp | Yes | Format : hhmmss |
card_type | Yes | • amex , • visa , • mastercard , • jcb , • upicard , • allcard (use this one for server to server integration) |
card_no | Yes | Credit card number, In case of double acquiring payment it will be the transaction reference from the authorize transaction and no need for the rest card info. |
cart_exp_year | condition | 4-digityear expiration of the credit card.(e.g. 2020) |
card_exp_month | condition | 2-digitmonth expiration of the credit card. (eg. 05 – May) |
card_ccv | condition | CVV/CVC2 credit card verification code |
firstname | Yes | Frist name of the customer |
lastname | Yes | Last name of the customer |
phone | Yes | 10 to 14 numeric digits |
mobile | Yes | Mobile number |
address | Yes | Customer address |
suburb_city | Yes | Customer suburb or city |
state | Yes | Customer state, 2 digit code for US/Canada |
postcode | Yes | Customer postcode/zipcode |
country | Yes | Customer country, ISO 3166 2 digit code |
uip | Yes | Customer’s IPaddress. |
currency | Yes | Transaction currency[currency in which the gateway is setup], ISO 3 letter code ie : USD |
amount_shipping | Yes | Transaction shipping amount. 0.00 if nothing |
amount_coupon | Yes | Coupon amount. 0.00 if nothing |
amount_tax | Yes | Transaction shipping amount. 0.00 if nothing |
item_quantity[] | Yes | Quantity of each cart item |
item_name[] | Yes | Article names for each cart item |
item_no[] | Yes | Article numbers for each cart item |
item_desc[] | Yes | Descriptions for each cart item |
item_amount_unit[] | Yes | Price per unit for each cart item in two decimal place |
ref1 | No | Merchant reference field |
ref2 | No | Merchant reference field |
ref3 | No | Merchant reference field |
ref4 | No | Merchant reference field |
tx_action | No | Value : “PAYMENT” |
Instant Response
Parameter | DataType | Description |
---|---|---|
sid | String | Has the sid where transaction was processed |
status | String | OK – successful , EXC – failed , REQ – pending for 3D authentication. Only for 3D channel |
parrent_txid | String | Parent transaction id |
txid | String | The transaction ID |
tx_action | String | Default Value - PAYMENT |
amount | String | The amount processed. |
currency | String | The currency in which the transaction was processed |
comment | String | Description of the transaction |
descriptor | String | Gateway descriptor name |
error[type] | String | “WAIT3D” - Only for 3D channel |
error[msg] | String | “Awaiting 3DSecure” - Only for 3D channel |
error[info][webUrl] | String | 3Ds url – please redirect user to the url given for the 3Ds authentication. Only for 3D channel |
Postback Response
Parameter | DataType | Description |
---|---|---|
sid | String | Has the sid where transaction was processed |
status | String | Has the value “OK” for a successful transaction, or “EXC” for a failed transaction. |
parrent_txid | String | Parent transaction id |
txid | String | The transaction ID |
tx_action | String | Tx_action = PAYMENT |
amount | String | The amount processed. |
currency | String | The currency in which the transaction was processed |
comment | String | Response from the gateway |
descriptor | String | Gateway descriptor name |
tid | String | From the original transaction |
error | String | If an error has occurred, then the status value will equal “EXC” and these parameters will be sent as well. Detailed error will be present only if we receive it from the processing gateway. |
error_type | String | “WAIT3D” - Only for 3D channel |
error_msg | String | The error message |
error_sys | String | The system that caused the error (client or server) |
error_info | String | Error information that contains the bank message and bank code |
error_code | String | error_code |
vrfy | String | This is a sha 256 hash so the data can be verified to ensure your post back data was not modified. To generate hash with sha256 the string of sid;rcode;txid;status;amount;currency;txaction |
Redirect Solution
To process a transaction using TxHandler, post a form via HTTP POST to https://office.paywiser.com/secure/txHandler.php. During the transaction, the user will be redirected to make payment and then send back to a user defined location and the result of the transaction can be received as postback to a user defined script/page
Query Parameters
Parameter | Required | Description |
---|---|---|
sid | Yes | Site id (unique identifier for the web site) |
tid | No | Tracking id (must be unique for each transaction) |
postback_url | Yes | The URL of the page used to recieve the TxHandler postback. The response can be read from $_POST array. |
redirect_url | Yes | The URL of the page TxHandler will redirect to after processing. The response can be read as GET parameters. |
hash | Yes | md5 hash of strings concatenation from sid + timestamp + amounttotal + currency + rcode e.g. (in PHP): md5(‘22’.‘1234568995265421’.‘17.00’.‘CNY’.‘222b6c’) REMARK : amounttotal = (item_amount_unit * item_quantity ) + amount_shipping + amount_tax – amount_coupon |
timestamp | Yes | Format : hhmmss |
card_type | Yes | allcard |
firstname | Yes | Frist name of the customer |
lastname | Yes | Last name of the customer |
phone | Yes | 10 to 14 numeric digits |
Yes | ||
mobile | No | Mobile number |
uip | Yes | Customer’s IP Address |
address | Yes | Customer address |
suburb_city | Yes | Customer suburb or city |
state | Yes | Customer state, 2 digit code for US/Canada |
postcode | Yes | Customer postcode/zipcode |
country | Yes | Customer country, ISO 3166 2 digit code |
currency | Yes | Transaction currency[currency in which the gateway is setup], ISO 3 letter code ie : USD |
amount_shipping | Yes | Transaction shipping amount. 0.00 if nothing |
amount_coupon | Yes | Coupon amount. 0.00 if nothing |
amount_tax | Yes | Transaction shipping amount. 0.00 if nothing |
item_quantity[] | Yes | Quantity of each cart item |
item_name[] | Yes | Article names for each cart item |
item_no[] | Yes | Article numbers for each cart item |
item_desc[] | Yes | Descriptions for each cart item |
item_amount_unit[] | Yes | Price per unit for each cart item in two decimal place |
ref1 | No | Merchant reference field |
ref2 | No | Merchant reference field |
ref3 | No | Merchant reference field |
ref4 | No | Merchant reference field |
tx_action | No | Ie : “PREAUTH” |
Instant Response
The transaction is completed when you receive the response with tx_action=SETTLEMENT The response will be sent to both redirect_url and the postback_url given in the post.
Parameter | DataType | Description |
---|---|---|
sid | String | Has the sid where transaction was processed |
status | String | Has the value "OK" for a successful transaction, or "EXC" for a failed transaction. |
parrent_txid | String | Parent transaction id |
txid | String | The transaction ID |
tx_action | String | The state change txaction, e.g. "PREAUTH" or “SETTLEMENT” |
amount | String | The amount processed. |
currency | String | The currency in which the transaction was processed |
comment | String | Response from the gateway |
descriptor | String | Gateway descriptor name |
tid | String | From the original transaction |
ref1 | String | From the original transaction |
ref2 | String | From the original transaction |
ref3 | String | From the original transaction |
ref4 | String | From the original transaction |
vrfy | String | This is a sha 256 hash so the data can be verified to ensure your post back data was not modified. To generate hash with sha256 the string of sid;rcode;txid;status;amount;currency;txaction |
error | String | If an error has occurred, then the status value will equal "EXC" and these parameters will be sent as well. Detailed error will be present only if we receive it from the processing gateway. |
error_type | String | error |
error_sys | String | The system that caused the error (client or server) |
error_msg | String | The error message |
error_info | String | Error information that contains the bank message and bank code |
error_code | String | error_code |
HTTP Request
POST https://office.paywiser.com/secure/txHandler.php