Merchantware 4.6

Note: Documentation for Merchantware 4.5 is available here

Service Information

Use the Credit web service for credit card and debit card processing, managing transactions, and accepting recurring payments.

Service Endpoint

https://ps1.merchantware.net/Merchantware/ws/RetailTransaction/v46/Credit.asmx

SOAP Usage and Notices

All examples in this document use SOAP 1.2. Using SOAP 1.2 requires a Content-Type header of “application/soap+xml; charset=utf-8”. Please do not include the SOAPAction header previously used for SOAP 1.1 transactions.

Methods

AdjustTip

The AdjustTip web methods adds or alters the tip amount to a prior transaction.

Arguments

Name Type Description
Credentials MerchantCredentials A MerchantCredentials object used to authenticate against Merchantware.
Request TipRequest A TipRequest object containing the transactional data used to perform a tip adjustment.

Response

A TransactionResponse46 object is returned.

Notes

The AdjustTip method changes the tip amount to a prior sale in the current batch. It is not possible to adjust the tip of a transaction settled in a previous batch.

Example SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <AdjustTip xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <Request>
                <Token>1971219347</Token>
                <Amount>4.50</Amount>
            </Request>
        </AdjustTip>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <AdjustTipResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <AdjustTipResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971219433</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 12:56:46 PM</TransactionDate>
                <Amount />
                <RemainingCardBalance />
                <CardNumber />
                <Cardholder />
                <CardType>0</CardType>
                <FsaCard />
                <ReaderEntryMode>0</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <DebitTraceNumber />
            </AdjustTipResult>
        </AdjustTipResponse>
    </soap12:Body>
</soap12:Envelope>

AttachSignature

The AttachSignature web method appends a signature record to an existing transaction. This signature record is applied for a string containing vector drawing instructions.
 

Arguments

Name Type Description
Credentials MerchantCredentials A MerchantCredentials object used to authenticate against Merchantware.
Request SignatureRequest A SignatureRequest object containing the data used to attach a signature to an existing transaction.

Response

A SignatureResponse46 object is returned.

Example SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <AttachSignature xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <Request>
                <Token>1971219433</Token>                                      
                <VectorImageData>90,27^90,27^91,27^91,26^92,26^92,27^92,27^92,28^92,29^93,31^93,32^93,33^94,35^94,36^94,37^95,37^95,38^95,38^95,38^95,37^97,35^98,34^99,32^103,29^107,24^110,22^112,20^117,16^122,12^124,11^127,9^127,9^0,65535^~</VectorImageData>
            </Request>
        </AttachSignature>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <AttachSignatureResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <AttachSignatureResult>
                <UploadStatus>ACCEPTED</UploadStatus>
                <Token>1971219433</Token>
                <TransactionDate>1/23/2020 1:11:00 PM</TransactionDate>
                <ErrorMessage />
            </AttachSignatureResult>
        </AttachSignatureResponse>
    </soap12:Body>
</soap12:Envelope>

Authorize

The Authorize web method applies an authorization to a credit card which can be captured at a later time.

Arguments

Name Type Description
Credentials MerchantCredentials A MerchantCredentials object used to authenticate against Merchantware.
PaymentData PaymentData A PaymentData object containing the payment details of the card used to process the transaction.
Request AuthorizationRequest An AuthorizationRequest object containing the transactional data used to create the authorization.

Response

A TransactionResponse46 object is returned.

Allowed Payment Data Sources

Reader, Keyed, Vault, Wallet

Notes

To finish committing a transaction, the token obtained from this method should be used with the Capture web method.

Example Keyed SOAP Request
Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Authorize xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>KEYED</Source>
                <CardNumber>4012000033330026</CardNumber>
                <ExpirationDate>0820</ExpirationDate>
                <CardHolder>John Doe</CardHolder>
                <AvsStreetAddress>1 Federal Street</AvsStreetAddress>
                <AvsZipCode>02110</AvsZipCode>
                <CardVerificationValue>123</CardVerificationValue>
                <CardPresence>Present</CardPresence>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
                <StoreCardInVault>False</StoreCardInVault>
            </Request>
        </Authorize>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <AuthorizeResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <AuthorizeResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971223817</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 1:15:24 PM</TransactionDate>
                <Amount>5.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>1</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <CardBin />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin />
            </AuthorizeResult>
        </AuthorizeResponse>
    </soap12:Body>
</soap12:Envelope>

Example Encrypted Keyed SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Authorize xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>KEYED</Source>
                <EncryptedKeyedData>02A00085000000000519B9F8AF611ED7FC811A01E8AE7B8BE6B17A2D6B6BF51C6FD49D8BCDEB5B5288FC155CC95CDEBD8461F6A388BE10872FA55A60D62C0432303130053330333037629949144C002620002C787403</EncryptedKeyedData>
                <CardHolder>John Doe</CardHolder>
                <AvsStreetAddress>1 Federal Street</AvsStreetAddress>
                <AvsZipCode>02110</AvsZipCode>
                <CardVerificationValue>123</CardVerificationValue>
                <CardPresence>Present</CardPresence>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
                <StoreCardInVault>False</StoreCardInVault>
            </Request>
        </Authorize>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <AuthorizeResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <AuthorizeResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971224766</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 1:19:09 PM</TransactionDate>
                <Amount>5.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>1</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <CardBin />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin />
            </AuthorizeResult>
        </AuthorizeResponse>
    </soap12:Body>
</soap12:Envelope>

Example Swiped Reader SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Authorize xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>READER</Source>
                <TrackData>%B4012000033330026^TEST CARD/GENIUS^201210054321000000000000000 150 A?;4012000033330026=20121011000012345678?</TrackData>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
                <StoreCardInVault>False</StoreCardInVault>
            </Request>
        </Authorize>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <AuthorizeResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <AuthorizeResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971225928</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 1:24:04 PM</TransactionDate>
                <Amount>5.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>TEST CARD/GENIUS</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>2</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <CardBin />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
            </AuthorizeResult>
        </AuthorizeResponse>
    </soap12:Body>
</soap12:Envelope>

Example Vault SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Authorize xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>VAULT</Source>
                <VaultToken>100000101RT2T38BUABU</VaultToken>
            </PaymentData>
            <Request>
                <Amount>15.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
                <StoredCardReason>Unscheduledmit</StoredCardReason>
            </Request>
        </Authorize>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <AuthorizeResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <AuthorizeResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971226912</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 1:28:10 PM</TransactionDate>
                <Amount>15.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>8</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin />
            </AuthorizeResult>
        </AuthorizeResponse>
    </soap12:Body>
</soap12:Envelope>

Example Wallet SOAP Request

Note: Amount is not included in the AuthorizeRequest object  for Apple Pay.  It is part of the EncryptedPaymentData.

Sample Encrypted Request Packet (raw)

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Authorize xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>Wallet</Source>
                <WalletId>100000101RT2T38BUABU</WalletId>
                <EncryptedPaymentData>ew0KCSJ2ZXJzaW9uIjogIkVDX3YxIiwNCgkiZ</EncryptedPaymentData>
            </PaymentData>
            <Request>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
            </Request>
        </Authorize>
    </soap12:Body>
</soap12:Envelope>

Sample Decrypted Request Packet (raw)

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Authorize xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>Wallet</Source>
                <WalletId>ApplePay</WalletId>
                <CardNumber>4012000033330026</CardNumber>
                <ExpirationDate>0820</ExpirationDate>
                <CardHolder>John Doe</CardHolder>
                <PaymentCryptogram>9AwEHBG0wawIBAQQgCPSuFr4iSIaQprj</PaymentCryptogram>
                <PaymentCryptogramType>3DS</PaymentCryptogramType>
                <AvsStreetAddress>1 Federal Street</AvsStreetAddress>
                <AvsZipCode>02110</AvsZipCode>
                <CardVerificationValue>123</CardVerificationValue>
            </PaymentData>
            <Request>
                <Amount>150.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
            </Request>
        </Authorize>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <AuthorizeResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <AuthorizeResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971321455</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 4:12:02 PM</TransactionDate>
                <Amount>150.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>7</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin />
            </AuthorizeResult>
        </AuthorizeResponse>
    </soap12:Body>
</soap12:Envelope>

