Payments: Terminals

Modified on Wed, 12 Apr 2023 at 01:30 AM

TABLE OF CONTENTS

  • Activating a Terminal

  • Listing your Terminals

  • Deleting a Terminal

  • Authorizing a transaction

  • Capturing a transaction

Acme Payments allows any terminal with proper injected payloads to be utilized with our platform.  


Currently supported terminals include:
Ingenico Lane, Moby, Tetra, and Tetra All-In-One models.  



Required Headers

Because these calls will be made from webpages you must include the x-acme-pub-api-key registered with ACME.  You need your Merchant ID (MID).  The domain (Origin: https://domain.extension) serving the webpage must also be associated with that key.  This domain was registered with ACME as part of onboarding.

 

Activating a Terminal

When you power up your EMV device for the first time it will display an activation code. You can set up the device by passing that activation code along with a terminalId and description into the APIs

curl --location --request POST 'https://sandx-api.acmepayments.net/v1/payment/<MID>/cors/cp/terminals' \
--header 'x-acme-pub-api-key: x-acme-pub-api-key' \
--header 'Origin: https://domain.extension' \
--header 'Content-Type: application/json' \
--data-raw '{
    "terminalId": "Location8Terminal12",
    "description": "Side Entrance by the old vending machines",
    "activationCode": "<ACTIVATION CODE OFF DEVICE>"
}'

If you do not see an activation code, you can hard reset your device by holding down FN and CLEAR together for 5 seconds.

Listing devices

list all of the terminals for the current seller.

curl 'https://sandx-api.acmepayments.net/v1/payment/<MID>/cors/cp/terminals' \
--header 'x-acme-pub-api-key: xyz' \
--header 'Origin: <https://domain.extension' \
--header 'Content-Type: application/json'


Deleting a device

To delete a terminal pass the terminal id in the url

curl --location --request DELETE 'https://sandx-api.acmepayments.net/v1/payment/<MID>/cors/cp/terminals/myAwesomTerminal' \
--header 'x-acme-pub-api-key: xyz' \
--header 'Origin: https://domain.extension' \
--header 'Content-Type: application/json'

Authorizing

To have the device prompt the customer to insert their card and put a hold on their bank account.

curl --location --request POST 'https://sandx-api.acmepayments.net/v1/payment/<MID>/cors/cp/authorizations' \
--header 'x-acme-pub-api-key: xyz' \
--header 'Origin: https://domain.extension' \
--header 'Content-Type: application/json' \
--data-raw '{
    "terminalId": "Location8Terminal12",
    "amount": "10.00"
}'

Capturing

To transfer the authorized funds to your account.

curl --location --request POST 'https://sandx-api.acmepayments.net/v1/payment/<MID>/cors/cp/capture/{transactionId}' \
--header 'x-acme-pub-api-key: xyz' \
--header 'Origin: https://domain.extension' \
--header 'Content-Type: application/json' \
--data-raw '{}'

 

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select atleast one of the reasons

Feedback sent

We appreciate your effort and will try to fix the article