KashierDevelopersKashier Developers

Save the uploaded payment links

curl -X POST "https://test-api.kashier.io/v2/paymentRequest/saveInvoice?correlationId=string&operation=save" \  -H "Content-Type: application/json" \  -d '{}'
[  {    "_id": "68ad897323a08c00122d984e",    "description": "",    "paymentStatus": "unpaid",    "dueDate": null,    "isSuspendedPayment": false,    "currency": "EGP",    "isBulkCreated": true,    "isPaymentLink": true,    "isDeleted": false,    "customer": null,    "labels": [      "Label 1",      "Label 2"    ],    "merchantId": "MID-XXXXX-XXX",    "storeName": "TEST-Demo",    "invoiceReferenceId": "Abc_12345678",    "paymentType": "professional",    "totalAmount": 100,    "creationDate": "2025-08-26 10:16:19.043000+00:00",    "customerName": "John Doe",    "state": "submitted",    "paymentRequestId": "INV-24358575129",    "paymentLinkId": "PL-24358575129",    "merchantInfo": {      "storeName": "TEST-Demo"    },    "referenceId": "Abc_12345678",    "transactions": []  }]

Step 2 of the bulk upload. Persists the payment links that were validated by importPaymentLinks, identified by the correlationId returned there. Separating validation from the write keeps a partially invalid sheet from creating any links.

Authorization

secretKey
Authorization<token>

Merchant secret key used to identify the merchant, obtained from Kashier's dashboard. Pass the raw secret key value in the Authorization header (NOT a "Bearer" token).

In: header

Query Parameters

correlationId*string

The correlationId returned by the import step.

operation*"save"

The operation to perform on the validated data. Send save.

Value in

  • "save"

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

POST
/v2/paymentRequest/saveInvoice