# Payment Links Endpoint
## Note
```
Check Payment Transactions Documentation for more information on processing the payment.
This document focuses on the Payment Links Management
```
## ServiceURL and Payload
### Management
#### GenerateOrderID
> This endpoint is to generate the PaymentLinkNumber
##### Endpoint : /api/Transaction/generateorder
##### Method : POST
##### Payload :
```
{
"moduleTag": "string",
"tenantID": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
```
##### Sample :
```
{
"moduleTag": "PL",
"tenantID": "778df26c-1aab-4f5e-93fd-e4cae2c1bc39"
}
```
---
#### CreatePaymentLink
##### Endpoint : /api/PaymentLink/createpaymentlink
##### Payload :
```
{
"tenantID": "uniqueidentifier"
"paymentLinkDetail": "string",
"customerID": "uniqueidentifier",
"payableAmount": 0,
"paymentStatus": "string",
"creator": "uniqueidentifier",
"paymentLinkNumber": "string"
}
```
---
#### UpdatePaymentLink
##### Endpoint : /api/PaymentLink/updatepaymentlink
##### Payload :
```
{
"paymentLinkID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"tenantID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"paymentLinkNumber": "string",
"payableAmount": 0,
"plShortenedLink": "string",
"paymentLinkDetail": "string",
"paymentStatus": "string",
"created": "2024-04-22T14:01:05.349Z",
"creator": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"creatorName": "string",
"updated": "2024-04-22T14:01:05.349Z",
"updater": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"updaterName": "string"
}
```
---
#### DeletePaymentLink
##### Endpoint : /api/PaymentLink/deletepaymentlink
##### Payload : *Note: This will only capture PaymentLinkID and Updater (GUID)*
```
{
"paymentLinkID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"tenantID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"paymentLinkNumber": "string",
"payableAmount": 0,
"plShortenedLink": "string",
"paymentLinkDetail": "string",
"paymentStatus": "string",
"created": "2024-04-22T14:02:29.618Z",
"creator": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"creatorName": "string",
"updated": "2024-04-22T14:02:29.618Z",
"updater": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"updaterName": "string"
}
```
---
#### PaymentLinkList
##### Endpoint : /api/PaymentLink/listpaymentlinks
##### Payload :
`TenantID : uniqueidentifier`
---
#### PaymentLinkDetail
##### Endpoint : /api/PaymentLink/getpaymentlinkdetail
##### Payload :
`PaymentLinkID : uniqueidentifier`
---
### Payment Link Payments Transactions View
#### TransactionViewList
##### Endpoint : /api/Transaction/transactionviewlist/{module}/{tenantId}
##### Payload :
```
module : string
tenantId : uniqueidentifier
```
##### Sample :
```
module : PL
tenantId : 778DF26C-1AAB-4F5E-93FD-E4CAE2C1BC39
```
##### Response:
```
[
{
"id": "762a415a-644b-4826-a760-8db9fe44eff8",
"tenantID": "778df26c-1aab-4f5e-93fd-e4cae2c1bc39",
"transactionID": "8e251da9-eee2-4a65-9157-ab7942795655",
"departmentID": "6fafea6e-ce76-44b0-a1da-d7facad251fd",
"departmentName": "Main",
"transactionNumber": "PL2024520BC397576",
"customerID": "00000000-0000-0000-0000-000000000000",
"customerName": "",
"amountPaid": 10,
"transactionStatus": null,
"transactionDate": "2024-05-29T13:51:00"
}
]
```
---
### Payment Transaction
#### Endpoint : /api/Transaction/createtransactionlogentry
#### Payload :
```
{
"tenantID": "uniqueidentifier",
"transactionNumber": "string",
"transactionModule": "string", -- PAYMENTLINK
"transactionStatus": "string", -- success or whatever is the error
"transactionDetail": "string", -- JSON format / resptext
"creator": "uniqueidentifier",
"moduleEntry": "string" -- JSON Format (to follow)
}
```
#### Sample Payload:
```
{
"tenantID": "778DF26C-1AAB-4F5E-93FD-E4CAE2C1BC39",
"transactionNumber": "12946470889C",
"transactionModule": "PAYMENTLINK",
"transactionStatus": "Approval",
"transactionDetail": "{\"authcode\":\"PPS000\",\"respproc\":\"RPCT\",\"amount\":\"10.00\",\"resptext\":\"Approval\",\"setlstat\":\"Queued for Capture\",\"retref\":\"129464708892\",\"respstat\":\"A\",\"respcode\":\"000\",\"batchid\":\"113\",\"account\":\"9441149619831111\",\"merchid\":\"800000009440\",\"token\":\"9441149619831111\"}",
"creator": "70FD21F1-1880-4E88-ADAF-E8203D3009BA",
"moduleEntry": "{\"TenantID\":\"778DF26C-1AAB-4F5E-93FD-E4CAE2C1BC39\", \"DepartmentID\":\"6FAFEA6E-CE76-44B0-A1DA-D7FACAD251FD\",\"PaymentLinkNumber\":\"PL202458BC395263\",\"isPartial\":\"true\",\"TraansactionStatus\":\"Approval\"}"
}
```
#### Returns :
`ReceiptNumber -> String`
##### Notes:
* TransactionDetail contains the response from *Capture*.
##### ModuleEntry
* *contains the following:*
* TenantID
* DepartmentID
* PaymentLinkNumber (See above: GenerateOrderID)
* IsPartial
* TransactionStatus
---
#### CardPointe Gateway Transactions
##### ACH Transaction: api/cardpointe/ACH/Authorize
##### Payload :
```
{
"departmentID": "uniqueidentifier",
"account": "string",
"bankABA": "string",
"accountType": "string",
"amount": decimal(18,2),
"orderID": "string",
"name": "string",
"ecomind": "string" -- Set to E
}
```
---
##### Credit Authorize: api/cardpointe/Credit/Authorize
##### Payload :
```
{
"departmentID": "uniqueidentifier",
"account": "string",
"expiry": "string",
"cvV2": "string",
"amount": decimal,
"currencyCode": "string",
"orderId": "string",
"name": "string",
"address": "string",
"city": "string",
"region": "string",
"country": "string",
"postalCode": "string",
"capture": "string", -- Set to N
"ecomind": "string" -- E by default
}
```
---
##### Credit Capture: api/cardpointe/Credit/Capture
##### Payload :
```
{
"departmentID": "uniqueidentifier",
"retRef": "string"
"amount": decimal
}
```
---