Payments with myPOS .NET SDK

This guide walks you through handling transaction responses and performing key payment operations like purchases, refunds, pre-authorizations, and receipt printing.

Handling Transaction Responses

When a response is received from the myPOS Terminal, an event is raised. To process this, you should subscribe to the event and handle the result accordingly.

1. Define an Event Handler

Code Example

C#
       protected void ProcessResult(ProcessingResult r)
       {
	       // handle the response here
            if (r.TranData != null)
            {
		          // transaction response
            }
 		   }

2. Subscribe to the Event
Attach your handler in the form constructor:

Code Example

C#
   public Form1()
    {
         InitializeComponent();

         terminal.ProcessingFinished += ProcessResult;
    }  

Making a Payment

Once your terminal is initialized and connected, you can process a card payment like this:

Code Example

C#
RequestResult r = terminal.Purchase(Amount, cur, txtReference.Text);
  • Amount: The total to be charged.
  • cur: The currency.
  • txtReference.Text: Optional reference (can be null or empty).

Issuing a Refund

Refund a previous payment to the customer's card:

Code Example

C#
RequestResult r = terminal.Refund(Amount, cur, txtReference.Text);

Pre-Authorization

To lock a specific amount on the customer’s card without capturing it immediately:

Code Example

C#
RequestResult r = t.Preauthorization(Amount, cur, txtReference.Text);

Completing a Pre-Authorization

When you're ready to capture the funds from a pre-auth:

Code Example

C#
RequestResult r = t.CompletePreauth(strPreauthCode, Amount);
  • strPreauthCode: Use the code from the original pre-auth.
  • Amount: Must be equal to or less than the pre-authorized amount.

Canceling a Pre-Authorization

To release the locked amount from a pre-authorization:

Code Example

C#
RequestResult r = t.CancelPreauth(strPreauthCode);

Use the original pre-auth code as the parameter.

Reprinting the Last Receipt

Need to reprint the last transaction slip?

Code Example

C#
RequestResult r = terminal.ReprintReceipt();

Printing a Custom Receipt

You can print a custom-formatted receipt using special delimiters:

  • \ - Escape symbol

  • \n - New line

  • \L - Logo

  • \l - Left-align

  • \c - Center-align

  • \r - Right-align

  • \W - Double width

  • \w - Normal width

  • \H - Double height

  • \h - Normal height

Example

Code Example

C#
terminal.PrintExternal(txtPrintData.Text);

Just pass your custom-formatted string from txtPrintData.