CyberSource payout unsucessfull when we put businessApplicationId = "CP" - cybersource

We are trying to pay a client's credit card bills, for that we have to choose "businessApplicationId": "CP" in payout api, Am i right?
Request format is :
{
"clientReferenceInformation": {
"code": "111111113"
},
"orderInformation": {
"amountDetails": {
"totalAmount": "111.00",
"currency": "USD"
}
},
"merchantInformation": {
"merchantDescriptor": {
"name": "Sending Company Name",
"locality": "FC",
"country": "US",
"administrativeArea": "CA",
"postalCode": "94440"
}
},
"recipientInformation": {
"firstName": "John",
"lastName": "Doe",
"address1": "Paseo Padre Boulevard",
"locality": "Foster City",
"administrativeArea": "CA",
"country": "US",
"postalCode": "94400",
"phoneNumber": "6504320556"
},
"senderInformation": {
"referenceNumber": "1234567890",
"account": {
"fundsSource": "05",
"number": "1234567890123456789012345678901234"
},
"name": "Company Name",
"address1": "900 Metro Center Blvd.900",
"locality": "Foster City",
"administrativeArea": "CA",
"countryCode": "US"
},
"processingInformation": {
"businessApplicationId": "CP",
"networkRoutingOrder": "V8",
"commerceIndicator": "internet"
},
"paymentInformation": {
"customer": {
"customerId": "C99A860705336053E053AF598E0A0D43"
}
}
}
we get the following response:
{
"id": "6290386260456808404006",
"submitTimeUtc": "2021-08-15T14:43:46Z",
"status": "SERVER_ERROR",
"reason": "SYSTEM_ERROR",
"message": "Error - General system failure."
}
Our configuration is :
Authentication type: HTTP Signature
Sample Request : Payout(Token)
Payment Processor Type : Chase Paymentech (Default)
Sandbox Credentials :
Merchant ID : Priya1234
Previously cybersource team had enabled tokenization and payout in our Merchant Id : Priya1234,
Currently we are in a test environment, Is there anything that we have missed here?
Also Please let us know if there are any other options available to pay client's credit card bills.

Related

Woocommerce subscriptions API and Authorize.net (Credit Card Payment Failed (Subscription Renewal: payment token is missing/invalid.))

We created a user on authorize.net with the following data:
Customer profile ID : 901961001
Payment Profile ID: Payment ProfileID: 901782940
Now on Woocommerce API, we have the following JSON that we try to run to create the subscription:
{
"customer_id": 80595,
"status": "active",
"billing_period": "month",
"billing_interval": 3,
"start_date": "2021-10-08 19:45:00",
"next_payment_date":"2021-10-08 19:48:00",
"payment_method": "authorize_net_cim_credit_card",
"payment_details":{
"post_meta": {
"_wc_authorize_net_cim_credit_card_customer_id":"901961001",
"_wc_authorize_net_cim_payment_profile_id ": "901782940",
"_wc_authorize_net_cim_credit_card_payment_token": "901782940"
}
},
"billing": {
"first_name": "check6",
"last_name": "check6",
"address_1": "check6",
"address_2": "",
"city": "San Francisco",
"state": "CA",
"postcode": "94103",
"country": "US",
"email": "check6#example.com",
"phone": "(555) 555-5555"
},
"shipping": {
"first_name": "check6",
"last_name": "check6",
"address_1": "check6",
"address_2": "",
"city": "San Francisco",
"state": "CA",
"postcode": "94103",
"country": "US"
},
"line_items": [
{
"product_id": 33704,
"quantity": 3
}
],
"shipping_lines": [
{
"method_id": "flat_rate",
"method_title": "Flat Rate",
"total": "10"
}
],
"meta_data": [
{
"key": "_custom_subscription_meta",
"value": "custom meta"
}
]
}
Well.. the subscription does get created BUT when it's time for the renewal we get the following error:
Authorize.Net Credit Card Payment Failed (Subscription Renewal: payment token is missing/invalid.) Order status changed from Pending payment to Failed.
How do we pass the correct payment token thru woocommerce subscriptions api?

Some Reverse GeoCode queries return null

We are attempting to retrieve district information for a number of locations.
However the Here API returns no values.
These locations are in the state of Arunachal Pradesh and Jammu & Kashmir in India.
I tested with a number of latitude/longitudes for these states. None of them return any data.
https://reverse.geocoder.ls.hereapi.com/6.2/reversegeocode.json?prox=28.2180,94.7278&mode=retrieveAreas&apiKey=XXXXXXXXXXXXXXXXXXXXXXXXXXX
Response:
{
"Response": {
"MetaInfo": {
"Timestamp": "2020-08-05T15:11:46.711+0000"
},
"View": []
}
}
Even when I choose a location from Google Maps and use that in the API call, it still returns null.
https://reverse.geocoder.ls.hereapi.com/6.2/reversegeocode.json?prox=27.083227, 93.605954&mode=retrieveAreas&apiKey=XXXXXXXXXXXXXXXXXXXXXXXXXXX
Response:
{
"Response": {
"MetaInfo": {
"Timestamp": "2020-08-05T15:11:46.711+0000"
},
"View": []
}
}
The Geocoding and Search API v7 is recommended.
https://revgeocode.search.hereapi.com/v1/revgeocode?at=28.2180%2C94.7278&lang=en-US
{
"items": [
{
"title": "Jomlo Mobuk, Arunachal Pradesh, India",
"id": "here:cm:namedplace:22803761",
"resultType": "locality",
"localityType": "city",
"address": {
"label": "Jomlo Mobuk, Arunachal Pradesh, India",
"countryCode": "IND",
"countryName": "India",
"state": "Arunachal Pradesh",
"county": "Siang",
"city": "Jomlo Mobuk",
"postalCode": "791001"
},
"position": {
"lat": 28.22394,
"lng": 94.85208
},
"distance": 0,
"mapView": {
"west": 94.72013,
"south": 28.17345,
"east": 94.9472,
"north": 28.29374
}
}
]
}

