transaction.refund
transaction.refund
transaction.refund
Description
Refund transaction for passed tran_id and pp_type. If optional amount parameter is sent then:
- if less than the one used in original transaction then PV2 will try to issue partial refund.
- If passed amount is equal to the one used in original transaction, full refund will be issued
- If passed amount is bigger than the one used in original transaction or partial refund is already sent and total sum of refunds is bigger than amount used in original transaction - an error will be issued on PP level.
Input Parameters
Name | Type | Required | Description |
---|---|---|---|
tran_id | Int | Yes | PV2 Transaction ID (i.e. obtained with transaction.list) |
pp_type | string | Yes | PP Type (NB|RG|PO|...) |
amount | float | No | Amount to be refunded |
revoke | tinyint | No | Works for GP only |
card_number | string | No (RG only) | Credit Card Number |
card_expire | tinyint | No (RG only) | Card expire date MMYY |
Returned result
Name | Type | Description |
---|---|---|
success | boolean | True on success false on failure |
error_msg | string | Error msg in case of error |
tran_id | int | Refund transaction ID |
Usage Example
<?php $curl = new \Dinke\CurlHttpClient; //setup payment url and timeout $payment_url = 'https://dev-payment.datingvip.com/api.json'; $timeout = 30; $curl->setCredentials('some-token', 'some-pass'); $post_data = array( 'cmd' => 'transaction.refund', 'data' => array( 'tran_id' => 1980, 'pp_type' => 'RG', 'amount' => 39.99 ), ); $response = $curl->sendPostData($payment_url, $post_data, null, $timeout); if($response === false) { //handle errors } //decode json to get array $response = json_decode($response, true); var_dump($response); ?>
Excepted output after running this script should be:
array (size=1) 'result' => array (size=8) 'code' => int 700 'status' => string 'Action completed succesfully' (length=28) 'command' => string 'transaction.refund' (length=18) 'result' => array (size=2) 'success' => boolean true 'error_msg' => string '' (length=0) 'tran_id' => int 12345 'request' => array (size=4) 'cmd' => string 'transaction.refund' (length=18) 'data' => array (size=3) 'tran_id' => string '1980' (length=4) 'pp_type' => string 'RG' (length=2) 'amount' => string '39.99' (length=5) 'token' => string 'some-token' (length=26) 'pass' => string 'some-pass' (length=32) 'ts' => int 1429563857 'origin_ip' => string '93.87.220.184' (length=13) 'errors' => null
Referenced Files
None
Subscribers
None
- Last Author
- aplawecki
- Last Edited
- Jun 11 2020, 02:53