Example Level 3 Transaction SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Authorize xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>KEYED</Source>
                <CardNumber>4012000033330026</CardNumber>
                <ExpirationDate>0820</ExpirationDate>
                <CardHolder>John Doe</CardHolder>
                <AvsStreetAddress>1 Federal Street</AvsStreetAddress>
                <AvsZipCode>02110</AvsZipCode>
                <CardVerificationValue>123</CardVerificationValue>
                <CardPresence>Present</CardPresence>
            </PaymentData>
            <Request>
                <Amount>25.00</Amount>
                <InvoiceNumber>1</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>1000</MerchantTransactionId>
                <CardAcceptorTerminalId>3</CardAcceptorTerminalId>>
                <EnablePartialAuthorization>True</EnablePartialAuthorization>
                <TaxAmount>0.00</TaxAmount>
                <PurchaseOrderNumber>17801</PurchaseOrderNumber>
                <CustomerCode>20</CustomerCode>
                <Invoice>
                    <TaxIndicator>Provided</TaxIndicator>
                    <ProductDescription>Misc Goods</ProductDescription>
                    <DiscountAmount>1.00</DiscountAmount>
                    <ShippingAmount>6.00</ShippingAmount>
                    <DutyAmount>0.00</DutyAmount>
                    <DestinationPostalCode>06033</DestinationPostalCode>
                    <DestinationCountryCode>840</DestinationCountryCode>
                    <ShipFromPostalCode>06030</ShipFromPostalCode>
                    <LineItems>
                        <LineItem>
                            <CommodityCode>030</CommodityCode>
                            <Description>Misc Good</Description>
                            <Upc>012345678901</Upc>
                            <Quantity>2.5</Quantity>
                            <UnitOfMeasure>kg</UnitOfMeasure>
                            <UnitCost>10.00</UnitCost>
                            <DiscountAmount>0.00</DiscountAmount>
                            <TotalAmount>25.00</TotalAmount>
                            <TaxAmount>0.00</TaxAmount>
                            <ExtendedAmount>25.00</ExtendedAmount>
                            <DebitOrCreditIndicator>Credit</DebitOrCreditIndicator>
                            <NetOrGrossIndicator>Gross</NetOrGrossIndicator>
                        </LineItem>
                    </LineItems>
                </Invoice>
                <CustomerEmailAddress>na@email.com</CustomerEmailAddress>
                <StoreCardInVault>False</StoreCardInVault>
            </Request>
        </Authorize>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <AuthorizeResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <AuthorizeResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971235551</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 1:58:33 PM</TransactionDate>
                <Amount>25.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>1</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin />
                <Invoice>
                    <TaxIndicator>Provided</TaxIndicator>
                    <ProductDescription>Misc Goods</ProductDescription>
                    <DiscountAmount>1.00</DiscountAmount>
                    <ShippingAmount>6.00</ShippingAmount>
                    <DutyAmount>0.00</DutyAmount>
                    <DestinationPostalCode>06033</DestinationPostalCode>
                    <DestinationCountryCode>840</DestinationCountryCode>
                    <ShipFromPostalCode>06030</ShipFromPostalCode>
                    <LineItems>
                        <LineItem>
                            <CommodityCode>030</CommodityCode>
                            <Description>Misc Good</Description>
                            <Upc>012345678901</Upc>
                            <Quantity>2.5</Quantity>
                            <UnitOfMeasure>kg</UnitOfMeasure>
                            <UnitCost>10.00</UnitCost>
                            <DiscountAmount>0.00</DiscountAmount>
                            <TotalAmount>25.00</TotalAmount>
                            <TaxAmount>0.00</TaxAmount>
                            <ExtendedAmount>25.00</ExtendedAmount>
                            <DebitOrCreditIndicator>Credit</DebitOrCreditIndicator>
                            <NetOrGrossIndicator>Gross</NetOrGrossIndicator>
                        </LineItem>
                    </LineItems>
                </Invoice>
                <CustomerEmailAddress>na@email.com</CustomerEmailAddress>
            </AuthorizeResult>
        </AuthorizeResponse>
    </soap12:Body>
</soap12:Envelope>

Example Initial Storing Card Details Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Authorize xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>READER</Source>
                <TrackData>%B4012000033330026^TEST CARD/GENIUS^201210054321000000000000000 150 A?;4012000033330026=20121011000012345678?</TrackData>
            </PaymentData>
            <Request>
                <Amount>15.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
                <StoreCardInVault>True</StoreCardInVault>
                <StoredCardReason>Installment</StoredCardReason>
            </Request>
        </Authorize>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <AuthorizeResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <AuthorizeResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971238639</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 2:07:14 PM</TransactionDate>
                <Amount>15.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>TEST CARD/GENIUS</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>2</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin />
                <VaultBoardingResponse>
                    <VaultToken>100000101RT3C3AZNTGX</VaultToken>
                    <ErrorCode />
                    <ErrorMessage />
                </VaultBoardingResponse>
            </AuthorizeResult>
        </AuthorizeResponse>
    </soap12:Body>
</soap12:Envelope>

Capture

The Capture web method completes a transaction for a prior authorization.

Arguments

Name Type Description
Credentials MerchantCredentials A MerchantCredentials object used to authenticate against Merchantware.
Request CaptureRequest A CaptureRequest object containing the transactional data used capture a previous authorization and place it into the batch.

Response

A TransactionResponse46 object is returned.

Notes

This method captures a previous authorization and adds it to the current batch for settlement.
If you wish to cancel a transaction created with the Capture method, you may use the Void method. However, you cannot use the Void method to cancel a transaction after it has been batched.

Example SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Capture xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <Request>
                <Token>1971238639</Token>
                <Amount>15.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
            </Request>
        </Capture>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <CaptureResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <CaptureResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971245925</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 2:25:30 PM</TransactionDate>
                <Amount>15.00</Amount>
                <RemainingCardBalance />
                <CardNumber />
                <Cardholder />
                <CardType>0</CardType>
                <FsaCard />
                <ReaderEntryMode>3</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
            </CaptureResult>
        </CaptureResponse>
    </soap12:Body>
</soap12:Envelope>

FindBoardedCard

The FindBoardedCard method retrieves the payment data stored inside the Merchantware Vault.

Arguments

Name Type Description
Credentials MerchantCredentials A MerchantCredentials object used to authenticate against Merchantware.
Request VaultTokenRequest A VaultTokenRequest object used to retrieve information about a boarded card from the vault.

Response

A VaultTokenResponse46 object is returned.

Notes

Any returned sensitive information (such as credit card numbers) will be masked or truncated.
Any value passed into the vault token field is not case sensitive.

Example SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <FindBoardedCard xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <Request>
                <VaultToken>100000101RT3C3AZNTGX</VaultToken>
            </Request>
        </FindBoardedCard>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <FindBoardedCardResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <FindBoardedCardResult>
                <CardNumber>0026</CardNumber>
                <ExpirationDate>1220</ExpirationDate>
                <Cardholder>TEST CARD/GENIUS</Cardholder>
                <CardType>4</CardType>
                <AvsStreetAddress />
                <AvsZipCode />
                <ErrorCode />
                <ErrorMessage />
                <CardBin />
                <Rfmiq>10000003WM</Rfmiq>
            </FindBoardedCardResult>
        </FindBoardedCardResponse>
    </soap12:Body>
</soap12:Envelope>

UpdateBoardedCard

The UpdateBoardedCard method changes the expiration date and address for an existing payment method stored inside the Merchantware Vault.

Arguments

Name Type Description
Credentials MerchantCredentials A MerchantCredentials object used to authenticate against Merchantware.
Request UpdateBoardedCardRequest An UpdateBoardedCardRequest object used to update a token from the vault.

Response

A VaultBoardingResponse46 object is returned.

Notes

Any returned sensitive information (such as credit card numbers) will be masked or truncated.
Any value passed into the vault token field is not case sensitive.
Include only the parameters you need to update, for example, to update a card’s expiry date, send only the vault token and expiration date parameters. Do not send empty strings in the request.

Example SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <UpdateBoardedCard xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <Request>
                <VaultToken>100000101RT3C3AZNTGX</VaultToken>
                <ExpirationDate>0925</ExpirationDate>
                <AvsStreetAddress>1 Federal Street</AvsStreetAddress>
                <AvsZipCode>02110</AvsZipCode>
            </Request>
        </UpdateBoardedCard>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <UpdateBoardedCardResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <UpdateBoardedCardResult>
                <VaultToken>100000101RT3C3AZNTGX</VaultToken>
                <ErrorCode />
                <ErrorMessage />
            </UpdateBoardedCardResult>
        </UpdateBoardedCardResponse>
    </soap12:Body>
