Ledger Card

Make Payment With New Credit Card

The Anthology Student web app will redirect to the configured custom payment gateway provider Funding URL when the user selects the Payment Method as “Credit Card” and Pay With as “New Credit Card” on this UI.

Ledger 1

Sample URL:

https://[chaseurl]?studentid=59655&userid=2&userpreferenceguid=690746db-d1e3-4509-8cc9-e1e36837&returnurl=http://siswebclienturl/#/students/59655/ledgercard/transactions

The PostAccountTransactionPayment payload will be saved in the core.UIUserPreference table before redirecting for future use.

Once card is added and payment is processed successfully in the payment provider, you need to save the credit card with the details shown below.

http://localhost:90/api/commands/StudentAccounts/StudentCreditCard/SaveNew

Ledger 1 payload

After card is saved, post the transaction using the PostAccountTransactionPayment command API.

(api/commands/StudentAccounts/StudentAccountTransaction/PostAccountTransactionPayment)

The payload for this can be fetched using the userpreferenceguid passed in the query string.

This data is saved in the core.UIUserPreference table. The value column contains the payload.

Example

select [value] from core.UIUserPreference where [Key]='690746db-d1e3-4509-8cc9-e1e36837'

Sample OData to fetch records from UIUserPreference table would be as follows.

http://siswebclienturl/ds/views/UserPreferences/CampusNexus.GetUserPreferenceItemByKey(key='690746db-d1e3-4509-8cc9-e1e36837')

The value for the Key will be passed as query string parameter (userpreferenceguid)/

Once this value is fetched, modify the following property values in the request before posting.

Example:

var payload = value;

payload.StudentCreditCardId = [new credit card id added]

payload.IsNewPaymentSuccessful = true;

payload.IsStudentCreditCardAuthorizeRequired = true;

payload.AuthorizationNumber = [Auth Number from payment provider]

Once payment is posted, delete the record from the core.UIUserPreference table.

The Id for the Delete command can be fetched using the following OData query.

http://siswebclienturl/ds/views/UserPreferences/CampusNexus.GetUserPreferenceItemByKey(key='690746db-d1e3-4509-8cc9-e1e36837')

The following URL can be used to delete rows from the UIUserPreference table. For example, pass the Id (3695) that is returned from above URL to the Delete command and use the DELETE verb.

https://siswebclienturl/ds/views/UserPreferences(3695)

Success URL:

http://siswebclienturl/#/students/59655/ledgercard/transactions?paymentsuccess=true

Additionally, Anthology will pass a few more query string parameters based on business functionality and the same should be returned to us to with the return URL (isFromStudentAccountTransaction, isFromProcessPostPayment, IsSaveAndNew, IsApplyPayment,IsPrint, etc.).

For example, we will redirect to the end point with the following query string parameters.

https://[chaseurl]?studentid=59655&userid=2&userpreferenceguid=690746db-d1e3-4509-8cc9-e1e36837& isFromStudentAccountTransaction=true&isFromProcessPostPayment=false&IsSaveAndNew=false&IsApplyPayment=true&IsPrint=false&returnurl=http://siswebclienturl/#/students/59655/ledgercard/transactions

Anthologyexpects the return URL as: http://siswebclienturl/#/students/59655/ledgercard/transactions?paymentsuccess=true&isFromStudentAccountTransaction=true&isFromProcessPostPayment=false&IsSaveAndNew=false&IsApplyPayment=true&IsPrint=false

These are required in the UI to load the proper controls.

Cancel URL:

http://siswebclienturl/#/students/59655/ledgercard/transactions

Error URL

http://siswebclienturl/#/students/59655/ledgercard/transactions?errormsg=error

Make Payment Using Saved Credit Card/Student Bank Account

On this screen, when the user selects the Payment Method as Credit Card/ACH and selects the existing Credit Card/Student Bank Account, the web client service will call the API endpoint (Post URL) that is configured under Configuration  Student Accounts  Electronic Processors (Credit Card Payment Gateway Providers / ACH Payment Gateway Providers). The Funding Page URL is used for redirection and the Post URL is used for posting the payment to the payment gateway provider.

Anthology Student sends a request to post a payment to the custom payment gateway provider. The following parameters are sent in the request.

Credit Card Request

Note: We might have to update the values in the Anthology Student database if the expected CreditCardType/AccountType in the request does not match the values in the Anthology Student database. For example, if the CreditCardType expected in the request is "Visa", but the value in the saCCType table is "V", we need to update the code in the saCCType table to match the request.

saCCType

UPDATE SaCCType SET Code = 'VISA' WHERE Code ='V'

If the AccountType does not match, the Code in the SyCode table needs to be updated to match the expected values in the request.

SELECT * FROM SyCode WHERE TableName = 'saStudentBankAccount' and ColumnName = 'AccountTypeCode'

selectFromSyCode

UPDATE syCode SET Code = 'Checking' WHERE Code = 'C'

AND TableName = 'saStudentBankAccount' AND ColumnName = 'AccountTypeCode'

In addition, make sure to update the AccountTypeCode column with the same value when the records are inserted into the saStudentBankAccount table.

Anthology expects the following properties in the response when calling the API to post payment.

  • Success – true/false. Indicates whether the transaction is failure or success.

  • AuthCode – [Authorization number returned from payment gateway provider]

  • Token – [Token returned from payment gateway provider]

  • Messages – If failure, then this should contain the error message.

  • Error Type – Provide any other information related to the error, if available, or Empty.

post payment properties

Post Credit Card/ACH Payments for Reference Only

Clients can use the command API (api/commands/StudentAccounts/StudentAccountTransaction/PostAccountTransactionPayment) to post Credit Card/ACH transactions directly to the ledger card without sending them to payment gateway provider to be processed. This can be done by populating the AuthorizationNumber in the payload. So, if the Authorization Number in the payload is blank, the transaction will be sent to the custom payment gateway provider; but if it has a value, the request will not be sent to the custom payment gateway provider and will be posted to the ledger card only.

For example, the following request will be sent to custom payment gateway provider.

Request sent

The following request will not be sent to the custom payment gateway provider because the AuthorizationNumber is available.

Request not sent