Payment API Integration and Card Present API Discussion

API Call Troubleshooting

  • Initial Problem: Transaction ID was initially passed as extraneous data at the bottom of the API call.
  • Suggested Solution 1: Use the external data map format with key-value pairs for the transaction ID.
  • Issue: external data map specification not found in the developer portal, so it couldn't be confirmed.
  • Suggested Solution 2: Pass the transaction ID in the external reference number field in the header.
  • Issue: Using the external reference number resulted in a payment type error (specifically, card type).
  • Action: Send JWT token and updated payload for analysis.
  • Possible Cause: Configuration issue on their (Peter's) end.

Data Being Sent

  • Disney side was passing MasterTran ID at the bottom of the payload.
  • The actual payload will pass MasterTran ID as part of the original payload.

Card Present API Discussion

  • Use Case: Point of sale (POS) systems will use the card present API.
  • Question: How does the API respond to declined or successful payments, and what parameters are returned in the callback URL?
  • Additional Endpoints: list terminals, ping terminal, and make card present payment API.
    • list terminals and ping terminal may be more applicable to the Trellent integration, where a cashier selects from a list of terminals.
    • For Destiny, make card present payment API is most likely useful.

Card Present API Workflow

  • Device attached to the machine is used by a customer service representative at the point of sale.
  • Customer swipes a card or uses NFC to make the payment.
  • The credit card device transmits the information to the payment system.
  • The callback URL informs the status of the transaction.

Callback URL Details

  • The callback URL is where the response or result of the API call is sent.
  • Need information on the structure and parameters of the data received through the callback URL.
  • The callback URL is on the client-side.

Attempt to Make Payment

  • Endpoint: /make/payment
  • Field: auth-token-1 is optional and can be passed as null or an empty string.
  • External Reference Number: MasterTran ID is being used.
  • Reference Number: Can be left as an empty string.
  • Convenience Fee Fields: convenience fee state and convenience fee country will be tied to the payment type in the long term but can be left blank for now to achieve a successful call.
  • Customer Information: Optional fields (phone number) can be passed as null or empty strings.
  • Convenience Country Code: If an error occurs, use "US".

Unicode Error Troubleshooting

  • Issue: Encountering a Unicode error on their (Benoit, Vigil's) end.
  • Action: Troubleshoot the Unicode character issue and provide an update.
  • Missing Payload: Peter is not seeing the payload in the logs, despite receiving the JWT token.