</soap12:Envelope>

ForceCapture

The ForceCapture web method forces a charge to be issued upon a customer’s credit card.

Arguments

Name Type Description
Credentials MerchantCredentials A MerchantCredentials object used to authenticate against Merchantware.
PaymentData PaymentData A PaymentData object containing the payment details of the card used to process the transaction.
Request ForceCaptureRequest A ForceCaptureRequest object containing the transactional data used capture a voice authorization and place it into the batch.

Response

A TransactionResponse46 object is returned.

Allowed Payment Data Sources

Keyed

Notes

This method should only be used as a backup to charge a credit card if you are unable to obtain an approval through a normal sale. The authorization code is required for this method, and will typically be received by a voice authorization over the phone.

Forced transactions ALWAYS DOWNGRADE on rates and fees at the processor. If you make this the default charge method in your application, your merchants will end up paying significantly higher transaction rates and fees.

Ideally, you would only use this method as a last resort, or as a follow-up to a REFERRAL notice on a prior sale attempt.

Example Keyed SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <ForceCapture xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>KEYED</Source>
                <CardNumber>4012000033330026</CardNumber>
                <ExpirationDate>0820</ExpirationDate>
                <CardHolder>John Doe</CardHolder>
                <CardPresence>Present</CardPresence>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <AuthorizationCode>ABC123</AuthorizationCode>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
            </Request>
        </ForceCapture>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <ForceCaptureResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <ForceCaptureResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971253719</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 2:41:13 PM</TransactionDate>
                <Amount>5.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>1</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin />
            </ForceCaptureResult>
        </ForceCaptureResponse>
    </soap12:Body>
</soap12:Envelope>

Example Encrypted Keyed SOAP Request

Sample Encrypted Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <ForceCapture xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>KEYED</Source>
                <EncryptedKeyedData>02A00085000000000519B9F8AF611ED7FC811A01E8AE7B8BE6B17A2D6B6BF51C6FD49D8BCDEB5B5288FC155CC95CDEBD8461F6A388BE10872FA55A60D62C0432303130053330333037629949144C002620002C787403</EncryptedKeyedData>
                <CardPresence>Present</CardPresence>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <AuthorizationCode>ABC123</AuthorizationCode>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
            </Request>
        </ForceCapture>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <ForceCaptureResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <ForceCaptureResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971259284</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 2:52:07 PM</TransactionDate>
                <Amount>5.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder />
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>1</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
​                <CardBin />
            </ForceCaptureResult>
        </ForceCaptureResponse>
    </soap12:Body>
</soap12:Envelope>

Refund

The Refund method issues a credit card refund to a customer.

Arguments

Name Type Description
Credentials MerchantCredentials A MerchantCredentials object used to authenticate against Merchantware.
PaymentData PaymentData A PaymentData object containing the payment details of the card used to process the transaction.
Request RefundRequest A RefundRequest object containing the transactional data used to perform a refund.

Response

A TransactionResponse46 object is returned.

Allowed Payment Data Sources

Reader, Keyed, Vault, PreviousTransaction

Notes

Credit refunds can be partial and are specified by the amount parameter.
The lookup can only be performed using the token from a previous transaction.

This method issues a refund to a credit or debit card from a prior sale transaction. While it is possible to set a custom amount, this method is limited to the original amount of the sale transaction by default. It is possible to enable an override on a per account basis so that refunds for higher than the original amount can be made. No on-hand credit card information is required to use this method.

For example, with a prior sale for $10.00, you may reuse the token from that sale transaction to issue refunds up until the original total has been met, whether all at once ($10.00) or over several transactions ($5.00, $3.00, $2.00). Unless the account has had refunds for higher than the original amount enabled.

This method is useful in cases where you need to return money to a credit card and you have already batched the original sale. Using this method allows you to better support your customers without having to store card data.

If the original sale has not been batched yet, it is better to void the sale to return money or undo a transaction, as this will prevent activity at the processor and avoid incurring transaction fees.
 

Example Keyed SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Refund xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>KEYED</Source>
                <CardNumber>4012000033330026</CardNumber>
                <ExpirationDate>0820</ExpirationDate>
                <CardHolder>John Doe</CardHolder>
                <CardPresence>Present</CardPresence>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <InvoiceNumber>REF123</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
            </Request>
        </Refund>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <RefundResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <RefundResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971262333</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 2:57:36 PM</TransactionDate>
                <Amount>5.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard>False</FsaCard>
                <ReaderEntryMode>1</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin />
            </RefundResult>
        </RefundResponse>
    </soap12:Body>
</soap12:Envelope>

Example Encrypted Keyed SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Refund xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>KEYED</Source>
                <EncryptedKeyedData>02A00085000000000519B9F8AF611ED7FC811A01E8AE7B8BE6B17A2D6B6BF51C6FD49D8BCDEB5B5288FC155CC95CDEBD8461F6A388BE10872FA55A60D62C0432303130053330333037629949144C002620002C787403</EncryptedKeyedData>
                <CardHolder>John Doe</CardHolder>
                <CardPresence>Present</CardPresence>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <InvoiceNumber>REF123</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
            </Request>
        </Refund>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <RefundResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <RefundResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971264603</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 3:01:33 PM</TransactionDate>
                <Amount>5.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard>False</FsaCard>
                <ReaderEntryMode>1</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
​                <CardBin />
            </RefundResult>
        </RefundResponse>
    </soap12:Body>
</soap12:Envelope>

Example Previous Transaction SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Refund xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>PREVIOUSTRANSACTION</Source>
                <Token>1971226796</Token>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <InvoiceNumber>REF123</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
            </Request>
        </Refund>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <RefundResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <RefundResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971266443</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 3:04:18 PM</TransactionDate>
                <Amount>5.00</Amount>
                <RemainingCardBalance />
                <CardNumber />
                <Cardholder />
                <CardType>4</CardType>
                <FsaCard>False</FsaCard>
                <ReaderEntryMode>1</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
            </RefundResult>
        </RefundResponse>
    </soap12:Body>
</soap12:Envelope>

Example Swiped Reader SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Refund xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>READER</Source>
                <TrackData>%B4012000033330026^TEST CARD/GENIUS^201210054321000000000000000 150 A?;4012000033330026=20121011000012345678?</TrackData>
                <CardHolder>John Doe</CardHolder>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <InvoiceNumber>REF123</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
            </Request>
        </Refund>
    </soap12:Body>
</soap12:Envelope>

Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Refund xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>READER</Source>
                <TrackData>%B4012000033330026^TEST CARD/GENIUS^201210054321000000000000000 150 A?;4012000033330026=20121011000012345678?</TrackData>
                <CardHolder>John Doe</CardHolder>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <InvoiceNumber>REF123</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
            </Request>
        </Refund>
    </soap12:Body>
</soap12:Envelope>

Example Vault SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Refund xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>VAULT</Source>
                <VaultToken>100000101RT3C3AZNTGX</VaultToken>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <InvoiceNumber>REF123</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
                <StoredCardReason>Unscheduledcit</StoredCardReason>
            </Request>
        </Refund>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <RefundResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <RefundResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971281119</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 3:25:51 PM</TransactionDate>
                <Amount>5.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>TEST CARD/GENIUS</Cardholder>
                <CardType>4</CardType>
                <FsaCard>False</FsaCard>
                <ReaderEntryMode>8</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
​                <CardBin />
            </RefundResult>
        </RefundResponse>
    </soap12:Body>
</soap12:Envelope>

Sale

The Sale method charges a credit or debit card.

Arguments

Name Type Description
Credentials MerchantCredentials A MerchantCredentials object used to authenticate against Merchantware.
PaymentData PaymentData A PaymentData object containing the payment details of the card used to process the transaction.
Request SaleRequest A SaleRequest object containing the transactional data used to perform a sale.

Response

A TransactionResponse46 object is returned.

Allowed Payment Data Sources

Reader, Keyed, Vault, Wallet

