SalePayments
The SalePayments resource allows getting detailed info about Prepayments, Payments and Refunds for particular Sale or for all sales, create new payment or update existing and delete payment. This is how you call it:
/SalePayments – returns paginated list with first 100 payments for tenant.
/SalePayments?page=2&limit=200&taskid=E6E8163F-6911-40e9-B740-90E5A0A3A996 – returns list of 200 payments for sale task with specified ID, started from 201 to 400 payment.
The full range of URIs and HTTP Verbs supported are:
Operation | HTTP Action |
List of paginated Payments for Tenant | GET /SalePayments/ |
Create new Payment | POST /SalePayments |
Modify Payment | PUT /SalePayments |
Delete Payment | DELETE /SalePayments/{id} |
These filters can be used with the GET SalePayments endpoint:
Filter | Description |
limit | Specifies the page size for pagination. Default page size is 100. |
taskid | Only return prepayments, payments and refunds for specified Sale task. |
Filters are used by adding the filter and value to the URI: /SalePayments?page=2&limit=500&taskid= E6E8163F-6911-40e9-B740-90E5A0A3A996
Available Fields for Payment:
Property | Type | Length | Required | Notes |
TaskID | String | 50 | Yes | Identifier for Sale task, which current payment belongs to |
ID | String | 50 |
| Ignored for POST, Required for PUT and DELETE |
Reference | String | 50 |
| Payment reference number |
Amount | Decimal with up to 2 decimal places |
| Yes | Payment amount in customer currency |
DatePaid | Date |
| Yes | Date when payment has been made |
Account | String | 50 | Yes | Account Code of the bank/payment account from Chart of accounts |
CurrencyRate | Decimal with up to 5 decimal places |
| Yes | Currency Conversion rate expressed as number of Base currency units for one Customer currency unit. |
DateCreated | Date |
|
| Date of creation payment record. Ignored for POST, PUT. |
Type | String enum |
| Yes | See valid values below |
Valid values for Type:
Value | Description |
PREPAYMENT | Prepayment |
PAYMENT | Regular payment |
REFUND | Refund payment |
Create new Payment
To create new Payment you need to send POST request to SalePayments endpoint with Payment structure (see above) as payload.
Payment creation details
The following properties of the Payment are read-only for POST request. If any of these properties are included in the request, it will be ignored.
ID
DateCreated
The properties marked “Required” are required for POST request. The request won’t be fulfilled unless these properties are valid.
Sample of payload
POST /SalePayments
{
"TaskID": "E6E8163F-6911-40e9-B740-90E5A0A3A996",
"Reference": "Test payment",
"Amount": 12.45,
"DatePaid": "2015/01/01",
"Account": "620",
"CurrencyRate": 1.12,
"Type": "PREPAYMENT"
}
Return value
In case if no errors occurred you will receive response with newly created Payment structure, otherwise you will receive response with error list, like this:
[{
“ErrorCode”:400,
“Exception”:”Error explanation will be here”
},
{
“ErrorCode”:400,
“Exception”:”Amount can’t be negative”
}]
Update existing Payment
To update Payment you need to send PUT request to SalePayments endpoint with part of Payment structure as payload. You also could provide full structure’s data as payload, but in this case all not read-only fields will be updated.
Payment update details
The following properties of the Payment are read-only for PUT request. You can’t update it.
ID
DateCreated
TaskID
Type
All provided fields of Payment, except read-only fields will be updated.
Samples of update request
PUT /SalePayments/_some_guid_
{ “Amount”: 15.50 }
Return value
In case if no errors occurred you will receive response with updated Payment structure, otherwise you will receive response with error list, like this:
[{
“ErrorCode”:400,
“Exception”:”Error explanation will be here”
},
{
“ErrorCode”:400,
“Exception”:”Error explanation will be here”
}]
Delete existing Payment
To delete Payment you need to send DELETE request to SalePayments endpoint with ID of payment as parameter
Return value
In case if no errors occurred you will receive HTTP Status code 200 – OK.
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip20 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB
- Publish to everyone.4.log-2010416261.zip30 KB