Statements are reports of completed purchase transactions, refunds and payouts. They can be configured in the merchant panel.
Please note: Creating statements that will be sent on URL to retrieve via API requires configuration change on Company level. Therefore, it requires contact with PayU Technical Support in order to enable such configuration. For this purpose please use this contact form.
Available statement file formats are: .csv, .pdf and .abo* (*specific to Czech market).
Statements could be:
Below is a description of all available data fields in the most common and flexible format (.csv) with reference to related fields in REST API and Classic API protocols.
Order and range of the fields in the statements can be chosen freely. When creating a statement, you can set the columns according to your preferences.
Column name | Classic API | REST API | Data type | Description |
---|---|---|---|---|
Date | trans_recv | localReceiptDateTime | yyyy-mm-dd | Transaction completion date. |
Trans ID | trans_id | properties.payment_id | NUM {0,10} | Transaction ID assigned by PayU. |
Amount | amount | amount | NUM {2,14} | Amount entered on the billing (1,00). |
Currency | n/a | currencyCode | STR {3} | Billing currency. |
Type of operation | n/a | n/a | STR {1,4} | Most common values:
|
Account balance | n/a | n/a | NUM {2,14} | Merchant account balance after transaction. |
Change account balance | n/a | n/a | BOOL | TRUE/FALSE. |
Order ID | order_id | extOrderId | STR {1,1024} | Order/purchase id provided by the merchant. |
Description | desc | description | STR {1,2000} | Order description provided by the merchant (or by PayU, if operation type is connected with fees/commission). |
Description2/Account number | desc2 | additionalDescription | STR {0,1024} | Enhanced order description provided by the merchant or bank account number if type of operation is withdrawal (w, wc). |
Payment type | trans_pay_type | payMethod value | STR {1,4} | Payment method chosen by the payer (available values are here). |
Session ID | session_id | extOrderId | STR {1,1024} | Payment identifier given by merchant. |
City | city | buyer.delivery.city | STR {0,50} | City address of the payer. |
Postal code | post_code | buyer.delivery.postalCode | STR {0,25} | Postal code of the payer. |
Phone | phone | buyer.phone | STR {0,100} | Phone number of the payer. |
buyer.email | STR {0,100} | E-mail address of the payer. | ||
Street | street | buyer.delivery.street | STR {0,150} | Street address of the payer. |
Name and surname | first_name, last_name | buyer.firstName, buyer.lastName | STR {0,200} | Name and surname of the payer. |
Operation amount | n/a | n/a | NUM {2,14} | Operation amount of transaction, refund, corrections or payouts (1,00). ICP specific field. |
Operation currency | n/a | n/a | STR {3} | Operation currency. ICP specific field. |
Commission | n/a | n/a | NUM {2,14} | PayU Commission:
|
Commission currency | n/a | n/a | STR {3} | Commission currency. |
Exchange rate | n/a | n/a | NUM {20,10} | Exchange rate for shop with different transcation currency and billing currency. ICP specific field. |
Time | n/a | n/a | {hh-mm-ss} 24 hour format | Time when operation was logged on billing. |
POS ID | pos_id | merchantPosId | STR {1,7} | POS ID on which operation took place. |
POS name | n/a | n/a | STR | Name of Point of Sales determined in PayU Manager Panel. |
Split payment | n/a | n/a | BOOL | Was payment a "split payment". |
Payout public id | n/a | payout.payoutId | STR | Assigned by PayU - can be retrieved over API. |
Payout external id | n/a | payout.extPayoutId | STR | Unique payout ID assigned by Merchant (uniqueness on Shop level required). |
Shop name | n/a | n/a | STR | Defined in PayU Manager Panel. |
Enabling this functionality requires a special configuration on PayU's side, so in order to use it please contact us via the contact form. To get statement notifications and then retrieve statement files via API, the 'Notification mode' option on 'Create statement' screen in the merchant panel must be set to 'Notify url'.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <reportNotifyRequest xmlns="http://www.openpayu.com/public/21/openpayu"> <report> <reportId>4a3534fb-85b5-4f29-9da8-a6d73b34d528</reportId> <reportPlanId>635601897450895020</reportPlanId> <reportUrl>https://secure.payu.com/api/v2_1/reports/4a3534fb-85b5-4f29-9da8-a6d73b34d528</reportUrl> <status>READY</status> </report> </reportNotifyRequest>Where:
After the notification is received, call the reportUrl with HTTP GET. The message header should contain:
Authorization: Basic {string}
where the {string} is the base64 encoded string of posId:Second key (MD5) - mind the colon between POS ID and the MD5 key values!
For authorization you have to use the POS that was chosen in PayU Manager Panel when the statement was generated. If there is only one POS on given Shop it might be used as default POS for statement for this Shop. Authorization attempt with different POS will not work. HTTP 404 error means that you are trying to obtain statement generated for different POS (report is not found for used POS).
ICP is a solution dedicated to merchants operating on international markets who want to receive payouts in a currency other than the transaction currency.
Below you can see main columns containing information about currency conversion for ICP transactions:
Column name | Classic API | REST API | Data type | Description |
---|---|---|---|---|
Operation amount | n/a | n/a | NUM {2,14} | Operation amount of transaction, refund, corrections or payouts (1,00). |
Operation currency | n/a | n/a | STR {3} | Operation currency. |
Exchange rate | n/a | n/a | NUM {20,10} | Exchange rate for shop with different transcation currency and billing currency. |
You can also download sample ICP_transactions_statement.csv (3.54KB). The example shows only selected fields.