Example Keyed SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Sale xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>KEYED</Source>
                <CardNumber>4012000033330026</CardNumber>
                <ExpirationDate>0820</ExpirationDate>
                <CardHolder>John Doe</CardHolder>
                <AvsStreetAddress>1 Federal Street</AvsStreetAddress>
                <AvsZipCode>02110</AvsZipCode>
                <CardVerificationValue>123</CardVerificationValue>
                <CardPresence>Present</CardPresence>
            </PaymentData>
            <Request>
                <Amount>20.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
                <StoreCardInVault>False</StoreCardInVault>
            </Request>
        </Sale>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <SaleResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <SaleResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971287926</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 3:34:42 PM</TransactionDate>
                <Amount>20.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>1</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin />
            </SaleResult>
        </SaleResponse>
    </soap12:Body>
</soap12:Envelope>

Example Encrypted Keyed SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Sale xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>KEYED</Source>
                <EncryptedKeyedData>02A00085000000000519B9F8AF611ED7FC811A01E8AE7B8BE6B17A2D6B6BF51C6FD49D8BCDEB5B5288FC155CC95CDEBD8461F6A388BE10872FA55A60D62C0432303130053330333037629949144C002620002C787403</EncryptedKeyedData>
                <CardHolder>John Doe</CardHolder>
                <AvsStreetAddress>1 Federal Street</AvsStreetAddress>
                <AvsZipCode>02110</AvsZipCode>
                <CardVerificationValue>123</CardVerificationValue>
                <CardPresence>Present</CardPresence>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
                <StoreCardInVault>False</StoreCardInVault>
            </Request>
        </Sale>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <SaleResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <SaleResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971292279</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 3:40:08 PM</TransactionDate>
                <Amount>5.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>1</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin /> 
            </SaleResult>
        </SaleResponse>
    </soap12:Body>
</soap12:Envelope>

Example Swiped Reader SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Sale xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>READER</Source>
                <TrackData>%B4012000033330026^TEST CARD/GENIUS^201210054321000000000000000 150 A?;4012000033330026=20121011000012345678?</TrackData>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
                <StoreCardInVault>False</StoreCardInVault>
            </Request>
        </Sale>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <SaleResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <SaleResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971294634</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 3:42:53 PM</TransactionDate>
                <Amount>5.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>TEST CARD/GENIUS</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>2</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin /> 
            </SaleResult>
        </SaleResponse>
    </soap12:Body>
</soap12:Envelope>

Example Vault SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Sale xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>VAULT</Source>
                <VaultToken>100000101RT3C3AZNTGX</VaultToken>
            </PaymentData>
            <Request>
                <Amount>5.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
                <StoredCardReason>Unscheduledmit</StoredCardReason>
            </Request>
        </Sale>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <SaleResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <SaleResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971296981</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 3:45:33 PM</TransactionDate>
                <Amount>5.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>TEST CARD/GENIUS</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>8</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin /> 
            </SaleResult>
        </SaleResponse>
    </soap12:Body>
</soap12:Envelope>

Example Healthcare SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Sale xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>KEYED</Source>
                <CardNumber>4012000033330026</CardNumber>
                <ExpirationDate>0820</ExpirationDate>
                <CardHolder>John Doe</CardHolder>
                <AvsStreetAddress>1 Federal Street</AvsStreetAddress>
                <AvsZipCode>02110</AvsZipCode>
                <CardVerificationValue>123</CardVerificationValue>
                <CardPresence>Present</CardPresence>
            </PaymentData>
            <Request>
                <Amount>100.00</Amount>
                <HealthCareAmountDetails>
                    <CopayAmount>0.00</CopayAmount>
                    <ClinicalAmount>100.00</ClinicalAmount>
                    <DentalAmount>0.00</DentalAmount>
                    <HealthCareTotalAmount>100.00</HealthCareTotalAmount>
                    <PrescriptionAmount>0.00</PrescriptionAmount>
                    <VisionAmount>0.00</VisionAmount>
                </HealthCareAmountDetails>                
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
                <StoreCardInVault>False</StoreCardInVault>
            </Request>
        </Sale>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <SaleResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <SaleResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971300475</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 3:49:43 PM</TransactionDate>
                <Amount>100.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard>False</FsaCard>
                <ReaderEntryMode>1</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <DebitTraceNumber />
                <CardBin /> 
            </SaleResult>
        </SaleResponse>
    </soap12:Body>
</soap12:Envelope>

Example Wallet SOAP Request

Note: Amount is not included in the SaleRequest object for Apple Pay.  It is part of the EncryptedPaymentData.
Sample Encrypted Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Sale xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>Wallet</Source>
                <WalletId>ApplePay</WalletId>
                <EncryptedPaymentData>ew0KCSJ2ZXJzaW9uIjogIkVDX3YxIiwNCgkiZ</EncryptedPaymentData>
                <AvsStreetAddress>1 Federal Street</AvsStreetAddress>
                <AvsZipCode>02110</AvsZipCode>
            </PaymentData>
            <Request>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
            </Request>
        </Sale>
    </soap12:Body>
</soap12:Envelope>
Sample Decrypted Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Sale xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>Wallet</Source>
                <WalletId>ApplePay</WalletId>
                <CardNumber>4012000033330026</CardNumber>
                <ExpirationDate>0820</ExpirationDate>
                <CardHolder>John Doe</CardHolder>
                <PaymentCryptogram>9AwEHBG0wawIBAQQgCPSuFr4iSIaQprj</PaymentCryptogram>
                <PaymentCryptogramType>3DS</PaymentCryptogramType>
                <AvsStreetAddress>1 Federal Street</AvsStreetAddress>
                <AvsZipCode>02110</AvsZipCode>
            </PaymentData>
            <Request>
                <Amount>150.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
            </Request>
        </Sale>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet 
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <SaleResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <SaleResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971306762</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 3:56:58 PM</TransactionDate>
                <Amount>150.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>7</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin /> 
            </SaleResult>
        </SaleResponse>
    </soap12:Body>
</soap12:Envelope>

Example Level 3 transaction SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Sale xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>KEYED</Source>
                <CardNumber>4012000033330026</CardNumber>
                <ExpirationDate>0820</ExpirationDate>
                <CardHolder>John Doe</CardHolder>
                <AvsStreetAddress>1 Federal Street</AvsStreetAddress>
                <AvsZipCode>02110</AvsZipCode>
                <CardVerificationValue>123</CardVerificationValue>
                <CardPresence>Present</CardPresence>
            </PaymentData>
            <Request>
                <Amount>25.00</Amount>
                <InvoiceNumber>1</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>1000</MerchantTransactionId>
                <CardAcceptorTerminalId>3</CardAcceptorTerminalId>>
                <EnablePartialAuthorization>True</EnablePartialAuthorization>
                <TaxAmount>0.00</TaxAmount>
                <PurchaseOrderNumber>17801</PurchaseOrderNumber>
                <CustomerCode>20</CustomerCode>
                <Invoice>
                    <TaxIndicator>Provided</TaxIndicator>
                    <ProductDescription>Misc Goods</ProductDescription>
                    <DiscountAmount>1.00</DiscountAmount>
                    <ShippingAmount>6.00</ShippingAmount>
                    <DutyAmount>0.00</DutyAmount>
                    <DestinationPostalCode>06033</DestinationPostalCode>
                    <DestinationCountryCode>840</DestinationCountryCode>
                    <ShipFromPostalCode>06030</ShipFromPostalCode>
                    <LineItems>
                        <LineItem>
                            <CommodityCode>030</CommodityCode>
                            <Description>Misc Good</Description>
                            <Upc>012345678901</Upc>
                            <Quantity>2.5</Quantity>
                            <UnitOfMeasure>kg</UnitOfMeasure>
                            <UnitCost>10.00</UnitCost>
                            <DiscountAmount>0.00</DiscountAmount>
                            <TotalAmount>25.00</TotalAmount>
                            <TaxAmount>0.00</TaxAmount>
                            <ExtendedAmount>25.00</ExtendedAmount>
                            <DebitOrCreditIndicator>Credit</DebitOrCreditIndicator>
                            <NetOrGrossIndicator>Gross</NetOrGrossIndicator>
                        </LineItem>
                    </LineItems>
                </Invoice>
                <CustomerEmailAddress>na@email.com</CustomerEmailAddress>
            </Request>
        </Sale>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <SaleResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <SaleResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971316939</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 4:07:41 PM</TransactionDate>
                <Amount>25.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>1</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin /> 
                <Invoice>
                    <TaxIndicator>Provided</TaxIndicator>
                    <ProductDescription>Misc Goods</ProductDescription>
                    <DiscountAmount>1.00</DiscountAmount>
                    <ShippingAmount>6.00</ShippingAmount>
                    <DutyAmount>0.00</DutyAmount>
                    <DestinationPostalCode>06033</DestinationPostalCode>
                    <DestinationCountryCode>840</DestinationCountryCode>
                    <ShipFromPostalCode>06030</ShipFromPostalCode>
                    <LineItems>
                        <LineItem>
                            <CommodityCode>030</CommodityCode>
                            <Description>Misc Good</Description>
                            <Upc>012345678901</Upc>
                            <Quantity>2.5</Quantity>
                            <UnitOfMeasure>kg</UnitOfMeasure>
                            <UnitCost>10.00</UnitCost>
                            <DiscountAmount>0.00</DiscountAmount>
                            <TotalAmount>25.00</TotalAmount>
                            <TaxAmount>0.00</TaxAmount>
                            <ExtendedAmount>25.00</ExtendedAmount>
                            <DebitOrCreditIndicator>Credit</DebitOrCreditIndicator>
                            <NetOrGrossIndicator>Gross</NetOrGrossIndicator>
                        </LineItem>
                    </LineItems>
                </Invoice>
                <CustomerEmailAddress>na@email.com</CustomerEmailAddress>
            </SaleResult>
        </SaleResponse>
    </soap12:Body>
