--- title: "Using Approval Send POST with Helcim Payment Pages" slug: "using-approval-send-post" description: "Learn how to use Approval Send POST to automatically update your systems after a transaction on your Helcim Payment Page." updated: 2025-04-21T23:09:15Z published: 2025-04-21T23:09:15Z canonical: "learn.helcim.com/using-approval-send-post" --- > ## Documentation Index > Fetch the complete documentation index at: https://learn.helcim.com/llms.txt > Use this file to discover all available pages before exploring further. # Using Approval Send POST with Payment Pages [Helcim's Payment Pages](https://learn.helcim.com/docs/what-are-helcim-payment-pages) are a quick way to start collecting payments from your customers online. If you want your Helcim Payment Page to talk to your other business tools, you can use a setting called Approval Send POST. This automatically sends transaction details to your system after every payment, saving you time and reducing errors. --- **In this article** - [What is Approval Send POST?](/v1/docs/using-approval-send-post#what-is-approval-send-post) - [Why use Approval Send POST?](/v1/docs/using-approval-send-post#why-use-approval-send-post) - [Setting up Approval Send POST](/v1/docs/using-approval-send-post#setting-up-approval-send-post) - [Understanding the POST Response](/v1/docs/using-approval-send-post#understanding-the-post-response) - [Next steps](/v1/docs/using-approval-send-post#next-steps) - [FAQ](/v1/docs/using-approval-send-post#faq) --- ## What is Approval Send POST? --- Approval Send POST is like an automatic notification from your Helcim Payment Page to your computer system. | ![](https://cdn.document360.io/4e721329-1a9d-4ef0-8d2f-497e0c1f185a/Images/Documentation/chat.png) | Whenever a customer pays on your Payment Page, Helcim sends a message with the payment details to a specific web address you provide. This message is called a **POST response**, and it contains information about the transaction, like the amount paid and the customer's details. | | --- | --- | ## Why use Approval Send POST? --- Using Approval Send POST can help you run your business more smoothly. It can automatically update your sales records, so you don't have to enter the data yourself. It can also trigger other actions, like sending a confirmation email to the customer or preparing an order for shipping. This can save you time, reduce mistakes, and improve your customer service. ## Setting up Approval Send POST --- You can set up Approval Send POST for an existing Payment Page by selecting it from the list in the **Payment Pages** section. 1. In the **Basic Settings**, go to the **More Settings** dropdown. 2. Under **Page Forwarding**, switch the **Approval Auto Forward** toggle to the "on" position. 3. Enter the web address (URL) of your server in the **Approval URL** field. This is where Helcim will send the payment information. - **Info box:** Make sure you have a valid URL. **Approval Auto Forward** and a valid URL are required to use Approval Send POST. 4. In the **Developer Settings**, turn the **Approval Send POST** toggle on. 5. Click **Save** to finish. ## Understanding the POST response --- When Helcim sends the Approval Send POST message, it includes important details about the payment, like the amount, date, and customer information. The information included in the POST response will be slightly different depending on the type of payment: - **Credit card transactions:** The message includes details like the card type, number, and expiry date. - **Bank verify transactions:** If the customer paid with their bank account on a ‘Customer Registration’ page, the message will include the account type and the last four digits of the account number. - **Bank withdraw transactions:** If the customer paid with their bank account on an ‘Invoice Payment’, ‘Editable Amount’, ‘Fixed Amount’, or ‘Product purchase’ page, this message includes transaction details like the date, time, bank account type, and last four digits of their bank account number. --- ### Tables of POST response values Click on an option below to reveal a table of potential values that can be returned in the POST response for each type of payment. **Credit card payments** | **Field** | **Type** | **Description** | | --- | --- | --- | | response | number | Indicates if the server response is successful (1) or not (0). The Helcim server always returns "1". | | responseMessage | string | Message from the Helcim server indicating the transaction result. For approvals, this is "APPROVAL". | | transactionId | number | Unique ID for the transaction. | | type | string | Type of transaction: purchase, preauth, or verify. | | date | string | Date the transaction was completed. | | time | string | Time the transaction was completed. | | avsResponse | string | Result of address verification. | | cvvResponse | string | Result of card verification value check. | | approvalCode | string | 2-6 digit code indicating approval or decline. | | cardHolderName | string | Name of the cardholder. | | cardNumber | string | First 6 and last 4 digits of the card number. | | expiryDate | string | Card's expiry date (MMYY). | | cardType | string | Type of card (e.g., Visa, Mastercard). | | cardToken | string | Unique, randomly generated card identifier. | **Bank verify transactions** | **Field** | **Type** | **Description** | | --- | --- | --- | | response | number | Indicates if the server response is successful (1) or not (0). The Helcim server always returns "1". | | responseMessage | string | Message from the Helcim server indicating the transaction result. For approvals, this is "APPROVED". | | notice | string | Notice from the Helcim server. For bank verify transactions, this is "ACH VERIFY TRANSACTION". | | accountType | string | Type of bank account (e.g., Checking, Savings). | | accountCorporate | string | Type of account ownership (e.g., Personal, Corporate). | | bankAccountToken | string | Unique, randomly generated bank account identifier. | | bankAccountNumber | string | Last four digits of the bank account number. | **Bank withdraw transactions** | **Field** | **Type** | **Description** | | --- | --- | --- | | response | number | Indicates if the server response is successful (1) or not (0). The Helcim server always returns "1". | | responseMessage | string | Message from the Helcim server indicating the transaction result. For approvals, this is "APPROVED". | | notice | string | Notice from the Helcim server. For bank withdraw transactions, this is "ACH WITHDRAW TRANSACTION". | | transactionEFTId | number | Unique ID for the EFT transaction. | | type | string | Type of EFT transaction. For Payment Pages, this is always "WITHDRAWAL". | | date | string | Date the transaction was completed. | | time | string | Time the transaction was completed. | | approvalCode | string | 2-6 digit code indicating approval or decline. | | accountType | string | Type of bank account (e.g., Checking, Savings). | | accountCorporate | string | Type of account ownership (e.g., Personal, Corporate). | | bankAccountToken | string | Unique, randomly generated bank account identifier. | | bankAccountNumber | string | Last four digits of the bank account number. | --- ### For developers This section is for developers who need to set up the server to receive and process the Approval Send POST messages. **Introduction to the examples below** The examples below show how a developer might set up a system to receive the payment information from Helcim. | ![](https://cdn.document360.io/4e721329-1a9d-4ef0-8d2f-497e0c1f185a/Images/Documentation/chat.png) | In this example, the system is built using [Node.js](http://node.js) and saves the information into a simple file. However, you have a lot of flexibility here. Your system could store this data in a database, use it to trigger other actions in your business (like updating inventory), or even send information to other tools. | | --- | --- | You can also control what happens after the payment is processed, such as redirecting the customer to a specific page on your website. **Example ‘Approval Send’ URL** This is an example of the web address where Helcim will send the POST response. You'll need to replace this with the actual URL of your server. ```plaintext https://api.client.com/write-to-csv ``` **Example code (Node.js)** This code is a basic example of how to set up a server using Node.js to receive the POST response and write it to a CSV file. You may need to adapt this code to fit your specific server setup and programming language. ```javascript const express = require('express'); const fs = require('fs'); const app = express(); app.use(express.json()); app.post('/write-to-csv', (req, res) => { const data = req.body; const csv = `${data.response},${data.responseMessage},${data.notice},${data.accountType},${data.accountCorporate},${data.bankAccountToken},${data.bankAccountNumber}\n`; fs.appendFile('output.csv', csv, () => { res.send('Data written to file'); }); }); app.listen(3000, () => { console.log('Server running on port 3000'); }); ``` **Example request (JSON)** This is an example of the data that Helcim will send in the POST response for a bank verify transaction. The specific data will vary depending on the type of transaction, which you can see in the Table of POST response values section above. ```json { "response": 200, "responseMessage": "APPROVED", "notice": "ACH VERIFY TRANSACTION", "accountType": "Checking", "accountCorporate": "ABC Corp", "bankAccountToken": "sample-unique-token", "bankAccountNumber": "0300" } ``` **Example output (output.csv)** This is an example of how the data from the POST response might be written to a CSV file. ```plaintext 200,APPROVED,ACH VERIFY TRANSACTION,Checking,ABC Corp,sample-unique-token,0300 ``` --- ## Next steps --- Now that you’re familiar with how Approval Send POST works, here are some other places to go to learn more: - Check out our article on [Creating a Payment Page](https://www.google.com/search?q=https://support.helcim.com/article/creating-a-payment-page-from-template/) for a refresher on how to get started with Helcim Payment Pages. - You can also [contact Helcim support](https://www.helcim.com/contact/) if you need help setting up Approval Send POST. --- ### FAQ **Do I need a web developer to use Approval Send POST?** Yes, you'll need some technical knowledge or a web developer to set up your server to receive and process the POST response. **What if I don't receive the POST response?** Make sure your Approval URL is correct and your server is working properly. You can also [contact Helcim support](https://www.helcim.com/contact/) for assistance. **Can I customize the information included in the POST response?** No, the POST response includes a set of standard information, as outlined in the tables above.