Here API: Geocoding Free-Text Query Returns Correct Result But Qualified Query Doesn't

I'm experiencing this weird response from the Geocoding API where, in searching for a known address, it would return the correct geocoding result for a free-text query ("q") but return an empty result for the qualified query ("qq") even though the address details are correctly compartmentalized to each field as returned by the free-text query
https://geocode.search.hereapi.com/v1/geocode?apiKey=REMOVED&in=countryCode:AUS&q=Unit+10%2F232A+MAIN+RD++MAROOCHYDORE+4558+QLD+Australia
{
"items": [
{
"title": "Main Rd, Maroochydore QLD 4558, Australia",
"id": "here:af:street:c3mXot9HjZRObEAATNdRhC",
"resultType": "street",
"address": {
"label": "Main Rd, Maroochydore QLD 4558, Australia",
"countryCode": "AUS",
"countryName": "Australia",
"state": "Queensland",
"city": "Sunshine Coast",
"district": "Maroochydore",
"street": "Main Rd",
"postalCode": "4558"
},
"position": {
"lat": -26.65569,
"lng": 153.06295
},
"mapView": {
"west": 153.05138,
"south": -26.66196,
"east": 153.07228,
"north": -26.65418
},
"scoring": {
"queryScore": 0.77,
"fieldScore": {
"country": 1.0,
"state": 1.0,
"district": 1.0,
"streets": [
1.0
],
"postalCode": 1.0
}
}
}
]
}
https://geocode.search.hereapi.com/v1/geocode?apiKey=REMOVED&in=countryCode:AUS&qq=street=MAIN+RD;district=MAROOCHYDORE;postalCode=4558;state=QLD
{
"items": []
}
How often does this inconsistent behaviour occur and what could I implement to mitigate this?
Can you please try using below request call to check whether it is returning the correct data as you expected it to be. Below works for us.
https://geocode.search.hereapi.com/v1/geocode?apiKey=xxxxx&in=countryCode:AUS&qq=country=Australia;state=Queensland;district=MAROOCHYDORE;street=MAIN RD;postalCode=4558;
There won't be inconsistency if the query would be structured. please report if you encounter such more issues. It is advisable to go from more generic to more specifc while specify the structure in the query

Which firstname field is always returned in request to Linkedin V2 API?

When I request user details from LinkedIn’s V2 People endpoint I get the below:
Which first name and last name attribute can I use to save the user details? Is localizedLastName always returned?
{
"localizedLastName": "abc",
"lastName": {
"localized": {
"en_US": "abc"
},
"preferredLocale": {
"country": "US",
"language": "en"
}
},
"firstName": {
"localized": {
"en_US": "abc"
},
"preferredLocale": {
"country": "US",
"language": "en"
}
},
"profilePicture": {
"displayImage": "urn:li:digitalmediaAsset:C5103AQGrCbjMGgxnzQ"
},
"id": "226262627",
"localizedFirstName": "abc"
}
Hi Use this to receive the first name and last name
$profile['firstName']=array_pop($array['firstName']['localized']);
$profile['lastName']=array_pop($array['lastName']['localized']);

When creating a order via Woocommerce Rest API order note showing two notes for order status and also Not sending a correct email

Facing an issue when creating a order via WooCommerce rest API. There are two issues:
Order Note
When creating order via Desktop:-
New Order of "BANK Transfer" as a payment creating two order note
Order status changed from pending payment to on hold
For order stock reduced
When creating order via Mobile:-
New order with "Bank Transfer" as a payment method creating three order note:-
1. Order status changed from pending payment to processing
2. Order stock reduced
3. Order status changed from pending payment to on hold
Customer Receiving a email with status processing, while the order status is on-hold
I tried to pass order status=on-hold from API when creating a order and updating a order payment details. But issue is still persist.
Order create api
POST wc-api/v3/orders/
Body
{
"order": {
"customer_id": 6925,
"billing_address": {
"first_name": "Android",
"last_name": "Testing",
"address_1": "Address of Developer",
"address_2": "Cengkareng",
"city": "Jakarta Barat",
"state": "6",
"postcode": "12345",
"country": "ID",
"email": "ankurgecr#gmail.com",
"phone": "1234567890"
},
"shipping_address": {
"first_name": "Android",
"last_name": "Testing",
"address_1": "Address of Developer",
"address_2": "Cengkareng",
"city": "Jakarta Barat",
"state": "6",
"postcode": "12345",
"country": "ID"
},
"line_items": [
{
"product_id": 32776,
"quantity": 1,
"subtotal": 10000,
"total": 10000,
"variations": {
"Color": "Blue"
}
}
],
"fee_lines": [
{
"title": "Rp",
"total": 846
}
],
"shipping_lines": [
{
"method_id": "OKE",
"method_title": "JNE OKE",
"total": 29500
}
],
"is_vat_exempt": false
}
}
Order update API
POST wc-api/orders/[orderID]
BODY
{
"order": {
"status": "on-hold",
"payment_details": {
"method_id": "bacs",
"method_title": "Bank Transfer BCA / MANDIRI",
"paid": true
},
"set_paid": true
}
}
Custoemr should receive a email of order status= on-hold.
I'm attaching a image for actual result.
Note: Is is working fine if we are placing a orde from website checkout, only the issue is with rest API.

Resources