</soap12:Envelope>

Example Initial Store Card SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Sale xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>KEYED</Source>
                <CardNumber>4012000033330026</CardNumber>
                <ExpirationDate>1220</ExpirationDate>
                <CardHolder>John Doe</CardHolder>
                <AvsStreetAddress>1 Federal Street</AvsStreetAddress>
                <AvsZipCode>02110</AvsZipCode>
                <CardVerificationValue>123</CardVerificationValue>
                <CardPresence>Present</CardPresence>
            </PaymentData>
            <Request>
                <Amount>1.00</Amount>
                <CashbackAmount>0.00</CashbackAmount>
                <SurchargeAmount>0.00</SurchargeAmount>
                <TaxAmount>0.00</TaxAmount>
                <InvoiceNumber>1556</InvoiceNumber>
                <PurchaseOrderNumber>17801</PurchaseOrderNumber>
                <CustomerCode>20</CustomerCode>
                <RegisterNumber>35</RegisterNumber>
                <MerchantTransactionId>166901</MerchantTransactionId>
                <CardAcceptorTerminalId>3</CardAcceptorTerminalId>
                <EnablePartialAuthorization>False</EnablePartialAuthorization>
                <ForceDuplicate>True</ForceDuplicate>
                <StoredCardReason>RECURRING</StoredCardReason>
                <StoreCardInVault>TRUE</StoreCardInVault>
            </Request>
        </Sale>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <SaleResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <SaleResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1972689513</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/24/2020 5:19:18 PM</TransactionDate>
                <Amount>1.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>John Doe</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>1</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <DebitTraceNumber />
                <CardBin /> 
                <VaultBoardingResponse>
                    <VaultToken>100000101S2XUEUAIMTA</VaultToken>
                    <ErrorCode />
                    <ErrorMessage />
                </VaultBoardingResponse>
            </SaleResult>
        </SaleResponse>
    </soap12:Body>
</soap12:Envelope>

Example Subsequent Recurring SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Sale xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>VAULT</Source>
                <VaultToken>100000101S2XUEUAIMTA</VaultToken>
            </PaymentData>
            <Request>
                <Amount>10.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
                <StoredCardReason>Recurring</StoredCardReason>
            </Request>
        </Sale>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <SaleResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <SaleResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971328388</Token>
                <AuthorizationCode>NC1000</AuthorizationCode>
                <TransactionDate>1/23/2020 4:18:27 PM</TransactionDate>
                <Amount>10.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>TEST CARD/GENIUS</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>8</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin /> 
            </SaleResult>
        </SaleResponse>
    </soap12:Body>
</soap12:Envelope>

Example Subsequent Installment SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Sale xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <PaymentData>
                <Source>VAULT</Source>
                <VaultToken>100000101RT3C3AZNTGX</VaultToken>
            </PaymentData>
            <Request>
                <Amount>50.00</Amount>
                <InvoiceNumber>CREDIT12</InvoiceNumber>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
                <StoredCardReason>Installment</StoredCardReason>
                <BillingSequenceNumber>2</BillingSequenceNumber>
                <BillingSequenceCount>10</BillingSequenceCount>
            </Request>
        </Sale>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <SaleResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <SaleResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971325811</Token>
                <AuthorizationCode>OK9999</AuthorizationCode>
                <TransactionDate>1/23/2020 4:16:09 PM</TransactionDate>
                <Amount>50.00</Amount>
                <RemainingCardBalance />
                <CardNumber>************0026</CardNumber>
                <Cardholder>TEST CARD/GENIUS</Cardholder>
                <CardType>4</CardType>
                <FsaCard />
                <ReaderEntryMode>8</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <Rfmiq>10000003WM</Rfmiq>
                <DebitTraceNumber />
                <CardBin /> 
            </SaleResult>
        </SaleResponse>
    </soap12:Body>
</soap12:Envelope>

SettleBatch

The SettleBatch method batches out a merchant’s outstanding transactions for settlement.

Arguments

Name Type Description
Credentials MerchantCredentials A MerchantCredentials object used to authenticate against Merchantware.

Response

A BatchResponse46 object is returned.

Notes

Please note that it is possible for a batch to return a negative settlement amount.
Avoid batching more than once a day unless the merchant's account or business rules require it. Almost all merchant accounts incur a fee when an account batch is settled, and merchant accounts typically require only one batch per 24 hours.

Conversely, some merchant accounts may already be set up to automatically batch. However, you should not explicitly avoid writing code to batch out an account. Most merchant accounts are not setup this way, and there may be times when your merchant needs to settle before a typical end-of-day.
 

Example SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <SettleBatch xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
        </SettleBatch>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <SettleBatchResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <SettleBatchResult>
                <BatchStatus>SUCCESS</BatchStatus>
                <AuthorizationCode>OK1234</AuthorizationCode>
                <BatchAmount>361.05</BatchAmount>
                <TransactionCount>20</TransactionCount>
                <TransactionDate>1/23/2020 4:21:10 PM</TransactionDate>
                <ErrorMessage />
                <ExtraData />
            </SettleBatchResult>
        </SettleBatchResponse>
    </soap12:Body>
</soap12:Envelope>

UnboardCard

The UnboardCard method removes existing payment information from the Merchantware Vault.

Arguments

Name Type Description
Credentials MerchantCredentials A MerchantCredentials object used to authenticate against Merchantware.
Request VaultTokenRequest A VaultTokenRequest object used to remove a token from the vault.

Response

A VaultBoardingResponse46 object is returned.

Notes

Any value passed into the vault token field is not case sensitive.
Any returned sensitive information (such as credit card numbers) will be masked or truncated.

Example SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <UnboardCard xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <Request>
                <VaultToken>100000101RT3C3AZNTGX</VaultToken>
            </Request>
        </UnboardCard>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <UnboardCardResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <UnboardCardResult>
                <VaultToken>100000101RT3C3AZNTGX</VaultToken>
                <ErrorCode />
                <ErrorMessage />
            </UnboardCardResult>
        </UnboardCardResponse>
    </soap12:Body>
</soap12:Envelope>

Void

The Void method voids a prior unsettled transaction.

Arguments

Name Type Description
Credentials MerchantCredentials A MerchantCredentials object used to authenticate against Merchantware.
Request VoidRequest A VoidRequest object containing the transactional data used to void a previous transaction.

Response

A TransactionResponse46 object is returned.

Notes

This removes a transaction from the current batch. It is not possible to void a transaction settled in a previous batch.
For more guidance, see our Best Practices guide on Void Failure Handling.

Example SOAP Request

Sample Request Packet (raw)
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <Void xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <Credentials>
                <MerchantName>Zero Inc</MerchantName>
                <MerchantSiteId>00000000</MerchantSiteId>
                <MerchantKey>00000-00000-00000-00000-00000</MerchantKey>
            </Credentials>
            <Request>
                <Token>1971226912</Token>
                <RegisterNumber>1</RegisterNumber>
                <MerchantTransactionId>TRX123</MerchantTransactionId>
                <CardAcceptorTerminalId>32</CardAcceptorTerminalId>
            </Request>
        </Void>
    </soap12:Body>
