HitPay
PaymentsHitPay is a Singapore-based payment gateway for SMEs. Agents create payment requests and invoices, manage customers, products, and subscription plans, refund charges, send transfers, run card readers and QR codes, and react to payment events as they arrive.
What This Integration Enables
Most payment connectors stop at the gateway. HitPay does not, and that is the argument for wiring it into a flow. Alongside payment requests and refunds it exposes a product catalog, business locations, staff with roles, physical card readers, static counter QR codes, virtual bank accounts, and a cross-border payout stack with beneficiaries and identified remitters. It is a whole small business in an API rather than a checkout with extras.
FlowRunner agents work across all of it: taking payment through hosted links, issuing and chasing invoices, running subscription plans and one-off charges against saved cards, keeping catalog and locations in step with the systems of record, and sending money out to approved beneficiaries. Ordinary payment operations run unattended. The operations that reach a supplier's bank account, or that remove something a customer is paying against, are where FlowRunner's human-in-the-loop gate belongs.
Without FlowRunner
With FlowRunner
Use Case Scenarios
-
One charge feed behind every way the business takes money
Online checkout, an emailed invoice, a card reader at the counter, and a printed QR on the till all produce charges. The agent reads them through a single feed with List Charges, and for anything it needs the real economics of, it reads Get Charge, which carries the gross amount, the amount without fees, the fixed and percentage fees, and the exchange rate when a charge settled in another currency. The reconciled set posts to Xero and the daily take summarizes into Slack by location, so a manager sees which shop took what without exporting anything.
-
Subscriptions and the card that outlives the schedule
A plan is the template and a recurring billing is one customer's subscription to it. The agent creates plans with Create Subscription Plan, starts customers on them with Create Recurring Billing, and knows that updating a plan does not touch subscriptions already running, so a price change for an existing subscriber goes through Update Recurring Billing on their own record. The second mode is more interesting: with card saving on and no plan attached, HitPay stores the card without a schedule, and Charge Saved Payment Method bills it whenever a flow decides to. That is what usage-based and milestone billing needs, and it means the amount can come from Google Sheets rather than from a fixed cycle.
-
Locations and catalog kept honest
A store closes. The agent knows the sequence, because deletion has a precondition: Set Location Active switches it inactive first, and only then will Delete Location succeed, and neither will run against the last remaining location or one set as the main or back order location. Catalog work follows the same care. Update Product replaces the whole variation set rather than merging into it, so the agent reads the product first and sends the complete list back. Products removed from the catalog keep their line items on orders already placed, which is exactly what reconciliation needs.
Human-in-Loop Highlight
Create Transfer asks for exactly one of two amounts, and the choice decides who pays for the transfer. Name the source amount and that figure leaves your balance, with the fee and the exchange movement eaten by the supplier, who receives less than the invoice says. Name the payment amount and the supplier receives the invoice figure, with the fee added to your side. Estimate Transfer reports which way it falls before anything moves, through a fee payer field. And the beneficiary underneath is nearly frozen: Update Beneficiary accepts only a nickname, a remark, and a favorite flag, so a wrong account number cannot be corrected, only deleted and recreated, which re-runs approval and delays the payment again. So the agent runs the estimate, reads the beneficiary's approval status, and stops: "Paying Nguyen Trading 4,200 SGD. On the current estimate they receive 4,178 after fees. Send 4,200 net to them and absorb 22, or send 4,200 gross?" The operations owner answers, and the supplier gets the amount somebody decided on rather than the one a default picked.
Agent Capabilities
85 actionsPayment Requests
5- Create Payment Request Creates a payment request and returns a hosted checkout URL to send the customer to. Leave the payment methods empty to offer every method enabled on the account, and set the amount in major units.
- List Payment Requests Lists payment requests, newest first. The search matches partially against email, identifier, and reference number.
- Get Payment Request Reads one payment request and its current status, which runs pending, completed, failed, and expired. This is the operation to poll after sending a customer to a checkout link.
- Update Payment Request Updates a payment request. The amount and currency are required even when neither is changing, so read the request first and pass its current values through. A completed request cannot be updated.
- Delete Payment Request Deletes a payment request. A completed request cannot be deleted.
Charges and Refunds
6- List Charges Lists charges, which are the actual money movements behind payment requests, invoices, and point of sale takings. Filter by status, date range, amount range, location, staff, customer, payout, or the payment request that produced them.
- Get Charge Reads one charge in full: the gross amount, the amount without fees, the fixed and percentage fees, any refunded amount, the payment method, and the exchange rate when the charge settled in a different currency. This is where the true cost of a transaction lives.
- Export Charges Exports charges using a wider filter set than the ordinary list, including a payment method filter and an option to inline charges and products. Use it for reconciliation extracts.
- Print Receipt Prints a charge or refund receipt on an all-in-one terminal. Singapore merchants with that hardware only.
- Create Refund Refunds part or all of a completed payment, with the amount in major units. The identifier here is the charge rather than the payment request, and the response carries both the refunded amount and the original total.
- Get Refund Reads one refund: how much was returned, the total of the original charge, who issued it, the method, and when it settled. A succeeded status means the money has left the account, which can lag the request.
Customers
5- List Customers Lists the customers registered on the business. A customer record is what links repeat charges, invoices, and saved payment methods to one person or company.
- Create Customer Creates a customer. Both an email and a phone number are required, and the phone country code is given separately rather than prefixed.
- Get Customer Reads one customer: name, email, phone, address, gender, birth date, and remark.
- Update Customer Updates a customer. Only the fields supplied are changed and anything left empty is untouched.
- Delete Customer Deletes a customer. Past charges and invoices survive but lose their link to the customer record.
Invoices
4- List Invoices Lists invoices, optionally filtered by customer email, status, or your own reference. Status runs draft, sent, pending, overdue, and paid.
- Create Invoice Creates an invoice. The payment basis decides the shape of the rest: either an amount with a subtotal, or a set of product line items. Identify the customer by identifier or by passing a customer object carrying at least a name and email.
- Update Invoice Updates an invoice. The invoice date, currency, amount, and payment basis are required on every update, and the products list replaces the whole line item set rather than merging into it.
- Delete Invoice Deletes an invoice. Deleting a paid invoice does not reverse its charge.
Orders
5- List Orders Lists orders, which are the point of sale and online store records that charges attach to. Filter by status, date range, or keywords, and inline the products or the charges rather than making a second call per order.
- Create Order Creates an order. Every field is marked required by the vendor, including the discount reason and the business user identifier, and new orders always start in draft status.
- Get Order Reads one order: its display number, channel, status, customer, location, products, and messages.
- Update Order Updates an order. As with creation, every field is marked required, so read the order first and pass its current values through.
- Delete Order Deletes an order. Charges already taken against it are not reversed.
Subscriptions
11- List Subscription Plans Lists the subscription plans on the business. A plan is the template, holding a name, an amount, and a billing cycle.
- Create Subscription Plan Creates a subscription plan, the reusable template a customer subscribes to. A custom cycle bills every so many units of the chosen frequency, the start method decides whether billing begins at sign up, on a date the customer picks, or on a fixed date, and a charge cap ends the subscription after a set number of billings.
- Get Subscription Plan Reads one subscription plan: its name, description, cycle, currency, and amount.
- Update Subscription Plan Updates a subscription plan. Changes here do not affect subscriptions already running against it, and the name, amount, and cycle are required on every update.
- Delete Subscription Plan Deletes a subscription plan. Subscriptions already running against it are not canceled by this.
- Create Recurring Billing Starts a subscription for one customer and returns a URL where they enter their card details. With a plan identifier the cycle and amount come from the plan; with card saving on and no plan, the card is stored without a schedule so a flow can charge it later.
- List Recurring Billings Lists recurring billings, which are individual customers' subscriptions. The status filter defaults to active, so set it explicitly to see canceled ones.
- Get Recurring Billing Reads one recurring billing. When a payment method has been saved, the response carries the card's brand and last four digits plus a URL the customer can visit to replace it, and the charge counts show how far through the schedule the subscription is.
- Update Recurring Billing Updates one customer's subscription. A cycle change takes effect at the end of the current cycle and an amount change is charged on the next one, and supplying a plan identifier overwrites the cycle and amount from that plan.
- Cancel Recurring Billing Cancels one customer's subscription so no further billings run. The subscription record is returned with its status set to canceled rather than removed, so the history stays readable, and collected charges are not refunded.
- Charge Saved Payment Method Charges a payment method saved through a recurring billing, for whatever amount you name. This is the pay-as-you-go half of the recurring feature: save the card once, then charge it whenever a flow decides to.
Catalog
6- List Products Lists the products in the catalog, with filters for status, category, source, inventory state, location, sales channel, and keywords.
- Create Product Creates a catalog product. Publishing can be switched off to create it as a draft, and the product weight is in grams.
- Get Product Reads one product in full, including its variations, its categories, its stock, and the storefront URL.
- Update Product Updates a product. The name and price are required on every update, and the variations list replaces the whole set.
- Delete Product Deletes a product from the catalog. Orders that already contain it keep their line items.
- List Product Categories Lists the product categories. Categories nest, so each row carries its children and a parent flag. This is a read-only surface, since the vendor publishes no category write routes.
Locations and Staff
8- List Locations Lists the business locations. Cashiers and managers only see the locations they are assigned to, so the same call can return different results depending on whose key is in use.
- Create Location Creates a business location. Every address field is required, and new locations are active as soon as they are created.
- Get Location Reads one business location. It answers not found both when the location does not exist and when it belongs to a different business.
- Update Location Updates a business location's address. Every field is required, so read the location first and pass its current values through. The active flag is changed elsewhere.
- Set Location Active Activates or deactivates a business location. Deactivation is the required first step before deletion, and the vendor refuses to deactivate a location that is the only active one or that is set as the main or back order location.
- Delete Location Permanently deletes a business location. The location must be inactive first, and the vendor refuses to delete the last remaining one.
- List Staff Lists the staff on the business with their roles, which run owner, manager, and cashier. Staff identifiers are what attribute a payment request or an order to the person who took it.
- Get Staff Member Reads one staff member: name, role, email, when they were invited, and which locations they are assigned to.
Balances
3- Get Balances Reads the account balances, one entry per currency. Each currency splits into four wallets and the difference matters: available is what can be paid out now, pending is money taken but not yet settled, reserve is held back against chargebacks, and deposit is a held deposit.
- List Balance Transactions Lists the individual credits and debits behind a balance, with the charge, order, payout, or transfer each relates to. Available to Singapore merchants holding a card balance through the relevant provider.
- Export Balance Breakdown Asks for a balance breakdown export over a date range. The file does not come back in the response: it is emailed to the business admin address, so treat this as firing off a report rather than fetching data.
Payouts
14- Get Beneficiary Schema Asks which fields a beneficiary needs for a given payout corridor and what the valid values are. The required fields differ by country, currency, transfer method, and holder type, and the answer is progressive, so this is also the only published source for valid bank codes.
- Create Beneficiary Creates a beneficiary, the person or business that receives an outbound transfer. Read the schema first, since which fields are required depends entirely on the country and currency, and a new beneficiary may come back pending rather than approved.
- List Beneficiaries Lists the payout beneficiaries, with their bank details, approval status, and who created them.
- Get Beneficiary Reads one beneficiary: bank name and identifiers, account number, holder details, approval status, and creator. Check the status before creating a transfer, since a pending beneficiary cannot receive one.
- Update Beneficiary Updates a beneficiary. Only the nickname, remark, and favorite flag are accepted here: bank details cannot be edited, so changing an account number means deleting and recreating, which re-runs the approval check.
- Delete Beneficiary Deletes a payout beneficiary. Transfers already sent to them are unaffected.
- List Remitters Lists the remitters. A remitter is the identified sender behind an outbound transfer, which payout regulation requires for cross-border payments, and it is a separate record from the business itself.
- Create Remitter Creates a remitter. A company name becomes required for a company entity, a full address is required, and the new remitter is returned pending while it is verified.
- Get Remitter Reads one remitter: identity details, address, verification status, and who created it.
- Delete Remitter Deletes a remitter. Transfers already sent naming it are unaffected.
- Estimate Transfer Estimates what an outbound transfer will cost before you send it: the exchange rate, the currency pair, the fees on each side, and which side of them the amount absorbs. Supply either the source amount or the payment amount, not both.
- Create Transfer Sends money from the balance to a beneficiary. Name the beneficiary and the remitter either by identifier or inline. Supply exactly one of the source amount and the payment amount, since the choice decides who absorbs the fee and the exchange rate movement.
- List Transfers Lists outbound transfers with their beneficiaries, amounts, exchange rates, and status, which runs scheduled, processing, paid, failed, and canceled.
- Get Transfer Reads one outbound transfer: the amounts on both sides, the exchange rate, the fees, the status, and the beneficiary it was sent to. Poll this after sending, since a transfer starts scheduled and reaches paid only once the receiving bank has it.
Terminals, QR Codes, and Virtual Accounts
10- List Static QRs Lists the static QR codes. A static QR is a printed or displayed code a customer scans to pay, reusable and suited to a counter, and each row carries the payload to render.
- Create Static QR Creates a static QR code. Leave the amount empty for an open code the customer types their own sum into, or supply one for a fixed price code. Attach it to a location or a device to attribute the takings.
- Get Static QR Reads one static QR code, including the payload used to render the image, its scheme, its fixed amount if it has one, and the location and device it is attributed to.
- Update Static QR Updates a static QR code's name, amount, currency, or location. The payment method and device cannot be changed after creation.
- Delete Static QR Deletes a static QR code. Any printed copies stop working, so retire the physical code at the same time.
- List Card Readers Lists the card readers registered to the business, the physical terminals that take card payments.
- Cancel Card Reader Cancels the payment a card reader is currently prompting for, clearing the terminal screen. Used when a flow abandons a sale that has already been pushed to a reader.
- List Virtual Accounts Lists the virtual accounts, newest first. A virtual account is a bank account number belonging to your business that customers pay into directly, with the incoming transfer landing as a charge.
- Create Virtual Account Creates a virtual account. It takes no parameters, since the provider and method come from the business configuration, and a business may hold only one per provider method.
- Get Virtual Account Reads one virtual account in detail, including the account number customers pay into and which provider method it belongs to.
Account Settings
8- Get Account Status Reads the account's readiness: whether the bank account is set up, whether owner and business verification have completed, and the setup status of every payment provider. Call this first when a payment method is unexpectedly unavailable.
- Get Notification Settings Reads the notification settings as a flat list of event and channel pairs. An entry present means that notification is on, and an absent pair means it is off.
- Update Notification Settings Switches notifications on or off. Anything left empty is not sent and keeps its current value.
- List Webhooks Lists the webhook subscriptions on the business, with the URL and event types each one listens for. Subscriptions the event trigger created appear here too.
- Create Webhook Creates a webhook subscription. The URL must use HTTPS. Prefer the event trigger for flows and use this when a subscription must point somewhere outside FlowRunner.
- Get Webhook Reads one webhook subscription: its name, URL, and the event types it listens for.
- Update Webhook Updates a webhook subscription. The event types list replaces the stored one rather than adding to it, so send every event you want to keep.
- Delete Webhook Deletes a webhook subscription. Do not delete one the event trigger created, or that trigger goes quiet without reporting an error.
Triggers
1 triggersEvent Triggers
1- On HitPay Event Fires when HitPay reports a charge created or updated, a payout created, an order created or updated, an invoice created or updated, or a transfer moving through its lifecycle. HitPay sends no signature on this channel, so use the delivery to learn that something happened and then read the record back before acting on the values.
Frequently Asked Questions
What can FlowRunner do with HitPay?
FlowRunner agents can run Create Payment Request, List Payment Requests, and Get Payment Request in HitPay, plus 82 more actions.
Does connecting HitPay to FlowRunner require OAuth?
No. HitPay connects to FlowRunner with an API key, no OAuth flow required.
Can HitPay trigger a FlowRunner workflow automatically?
Yes. HitPay supports 1 trigger that can start a FlowRunner workflow automatically.
Start building with HitPay
Free plan, no card required. Connect in minutes.