Create Payment Link
POST Create Payment Link
URLs
Creation of a payment link is achieved by sending a HTTP POST request to these URLs. The access_token will be the one received in the Authentication Response.
HTTP Headers
| HTTP Header | |||
|---|---|---|---|
| Field Name | State | Data Type | Description |
| Content-Type | Mandatory | String | application/json |
| Authorization | Mandatory | String | Bearer access_token |
Request Details
| Create Payment Link request | |||||
|---|---|---|---|---|---|
| Field Name | State | Data Type | Description | ||
| amount | Mandatory | Float | The amount of the payment, expressed as a decimal e.g. 5.00 for £5 | ||
| currency | Mandatory | String |
| ||
| invoiceId | Optional | String | Merchant’s order number. You can pass your own system ID or use an autogenerated unique number to reconcile the payment in your accounting system. | ||
| terminalId | Mandatory | String | Terminal ID for the Merchant. This should match a terminalId that is assigned to the client-id and client-secret used in the Authentication request. | ||
| expirationDate | Mandatory | String | The expiration date of the payment Link. ISO 8601 format e.g. 2021-11-30T16:00:00Z | ||
| customerName | Mandatory | String | The name of the customer. | ||
| description | Optional | String | A description of what the customer is paying for. Useful to provide reassurance and consumer confidence as well as aid reconciliation and success rates. | ||
Create Payment Link Response
If the request is successful, you will receive a 200 OK response code, and the following response fields.
| Field name | Type | Description |
|---|---|---|
| id | String | Payment link ID, the unique reference for this payment link assigned by the DNA Platform. |
| amount | Float | The amount of the payment, as a decmal. |
| currency | String | Currency e.g. GBP. |
| invoiceId | String | The InvoiceId supplied in the Request, if applicable. |
| terminalId | String | The terminal ID supplied in the request. |
| customerName | String | The Customer name. |
| description | String | The description as supplied in the request. |
| createdDate | String | The date that the Payment Link was created. |
| expirationDate | String | The date that the Payment Link will expire. |
| viewedDate | String | The date that the Payment Link was viewed. Null if not applicable. |
| attemptedDate | String | The date that the Payment Link was attempted. Null if not applicable. |
| paidDate | String | The date that the Payment Link was viewed. Null if not applicable. |
| cancelledDate | String | The date that the Payment Link was viewed. Null if not applicable. |
| status | String | Payment link status. See Statuses for more details. |
| url | String | Full payment link URL |
Example Request and Response
- Request
- Response
POST https://test-api.dnapayments.com/v1/payment-links
HTTP/1.1
Content-Type: application/json
Authorization: Bearer 6945595921271780
User-Agent: PostmanRuntime/7.26.8
Accept: */*
Host: 192.168.0.75:8080
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Content-Length: 232
{
"amount": 1,
"currency": "GBP",
"invoiceId": "PL-1605200674803",
"terminalId": "4511a14f-61a3-4449-a1c1-7a314ee2374c",
"expirationDate": "2020-11-13T17:04:50.493Z",
"customerName": "Dave",
"description": "For a coffee"
}
{
"id": "69lXLdv9w",
"amount": 1,
"currency": "GBP",
"invoiceId": "PL-1605200674803",
"terminalId": "4511a14f-61a3-4449-a1c1-7a314ee2374c",
"customerName": "Dave",
"description": "For a coffee",
"createdDate": "2020-11-12T17:05:31.113206697Z",
"expirationDate": "2020-11-13T17:04:50.493Z",
"viewedDate": null,
"attemptedDate": null,
"paidDate": null,
"cancelledDate": null,
"status": "active",
"url": "https://test-pay.dnapayments.com/checkout/?r=69lXLdv9w"
}