</soap12:Envelope>
Sample Return Packet
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <VoidResponse xmlns="http://schemas.merchantwarehouse.com/merchantware/v46/">
            <VoidResult>
                <ApprovalStatus>APPROVED</ApprovalStatus>
                <Token>1971338624</Token>
                <AuthorizationCode>VOID</AuthorizationCode>
                <TransactionDate>1/23/2020 4:28:05 PM</TransactionDate>
                <Amount />
                <RemainingCardBalance />
                <CardNumber />
                <Cardholder />
                <CardType>0</CardType>
                <FsaCard />
                <ReaderEntryMode>0</ReaderEntryMode>
                <AvsResponse />
                <CvResponse />
                <ErrorMessage />
                <ExtraData />
                <DebitTraceNumber />
            </VoidResult>
        </VoidResponse>
    </soap12:Body>
</soap12:Envelope>

Data Structures

MerchantCredentials

Name Type Size Description
MerchantName String 1-160 The name of the business or organization owning the Merchantware account.
MerchantSiteId String 8-160 The site identifier of a location or storefront owned by the Merchantware account owner.
MerchantKey String 1-160 The software key or password for the site accessing a Merchantware account.

PaymentData

Name Type Size Source Description
Source String (Payment Data Source) 1-19 ALL The method used to supply the payment data.

READER or KEYED or PREVIOUSTRANSACTION or VAULT or WALLET
TrackData String 1-500 READER The complete track data (all tracks) for the payment card returned from a card reader. 
PinBlock String 0-100 READER The PIN block received from a PIN pad.
PinKsn String 0-100 READER The key serial number (KSN) associated with the PIN block received from a PIN pad.
ReaderEntryMode String 0-14 READER The reader entry mode for this transaction. It can be either MAGNETICSTRIPE or PROXIMITY.
CardNumber String 13-19 KEYED, WALLET The PAN or card number of the payment card. For wallets this is the device issued PAN.
ExpirationDate String 4 KEYED, WALLET The expiration date of the payment card in MMYY format. For wallets this is the device issued expiration date.
Cardholder String 0-100 KEYED, WALLET The cardholder name as it appears on the payment card.
AvsStreetAddress String 0-100 KEYED, WALLET, VAULT The street address associated with the payment card for use in address verification system (AVS) checks.
AvsZipCode String 0-9 KEYED, WALLET, VAULT The ZIP Code associated with the payment card for use in address verification system (AVS) checks.
CardVerificationValue String 0-100 KEYED, VAULT The security code (CVD, CVV, CVC, etc.) of the payment card for use in card verification (CV) checks.
EncryptedKeyedData String 1-540 KEYED The output generated by an encrypted keypad.
Token String 1-100 PREVIOUSTRANSACTION The token identifier returned from a previous transaction.
VaultToken String 1-40 VAULT The token used to identify the payment method within the Merchantware Vault.
WalletId String 8-9 WALLET The Identifier of the Wallet. Currently only supports the values: 
  • ApplePay 
  • GooglePay
PaymentCryptogram String 0-64 WALLET The base-64 encoded payment cryptogram accompanying an e-Commerce wallet transaction.
PaymentCryptogramType String 3 WALLET The type of data represented in the payment cryptogram field.
EncryptedPaymentData String 0-10000 WALLET

The encypted payment data generated for the wallet transaction, base-64 encoded (UTF-8 charset).

The data to be encoded differs per wallet brand. For:

EciIndicator String 0-2 WALLET The Electronic Commerce Indicator (ECI). A field that may accompany a wallet transaction. If present, this value must be passed. Otherwise, the transaction fails. Possible values include:
  • 05 - This value indicates that the cardholder was verified by the issuer with cardholder’s password or identify information. When the cardholder was successfully authenticated by 3D Secure payment, this value will appear.
  • 07 - This value will be returned when users tried to make a payment transaction over a secure channel but the 3D authentication was unsuccessful. For instance, when the payment authentication was not performed or the issuer indicates that authentication could not be performed.
CardPresence String (enum) 0-10 KEYED

Indicates if the card is present with the merchant at the time of the transaction. Send only if the value for Source is KEYED. Possible values for CardPresence are:

  • PRESENT
  • NOTPRESENT

Notes

For all PaymentData, a “Source” type must be defined.  Depending on the source, please follow the information below.

Reader Payment Source

Data from Track 2 is required for the TrackData parameter. However, you may send in the raw swipe, as long as it has not been altered since it was read from the payment card. This method will separate Track 2 data by itself.
The TrackData should be unaltered raw swipe data from an unencrypted reader or from an IDTECH, IDTECH Enhanced, or Magtek encrypted reader.
The ReaderEntryMode is defaulted to MAGNETICSTRIPE if it is left blank.

Keyed Payment Source

The expiration date should be specified in the form "MMYY", the same ordering as a card holder would physically see on their card. For example, a card expiring in November 2008 would be specified as 1108.
The card security code is composed of the three extra digits printed on the back of most credit cards, although most American Express cards have a four digit number displayed on the front of the card.
It is in your best interest to always send in the address verification information and Card Security Code whenever possible.  You can use this information to contest chargebacks and disputes.

Vault Payment Source

It is in your best interest to always send in the address verification information and Card Security Code whenever possible.  You can use this information to contest chargebacks and disputes.

Encrypted Keyed Payment Source

The EncryptedKeyedData field within the PaymentData object allows the merchant to use an IDTech encrypted-keypad to supply encrypted keyed data. 

The IDTech keypad can produce outputs in two formats:

  • Standard/Original
  • Enhanced

Within the web method, the EncryptedKeyedData is identified, parsed and decrypted. 

  • If the EncryptedKeyedData element is supplied, the transaction is identified as coming from an Encrypted Keyed Reader.
  • The EncryptedKeyedData element contains the encrypted keyed data from the encrypted keypad.
  • The Source element under the PaymentData element still contains the value Keyed, even though a reader was used for data capture.
  • The existing text states that address verification information and CVV should be sent whenever possible. This will not always be the case with a Keyed transaction performed via the reader since the Address verification information and CVV can be potentially included within the encrypted keyed data.
  • If fields are parsed from the EncryptedKeyedData, that is the CVV, Street Address, or Zipcode, they will always be used in preference over the same field if it has been supplied in the PaymentData request. However PAN and Expiry Date must always come from the EncryptedKeyedData field.


 

AuthorizationRequest

Name Type Size Description
Amount String (Double) 1-100 The desired amount for the transaction.
CardAcceptorTerminalId String (numeric) 0-16 The Mastercard Card Acceptor Terminal Identifier used to uniquely identify the terminal to the processor. 
MerchantTransactionId String 0-100 The merchant-defined identifier for the transaction.
RegisterNumber String 0-100 The identifier for the register or point of sale submitting the transaction.
Invoice Object - An optional field that you use to specify various data the merchant needs to include for level three processing-rates.
StoredCardReason String 0-14

Reason for storing the card details. Possible values are:

  • RECURRING
  • INSTALLMENT
  • UNSCHEDULEDMIT
  • UNSCHEDULEDCIT

Note: If the value for Source is VAULT, the gateway accepts only UNSCHEDULEDCIT and UNSCHEDULEDMIT as the value for StoredCardReason.

For more information about regular and unscheduled payment types, see Reasons for Storing Card Details or Using Stored Card Details.

StoreCardInVault String (Boolean) 0-5

Indicates if the merchant wants to store the card in the vault for future transactions.

Note: This is available only for credit transactions if the value for Source is KEYED or READER.

CaptureRequest

Name Type Size Description
Token String 1-100 The token identifier returned from a previous pre-authorization transaction.
Amount String (Double) 1-100 The final transaction amount.
InvoiceNumber String 0-8 The invoice or order number associated with the transaction.
RegisterNumber String 0-100 The identifier for the register or point of sale submitting the transaction.
MerchantTransactionId String 0-100 The merchant-defined identifier for the transaction.
CardAcceptorTerminalId String (Numeric) 0-16 The Mastercard Card Acceptor Terminal Identifier used to uniquely identify the terminal to the processor. 
MultipleClearing Object - Object that contains information about a transaction that has multiple shipments. See the MultipleClearing data structure.

UpdateBoardedCardRequest

