Information

In the following part of documentation you will find a supportive information for easy integration with SolidGate. 

Error codes

 

CodeDescription
0.01General decline
0.02Order expired
0.03Illegal operation
1.01Authentication failed
2.01Invalid Data
2.02Invalid amount
2.03Invalid Currency
2.05Order not found
2.06Invalid CVV2 code
2.07Request Is empty
2.08Invalid card number
2.09Invalid expiration date
2.10Invalid 3DS flow on the merchant side
2.11Invalid 3DS flow on the bank side
2.12Invalid 3DS flow
2.13Invalid IP
2.14Subscription error
2.15SCA require 3D authentication 
2.16Subscription is locked
3.01Card is blocked
3.02Insufficient funds
3.03Payment amount limit excess
3.04Transaction is declined by issuer
3.05Call your bank
3.06Debit card not supported
3.07Card brand is not supported
3.08Do not honor
4.01Card is in black list
4.02Stolen card
4.03Restricted card
4.04Lost card
4.05Suspected fraud
4.06Blocked by Country/IP
4.07Trusted antifraud system
4.08AVS mismatch
4.09Solid antifraud engine
5.013D secure verification failed
5.02Invalid Card Token
5.03Application error
5.04Merchant is not configured correctly
5.05Merchant is not activated yet
5.06Duplicate order
5.07exceeded API calls limits
5.08Invalid transaction
5.09Merchant not found
5.10Processor does not support requested API method
5.11Invalid routing
6.01Unknown decline code
6.02Connection error
7.01Card token not found
7.02Google payment error
7.03Smart cascade decline
7.043DS cascade to 2D
7.05Apple online payment error
7.06Token generation error

Orders status

 

ValueDescription
createdThe order was created
processingThe order is in processing
3ds_verifyThe order goes through 3DS verification
approvedThe order is approved and the payment is successful 
declinedThe order was declined
refundedFunds by the order were transferred back to the cardholder
auth_okFunds were successfully reserved 
auth_failedReservation of the funds is failed 
settle_okFunds were successfully settled
void_okOperation of fund reservation was voided
partial_settledPart of the funds was successfully settled

Status of transactions

ValueDescription
createdThe transaction was created
failAn error processing the transaction
processingThe transaction is in processing
successTransaction successfully processed
verifyThe transaction is going through 3DS verification

Types of transactions

ValueDescription
payOperation of funds reservation
recurringOperation of payment by the token
recurring-authOperation of funds reservation by the token
refundOperation for transferring funds back to the cardholder
resignOperation of payment by the token + cvv
resign-authOperation of hold amounts by the token + cvv
authOperation of funds reservation
settleOperation of settling funds reservation
voidOperation of canceling the funds reservation
apple-payApple Pay Payment
google-payGoogle Pay Payment

Refund reasons

Refund reason codes are provided for both Void and Refund operations. You could use them for the analysis of the return structure or trigger specific events on your side.

CodeDescriptionWhen is used
0001Request by Support userDeprecated
0002Fraud - PSPDeprecated
0003Fraud - SupportDeprecated
0004Fraud - SP AntifraudDeprecated
0005Fraud - MaxMindDeprecated
0006Fraud - ThreatmetrixDeprecated
0007Fraud - Manual checkDeprecated
0008Potential Chargeback - Retrieval RequestDeprecated
0009Potential Chargeback - Refund after ChargebackDeprecated
0010System Error - ProductDeprecated
0011System Error - SignedPayDeprecated
0012System Error - PSPDeprecated
0013Ethoca alert - FraudDeprecated
0014Ethoca alert - Friendly FraudDeprecated
0015Ethoca alert - Potential ChargebackDeprecated
0016Verifi alert - FraudDeprecated
0017Verifi alert - Friendly FraudDeprecated
0018Verifi alert - Potential ChargebackDeprecated
0019VMPI AlertDeprecated
0020Mismatch status (Decline - Approved)Deprecated
0021Solid - Request by UserThis refund reason is used for all manual refunds via My.Solid
0022Solid - Issuer Fraud NotificationWhen the issuer reports a fraudulent charge directly to Solid, our Team may do a refund after contacting the client.
0023Solid - Risk DepartmentAfter our team detects fraud, the client may ask to refund transactions. 
0024Solid - Retrieval RequestIf the issuer posts a Retrieval Request, the client could choose to refund the transactions.
0025Solid - Prevention AlertRefunds are automatically issued with this code when we receive a prevention alert. Previously, the following refund codes 0016,0017,0018,0019 were used.
0026Solid - System ErrorThis code is used rarely, only in case of technical problems between Solid, providers, and payment networks. 
0027Solid - AntifraudThis code is used for automatic refund action in our antifraud.
0028Solid - Expired AuthorizationAfter auth expires, we will issue the void with this code.

 

