On This Page
Healthcare Processing Developer Guide
This section describes how to use this guide and where to find further information.
- Audience and Purpose
- This guide is written for application developers who want to use theSimple Order APIto integrate healthcare payment processing into an order management system.Implementing theCybersourcepayment services requires software development skills. You must write code that uses the API request and response fields to integrate the credit card services into your existing order management system.
- Related Documentation
- Visit theCybersourcedocumentation hub to find additional technical documentation.
- Customer Support
- For support information about any service, visit the Support Center:
Recent Revisions to This Document
26.03.01
- Updated these sections:
- Clarification about follow-on transactions. See Introduction to Healthcare Processing
- Added values to the healthcareamountTypefield. See Required Fields for Processing a Healthcare Sale.
26.01.01
This revision contains only editorial changes and no technical updates.
25.09.01
Initial release for
Fiserv RapidConnect
.This revision contains only editorial changes and no technical updates.
25.01
Initial release.
Introduction to Healthcare Processing
Healthcare processing is supported for card-present and card-not-present transactions.
Include healthcare fields in authorization or sale requests to identify purchases that
qualify for healthcare debit cards. This additional data reduces the chance of the card
issuer rejecting the transaction.
Healthcare fields are not required for captures, credits, or other follow-on
transactions.
Card Types
Healthcare transactions are supported on these card types:
- Mastercard
- Visa
Card-Present Transactions
Card-present transactions
are transactions where both the card and the
cardholder are present at the point of sale. In a card-present transaction, merchants
are expected to follow standard card acceptance procedures to ensure that the card and
the user are authenticated. The benefits of card-present transactions include: - Reduced transaction risks
- Lower processing fees
Card-Not-Present Transactions
When a customer provides a card number, but you do not have access to the
physical card, the purchase is known as a
card-not-present transaction
.
This type of transaction typically occurs over the internet or through a call center. To
process card-not-present transactions, use the credit card services described in this
guide.Card-not-present transactions pose an additional level of risk to your
business because you cannot directly verify the customer’s identification as you can
with card-present transactions. Features such as the Address Verification System (AVS)
and Card Verification Numbers (CVNs) are offered in the credit card services. Using
these services can reduce risk by verifying the customer’s information and notifying you
when discrepancies occur.
Healthcare Payment Processing
This section describes how to process healthcare transactions.
Processing a Healthcare Sale
This section provides the information you need to process a healthcare sale
transaction.
A sale combines an authorization and a capture into a single transaction.
Endpoint
Set the
ccAuthService_run
field to
true
, and the ccCaptureService_run
field
to true
.Send the request to
https://ics2ws.ic3.com/commerce/1.x/transactionProcessor
.Required Fields for Processing a Healthcare Sale
- Set this value toHC.
- Set the value totrue.
- Set the value totrue.
- Possible values:
- clinic
- dental
- healthcare: The amount for this type should be greater than or equal to the sum of all amount types included in the request.
- prescription
- vision
Related Information
Simple Order Example: Processing a Healthcare Sale
Request
<requestMessage xmlns="urn:schemas-cybersource-com:transaction-data-1.165"> <merchantID>MD12345</merchantID> <merchantReferenceCode>ABC123</merchantReferenceCode> <billTo> <firstName>Tanya</firstName> <lastName>Lee</lastName> <street1>123 Main Street</street1> <street2>Suite 4</street2> <city>Small Town</city> <state>CA</state> <postalCode>98765</postalCode> <country>US</country> <phoneNumber>9876543210</phoneNumber> <email>tanyalee@example.com</email> </billTo> <purchaseTotals> <currency>USD</currency> <grandTotalAmount>200.00</grandTotalAmount> </purchaseTotals> <card> <accountNumber>4111111111111111</accountNumber> <expirationMonth>12</expirationMonth> <expirationYear>2027</expirationYear> <cvNumber>321</cvNumber> <cardType>001</cardType> </card> <ccAuthService run="true"> <cardProductSubtype>HC</cardProductSubtype> </ccAuthService> <ccCaptureService run="true"/> <healthCare id="0"> <amountType>healthcare</amountType> <amount>100.00</amount> </healthCare> <healthCare id="1"> <amountType>prescription</amountType> <amount>50.00</amount> </healthCare> <healthCare id="2"> <amountType>clinic</amountType> <amount>20.00</amount> </healthCare> <healthCare id="3"> <amountType>dental</amountType> <amount>25.00</amount> </healthCare> <healthCare id="4"> <amountType>vision</amountType> <amount>5.00</amount> </healthCare> </requestMessage>
Response to a Successful Request
<c:replyMessage xmlns:c="urn:schemas-cybersource-com:transaction-data-1.165"> <c:merchantReferenceCode>ABC123</c:merchantReferenceCode> <c:requestID>5997658713476733103095</c:requestID> <c:decision>ACCEPT</c:decision> <c:reasonCode>100</c:reasonCode> <c:purchaseTotals> <c:currency>USD</c:currency> </c:purchaseTotals> <c:ccAuthReply> <c:reasonCode>100</c:reasonCode> <c:amount>100.00</c:amount> <c:authorizationCode>831000</c:authorizationCode> <c:avsCode>Y</c:avsCode> <c:processorResponse>00</c:processorResponse> <c:reconciliationID>025419845739</c:reconciliationID> <c:merchantAdviceCode>01</c:merchantAdviceCode> <c:merchantAdviceCodeRaw>M001</c:merchantAdviceCodeRaw> <c:cavvResponseCode>2</c:cavvResponseCode> <c:cavvResponseCodeRaw>2</c:cavvResponseCodeRaw> <c:paymentNetworkTransactionID>016153570198200</c:paymentNetworkTransactionID> </c:ccAuthReply> <c:receiptNumber>845739</c:receiptNumber> <c:additionalData>ABC</c:additionalData> <c:card> <c:cardType>001</c:cardType> </c:card> <c:acquirerMerchantNumber>1234567890abcde</c:acquirerMerchantNumber> <c:pos> <c:terminalID>12345678</c:terminalID> </c:pos> </c:replyMessage>