Name Type Size Description
VaultToken String 1-40 The token used to identify the payment method within the Merchantware Vault.
ExpirationDate String 4 An optional field that you use to specify the new expiration date of the payment card in MMYY format.
AvsStreetAddress String 1-100 An optional field that you use to specify the new address of the payment card.
AvsZipCode String 1-9 An optional field that you use to specify the new zip code of the payment card.

ForceCaptureRequest

Name Type Size Description
Amount String (Double) 1-100 The amount of the sale.
AuthorizationCode String 1-100 The authorization code for the sale, usually received from the processor as a voice authorization.
InvoiceNumber String 0-8 The invoice or order number associated with the transaction.
RegisterNumber String 0-100 The identifier for the register or point of sale device submitting the transaction.
MerchantTransactionId String 0-100 The merchant-defined identifier for the transaction.
CardAcceptorTerminalId String (Numeric) 0-16 The Mastercard Card Acceptor Terminal Identifier used to uniquely identify the terminal to the processor. 

Invoice

Name Type Size Description
TaxIndicator String 0-11 An indicator that specifies whether the transaction's primary amount includes or omits tax. Values are:
  • NotProvided
  • Provided
  • Exempt
ProductDescription String 0-100 Describes the item being purchased by the consumer.
DiscountAmount Decimal 0-100 The amount that the merchant deducts as a discount from the cost of the item.
ShippingAmount Decimal 0-100 If the merchant needs to ship the item, this is the amount of the transaction that the customer pays for shipping.
DutyAmount Decimal 0-100 If the merchant needs to ship the item, this is the amount of the transaction that the customer pays as duty when the shipment enters the destination country.
DestinationPostalCode String 0-9 If the merchant needs to ship the item, this is the postal code of the customer’s delivery address.
DestinationCountryCode String 0-3 If the merchant needs to ship the item, this is the country code of the customer’s delivery address.
ShipFromPostalCode String 0-9 If the merchant needs to ship the item, this is the postal code of the location the merchant ships the item from.
LineItems Object - The list of item level details for the transaction.

LineItems

Name Type Size Description
CommodityCode String 0-30 The line item’s commodity code.
Description String 0-100 The description of the line item.
Upc String 0-12 The line item’s Universal Product Code.
Quantity Decimal 1-12 The number of units that the line item contains. Units for the line item are specified in the UnitOfMeasure field. Our gateway accepts values with a maximum of four decimal places.
UnitOfMeasure String 0-50 The unit of measure for the contents of the line item.
UnitCost Decimal 0-100 The cost of a single unit from the line item.
DiscountAmount Decimal 0-100 The amount that the merchant deducts as a discount from the cost of the line item.
TotalAmount Decimal 0-100 The total amount of the line item after the merchant deducts all tax and discounts.
TaxAmount Decimal 0-100 The tax amount of the line item that is tax.
ExtendedAmount Decimal 0-100 The extended amount of the line item.
DebitOrCreditIndicator String 0-6 An indicator of whether the line item is a credit or a debit. Values are:
  • Credit
  • Debit
NetOrGrossIndicator String 0-5 An indicator of whether the line item includes tax (gross) or excludes tax (net). Values are:
  • Net
  • Gross

MultipleClearing

Name Type Size Description
SequenceNumber String 0-2 Number of captures that a merchant must run as part of a multiple clearing authorization. Start the SequenceNumber at one and increment by one each time. The transaction finalizes when the SequenceNumber matches the SequenceCount.
We accept values 1-99.
SequenceCount String 0-2 Number of captures that a merchant must run to complete the authorization.
We accept values 2-99.

RefundRequest

Name Type Size Description
Amount String (Double) 0-100 The amount to refund.
InvoiceNumber String 0-8 The invoice or order number associated with the transaction.
RegisterNumber String 0-100 The identifier for the register or point of sale submitting the transaction.
MerchantTransactionId String 0-100 The merchant-defined identifier for the transaction.
CardAcceptorTerminalId String (Numeric) 0-16 The Mastercard Card Acceptor Terminal Identifier used to uniquely identify the terminal to the processor. 
StoredCardReason String 0-14

Reason for using the stored card details. Possible values are:

  • UNSCHEDULEDMIT
  • UNSCHEDULEDCIT

For more information about unscheduled payment types, see Reasons for Storing Card Details or Using Stored Card Details.

Note: You cannot use a Refund request to store a cardholder's card details. You must use the Sale or Authorize methods to store a cardholder's card details.

SaleRequest

Name Type Size Description
Amount String (Double) 0-100 The amount of the sale.
CashbackAmount String (Double) 0-20 The optional amount the customer received as cash back from the transaction when performing sales using a debit card.
SurchargeAmount String (Double) 0-20 The optional surcharge fee or amount charged for the transaction when performing sales using a debit card.
TaxAmount String (Double) 0-100 The declared tax amount of the transaction.
HealthCareAmountDetails HealthCareAmountDetails - The health care amount details used when processing FSA cards.
InvoiceNumber String 0-8 The invoice or order number associated with the transaction.
PurchaseOrderNumber String 0-100 The customer-defined identifier declaring a purchase order for the transaction.
CustomerCode String 0-100 The merchant-defined identifier for the customer involved in the transaction.
RegisterNumber String 0-100 The identifier for the register or point of sale device submitting the transaction.
MerchantTransactionId String 0-100 The merchant-defined identifier for the transaction.
CardAcceptorTerminalId String (Numeric) 0-16 The Mastercard Card Acceptor Terminal Identifier used to uniquely identify the terminal to the processor. 
EnablePartialAuthorization String (Boolean) 0-5 Allow for only part of the total Amount to be authorized during the sale.
ForceDuplicate String (Boolean) 0-5 Overrides duplicate protection and allow the transaction to process normally.
Invoice Object - An optional field that you use to specify various data the merchant needs to include for level three processing-rates.
StoredCardReason String 0-14

Reason for storing the card details or using the stored card details. Possible values are:

  • RECURRING
  • INSTALLMENT
  • UNSCHEDULEDMIT
  • UNSCHEDULEDCIT

For more information about regular and unscheduled payments, see Reasons for Storing Card Details or Using Stored Card Details.

StoreCardInVault String (Boolean) 0-5

Indicates if the merchant wants to store the card in the vault for future transactions.

Note: This is available only for credit transactions if the value for Source is KEYED or READER.

BillingSequenceNumber String (Numeric) 0-2

Number that indicates the installment in the billing sequence. For example, for the first payment, send a value of 1.

Note:

  • This is not the total number of payments.
  • This field is not required if the value for StoreCardInVault is TRUE.
  • Send this parameter only if you send a BillingSequenceCount in the request and the value for Source is VAULT.
BillingSequenceCount String (Numeric) 0-2

Total number of installments in the billing sequence.

Note:

  • This field is not required if the value for StoreCardInVault is TRUE.
  • Send this parameter only if you send a BillingSequenceNumber in the request and the value for Source is VAULT.

SignatureRequest

Name Type Size Description
Token String 1-100 The token identifier returned from a previous transaction.
ImageData String 1-20000 The encoded coordinates defining the drawn ligatures of the signature.

Notes

This ImageData field uses a simple format to denote ligatures from a drawn signature. A coordinate is defined by an integer, followed by a comma, followed by another integer, and then finally terminated with a caret. The first coordinate specifies the X or horizontal position. The second coordinate specifies the Y or vertical position. 0,0 is the top-left most coordinate. 65535,65535 is the bottom-right most coordinate.

100,100^

To specify the end of a segment, use the special coordinate 0,65535^ (Pen-up) in the string of text. At the very end of the list of coordinates, append a tilde at the end. Your data should resemble the following output.
10,10^110,110^0,65535^10,110^110,10^0,65535^~

The aforementioned string results in an X being drawn. It contains first the top-left corner to the bottom right corner, then a pen-up coordinate, then the bottom-left to the top-right coordinate, and then a pen-up coordinate.
A pen-up coordinate is not required at the very end, but for your own purposes, it may be useful to specify one when replaying the string for screen drawing or for an image.

The size limit for this method may be increased in the future. For the time being, if you find the size limit on this method is too restrictive, try reducing your sampling frequency when recording a signature, particularly if you are recording a signature from a desktop application. Most POS devices do not have nearly the same resolution as a windowed application on a PC, so a finely detailed signature is not required to create a comparable image.

For best results, the signature coordinates should fall within a 240 by 240 range of dimensions.
Negative coordinates and coordinates outside of 65535 for any dimension are rejected by the web service.
 