Disputes

Disputes are the general term for actions that are performed by a user to cancel the transaction without interacting with the merchant. 

Merchant Portal

Information about User Roles you can find below: 

/media/34/download/Screenshot%202020-10-02%20at%2012.49.34.png?v=1&inline=0

Retry Strategies

Solid provides a feature of smart retrying failed subscriptions payments, which helps our merchants to recover revenue and decrease the involuntary churn rate of the customers.

How does it work?

After the initial collection of the invoice is failed, the retry mode would turn On, and the state of the subscription would change to "redemption".

While the subscription is in state "redemption", we would retry the invoice collection four times. The interval between the retries is based on the customer, payment method and card data features.

Moreover, we provide the option to automatically apply a Discount in % if we receive a decline "Insufficient Funds" during the last payment attempt.

How could you configure it?

You could select the predefined retry strategies in the Hub while creating or editing Subscription Product details.

The description of all available retry strategies is provided below.

#1 Retry Strategy for Weekly Subscription

Name in Hub: "#1 - Weekly 0% /0% /0% /0%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday-
32 days after the previous retry-
45 days after the previous retry-

#2 Retry Strategy for Weekly Subscription 25% Discount on the last retry

Name in Hub: "#2 - Weekly 0% /0% /0% /25%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday-
32 days after the previous retry-
45 days after the previous retry25%

#3 Retry Strategy for Weekly Subscription 50% Discount on the last retry

Name in Hub: "#3 - Weekly 0% /0% /50% /0%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday-
32 days after the previous retry50%
45 days after the previous retry-

#4 Retry Strategy for Weekly Subscription 75% Discount on the last retry

Name in Hub: "#4 - Weekly 0% /0% /0% /75%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday-
32 days after the previous retry-
45 days after the previous retry75%

#5 Retry Strategy for Weekly Subscription 3-25%,  4 - 50%

Name in Hub: "#5 - Weekly 0% /0% /25% /50%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday-
32 days after the previous retry25%
45 days after the previous retry50%

#6 Retry Strategy for Weekly Subscription 1-10%, 2 - 25%, 3 - 50%, 4 - 75%

Name in Hub: "#6 - Weekly 10% /25% /50% /75%"

#Retry IntervalDiscount
11 day after initial collection10%
2On the nearest Friday25%
32 days after the previous retry50%
45 days after the previous retry75%

#7 Retry Strategy for Weekly Subscription 1 - 25%, 2 - 50%, 3 - 75%,  4 - 75%

Name in Hub: "#7 - Weekly 25% /50% /75% /75%"

#Retry IntervalDiscount
11 day after initial collection25%
2On the nearest Friday50%
32 days after the previous retry75%
45 days after the previous retry75%

#8 Retry Strategy for Weekly Subscription 2 - 15%, 3 - 40%,  4 - 65%

Name in Hub: "#8 - Weekly 0% /15% /40% /65%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday15%
32 days after the previous retry40%
45 days after the previous retry65%

#9 Retry Strategy for Monthly Subscription w/o Discounts

Name in Hub: "#9 - Monthly 0% /0% /0% /0%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday-
39 days after the previous retry-
419 days after the previous retry-

#10 Retry Strategy for Monthly Subscription with 25% Discount on the last retry

Name in Hub: "#10 - Monthly 0% /0% /0% /25%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday-
39 days after the previous retry-
419 days after the previous retry25%

#11 Retry Strategy for Monthly Subscription with 50% Discount on the last retry

Name in Hub: "#11 - Monthly 0% /0% /0% /50%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday-
39 days after the previous retry-
419 days after the previous retry50%

#12 Retry Strategy for Monthly Subscription with 75% Discount on the last retry

Name in Hub: "#12 - Monthly 0% /0% /0% /75%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday-
39 days after the previous retry-
419 days after the previous retry75%

#13 Retry Strategy for Monthly Subscription 3 - 25%, 4 - 50%

Name in Hub: "#13 - Monthly 0% /0% /25% /50%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday-
39 days after the previous retry25%
419 days after the previous retry50%

#14 Retry Strategy for Monthly Subscription 2 - 25%, 3 - 50%, 4 - 75%

Name in Hub: "#14 - Monthly 0% /25% /50% /75%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday25%
39 days after the previous retry50%
419 days after the previous retry75%

#15 Retry Strategy for Monthly Subscription 1 - 25%, 2 - 50%, 3 - 50%, 4 - 75%

Name in Hub: "#15 - Monthly 25% /50% /50% /75%"

#Retry IntervalDiscount
11 day after initial collection25%
2On the nearest Friday50%
39 days after the previous retry50%
419 days after the previous retry75%

#16 Retry Strategy for Monthly Subscription 2 - 15%, 3 - 40%, 4 - 65%

Name in Hub: "#16 - Monthly 0% /15% /40% /65%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday15%
39 days after the previous retry40%
419 days after the previous retry65%

#17 Retry Strategy for Monthly Subscription 4 - 30%

Name in Hub: "#17 - Monthly 0% /0% /0% /30%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday-
39 days after the previous retry-
419 days after the previous retry30%

#18 Retry Strategy for Monthly Subscription 3 - 50%

Name in Hub: "#18 - Monthly 0% /0% /50% /0%"

#Retry IntervalDiscount
11 day after initial collection-
2On the nearest Friday-
39 days after the previous retry50%
419 days after the previous retry-

Cards for test payments

Test cardResult of using
1card_number: “4532456618142692”
card_holder: “Kurt Cruickshank”
card_exp_month: “03”
card_exp_year: “2029”
card_cvv: “967”
card_token: “card4532456618142692”
card_bin: USA

charge: success,

recurring: success,

refund: success

2card_number: “5589800801939886”
card_holder: “TRINITY SIMON”
card_exp_month: “01”
card_exp_year: “2029”
card_cvv: “695”
card_token: “card5589800801939886”
card_bin: CURACAO

charge: success,

recurring: success,

refund: success

3card_number: “6763428189229070”
card_holder: “JOHN SNOW”
card_exp_month: “11”
card_exp_year: “2029”
card_cvv: “111”
card_token: “card6763428189229070"
card_bin: ITALY

charge: success,

recurring: success,

refund: success

4card_number: “4916400491851”
card_holder: “Elenora Boehm”
card_exp_month: “09”
card_exp_year: “2029”
card_cvv: “492”
card_token: “card4916400491851”
card_bin: USA

charge: success

recurring: fail

refund: success

5card_number: "4024007166621440"
card_exp_month: "09"
card_exp_year: "2029"
card_holder: "KAITLYN BECKER"
card_cvv: "137"
card_token: “card4024007166621440”
card_bin: UNITED KINGDOM

charge: success

recurring: Decline - “Insufficient funds

refund: success