TipRequest

Name Type Size Description
Token String 1-100 The token identifier returned from a previous sale transaction.
Amount String (Double) 1-100 The tip amount used to adjust the total amount of the original sale.

VaultTokenRequest

Name Type Size Description
VaultToken String 1-40 The token used to identify the payment method within the Merchantware Vault.

VoidRequest

Name Type Size Description
Token String 0-100

The token identifier returned from a previous transaction.

Note: Either Token or MerchantTransactionId is required.

RegisterNumber String 0-100 The identifier for the register or point of sale device submitting the transaction.
MerchantTransactionId String 0-100

The merchant-defined identifier for the transaction.

Note: Either Token or MerchantTransactionId is required.

CardAcceptorTerminalId String (Numeric) 0-16 The Mastercard Card Acceptor Terminal Identifier used to uniquely identify the terminal to the processor. 

BatchResponse46

The BatchResponse46 encapsulates the results of a retail batch operation in Merchantware.
Name Type Description
BatchStatus String The status of a batch; indicates success or failure.
AuthorizationCode String The Authorization Code or other batch identifier issued by the processor.
BatchAmount String (Double) The sum of all transactions within the batch.
TransactionCount Integer The number of transactions within the batch.
TransactionDate String (DateTime, UTC) The date and time when the batch was received, in UTC time.
ErrorMessage String A message indicating why the transaction could not be processed.
ExtraData String Contains extra information about the transaction, when applicable.

Used By

SettleBatch

SignatureResponse46

The SignatureResponse46 contains information about a signature appended to an existing transaction record. 
Name Type Description
UploadStatus String This value describes the upload result of the signature. This value is ACCEPTED if the signature was uploaded without errors, and FAILED if it could not be saved or if there were any other errors.
Token String The transaction reference identifier receiving the associated signature.
TransactionDate String (DateTime, UTC) The date of the signature upload attempt, as a string, in UTC time. This value is not stored by the server.
ErrorMessage Integer A message indicating why the transaction could not be processed.

Used By

AttachSignature

TransactionResponse46

Name Type Description
ApprovalStatus String The status of the transaction, whether approved or declined. This value may also have other definitions depending on CardType and context.
Token String The identifier received by the Merchantware client when a transaction has been issued. This value may be used to lookup a specific transaction in the history log.
AuthorizationCode String Authorization Code issued by the processor upon receipt of a transaction.
TransactionDate String (DateTime, UTC) The date and time when a transaction is issued, in UTC time.
Amount String (Double) The amount of the transaction. If partial authorizations are enabled, this will be the authorized amount and may be different than the requested amount.
RemainingCardBalance String (Double) The amount of money that remains on a card branded gift card or FSA card.
CardNumber String A string representing the truncated card number of the payment card used in the transaction.
Cardholder String The cardholder associated with the payment card used in a transaction.
CardType String (CardType Enumeration) A value from the CardType enumeration indicating the type of payment card used in a transaction.
FsaCard String (Boolean) A value indicating if the transaction was processed against an FSA card.
ReaderEntryMode String (ReaderEntryMode Enumeration) A value from the ReaderEntryMode enumeration indicating the reader mode used to capture data.
AvsResponse String This is a string describing the result of an Address Verification System lookup.
CvResponse String A string describing the result of a Card Verification check.
ErrorMessage String A message indicating why the transaction could not be processed.
ExtraData String Contains extra information, when applicable.
CardBin String Bank identification number (BIN) of the payment card, which is the first six digits printed on the front of the card. Our gateway returns the BIN only if the merchant is set up for this feature and the card number is valid. A card number is valid if it has the following:
  • Minimum of 15 digits
  • Numeric characters only
Note: Our gateway does not return the CardBin parameter for refunds where the value of the source parameter is PreviousTransaction.
FraudScoring FraudScoring Contains fraud scoring information, including:
  • ExternalReference - Kount's unique transaction ID
  • Recommendation - Can be Decline, Approve, Review, or Escalate
  • Score - Risk score between 1-99, the higher the risk score, the greater the risk of fraud
  • Status - Can be Success or Failure
Rfmiq String Recency-Frequency-Monetary IQ. An anonymized identifier representing the payment card used in the transaction. This field is optional and may not be returned.
Invoice Object An optional field that contains various data for level three processing-rates.
VaultBoardingResponse Object An object that is returned when a cardholder’s payment details are saved to the vault.

Used By

AttachSignature, AdjustTip, Authorize, Capture, ForceCapture, Refund, Sale, Void

VaultBoardingResponse46

Name Type Description
VaultToken String The token used to identify the payment information within the Merchantware Vault.
ErrorCode String An error code associated with any problems that may have occurred when managing the boarding of payment information.
ErrorMessage String A message indicating why the boarding changes for a token failed.
Rfmiq String Recency-Frequency-Monetary IQ. An anonymized identifier representing the payment card used in the transaction. This field is optional and may not be returned.

Used By

UnboardCard, UpdateBoardedCard

VaultTokenResponse46

Name Type Description
CardNumber String A string representing the truncated card number of the payment card.
ExpirationDate String The expiration date of the payment card in MMYY format.
Cardholder String The owner or cardholder associated with the payment information.
CardType String (CardType) A value from the CardType enumeration indicating the type of payment card.
AvsStreetAddress String The street address associated with the payment card for use in address verification system (AVS) checks.
AvsZipCode String The ZIP Code associated with the payment card for use in address verification system (AVS) checks.
ErrorCode String An error code associated with any problems that may have occurred during the retrieval of payment information.
ErrorMessage String A message indicating why the retrieval of payment information failed.
CardBin String Bank identification number (BIN) of the payment card, which is the first six digits printed on the front of the card. Our gateway returns the BIN only if the merchant is set up for this feature and the card number is valid. A card number is valid if it has the following:
  • Minimum of 15 digits
  • Numeric characters only
Rfmiq String Recency-Frequency-Monetary IQ. An anonymized identifier representing the payment card used in the transaction. This field is optional and may not be returned.

Used By

FindBoardedCard

Enumerations

ReaderEntryMode

Value Name Description
0 Unknown This value is reserved.
1 Keyed A TipRequest object containing the transactional data used to perform a tip adjustment.
2 Magneticstripe A transaction submitted from data swiped through a magnetic stripe reader.
3 Capture A transaction is a capture from a previous transaction or a forced capture.
4 Proximity A transaction submitted from a contactless reader.
6 ICC A transaction submitted from data using an integrated circuit card.
7 ContactlessMobileCommerce A transaction submitted from a digital wallet to an electronic commerce website or mobile application.

CardType

Value Name
0 Unknown
1 American Express
2 Discover
3 Mastercard
4 Visa
5 Debit
6 EBT
7 Giftcard
8 Wright Express (Fleet Card)
9 Voyager (Fleet Card / USBank Issued)
10 JCB
11 China Union Pay

AVS Response Codes

Code Description
X Exact: Address and nine-digit Zip match.
Y Yes: Address and five-digit Zip match.
A Address: Address matches, Zip does not.
Z 5-digit Zip: 5-digit Zip matches, address doesn’t.
W Whole Zip: 9-digit Zip matches, address doesn’t.
N No: Neither address nor Zip matches.
U Unavailable: Address information not available.
G Unavailable: Address information not available for international transaction.
R Retry: System unavailable or time-out.
E Error: Transaction unintelligible for AVS or edit error found in the message that prevents AVS from being performed.
S Not Supported: Issuer doesn’t support AVS service.
B Street Match: Street addresses match for international transaction, but postal code doesn’t. (Visa only)
C Street Address: Street addresses and postal code not verified for international transaction. (Visa only)
D Match: Street addresses and postal codes match for international transaction. (Visa only)
I Not Verified: Address Information not verified for International transaction. (Visa only)
M Match: Street addresses and postal codes match for international transaction. (Visa only)
P Postal Match: Postal codes match for international transaction, but street address doesn’t. (Visa only)
O No response sent.
5 Invalid AVS response.

CVV Response Codes

Code Description
M CVV2/CVC2/CID Match
Y CVV2/CVC2/CID Match
N CVV2/CVC2/CID No Match
P Not Processed
S Issuer indicates that the CV data should be present on the card, but the merchant has indicated that the CV data is not present on the card.
U Unknown / Issuer has not certified for CV or issuer has not provided Visa/MasterCard with the CV encryption keys.
X Server Provider did not respond.