6card_number: “4929360879023”
card_holder: “Jeanette Russel”
card_exp_month: “07”
card_exp_year: “2029”
card_cvv: “519”
card_bin: USA
error: {code: 0.01 , message: “General decline”}
7card_number: “5151948477715326”
card_holder: “STEVEN EDWARDS”
card_exp_month: “10”
card_exp_year: “2029”
card_cvv: “100”
card_bin: USA
error: {code: 3.02, message: “Insufficient funds”}
8card_number: “4532003312475364”
card_holder: “BRANDON BROWN”
card_exp_month: “05”
card_exp_year: “2029”
card_cvv: “957”
card_bin: SPAIN
error: {code: 0.02, message: “Order expired”}
9card_number: “4929213352238223”
card_holder: “LANDON GILSON”
card_exp_month: “06”
card_exp_year: “2029”
card_cvv: “204”
card_bin: UNITED KINGDOM
error: {code: 0.03, message: “Illegal operation”}
10card_number: “5462413335551193”
card_holder: “AMIA HAILEY”
card_exp_month: “07”
card_exp_year: “2029”
card_cvv: “369”
card_bin: USA
error: {code: 3.01, message: “Card is blocked”}
11card_number: “4485664001324176”
card_holder: “JENNA WIFKINSON”
card_exp_month: “08”
card_exp_year: “2029”
card_cvv: “383”
card_bin: USA
error: {code: 3.03, message: “Payment amount limit excess”}
12card_number: “5361250317309261”
card_holder: “JESSICA DICKINSON”
card_exp_month: “09”
card_exp_year: “2029”
card_cvv: “629”
card_bin: REPUBLIC OF KOREA
error: {code: 3.04, message: “Transaction is declined by issuer”}
13card_number: “4916242642369774”
card_holder: “BLAKE YOUNG”
card_exp_month: “04”
card_exp_year: “2029”
card_cvv: “595”
card_bin: UNITED KINGDOM
error: {code: 3.05, message: “Call your bank”}
14card_number: “5299389115628964”
card_holder: “GABRIELLE WINTER”
card_exp_month: “03”
card_exp_year: “2029”
card_cvv: “772”
card_bin: RUSSIAN FEDERATION
error: {code: 2.06, message: “Invalid CVV2 code”}
15card_number: “4539146503757117”
card_holder: “DIANA GIMSON”
card_exp_month: “02”
card_exp_year: “2029”
card_cvv: “661”
card_bin: PHILIPPINES
error: {code: 2.08, message: “Invalid card number”}
16card_number: “5199914302370491”
card_holder: “GABRIEL CARRINGTON”
card_exp_month: “01”
card_exp_year: “2029”
card_cvv: “820”
card_bin: USA
error: {code: 5.08, message: “Invalid transaction”}
17card_number: “4945960509912296”
card_holder: “ERIN BALD”
card_exp_month: “01”
card_exp_year: “2029"
card_cvv: “420”
card_bin: USA
error: {code: 2.09, message: “Invalid expiration date”}
18card_number: “5261820900437819”
card_holder: “SEAN DUNCAN”
card_exp_month: “01”
card_exp_year: “2029"
card_cvv: “272”
card_bin: USA
error: {code: 3.06, message: “Debit card not supported.”}
19card_number: “4857027008185133”
card_holder: “DRAEN BARROS  ”
card_exp_month: “09”
card_exp_year: “2029"
card_cvv: “478”
card_bin: GERMANY
error: {code: 2.10, message: “Invalid 3DS flow on the merchant side.”}
20card_number: “5539974195624197”
card_holder: “JAXON PECIGUS  ”
card_exp_month: “07”
card_exp_year: “2029"
card_cvv: “472”
card_bin: SPAUN
error: {code: 5.01, message: “3D secure verification failed.”}
21card_number: “5134431550984251”
card_holder: “SREBRENKO FREY  ”
card_exp_month: “05”
card_exp_year: “2029"
card_cvv: “584”
card_bin: USA

error: {code: 3.07, message: “Card token not found.”}

for recurrent transactions only

22card_number: “4983102885450335  ”
card_holder: “ERROR AGAIN  ”
card_exp_month: “01”
card_exp_year: “2029"
card_cvv: “111”
card_bin: FRANCE
error: {code: 4.02, message: “Stolen card.”}
23card_number: “4222192107639022  ”
card_holder: “Aleksandr Nabalnii  ”
card_exp_month: “08”
card_exp_year: “2029"
card_cvv: “759”
card_bin: GERMANY
error: {code: 4.04, message: "Lost card.”}
24card_number: “4907428874384745  ”
card_holder: “Boris Mentsov  ”
card_exp_month: “10”
card_exp_year: “2029"
card_cvv: “123”
card_bin: GERMANY
error: {code: 3.08, message: “Do not honor.”}